Redefinition of V0A geometry (C.Perez)
[u/mrichter/AliRoot.git] / VZERO / AliVZEROv7.h
1 #ifndef AliVZEROv7_H
2 #define AliVZEROv7_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6
7 /////////////////////////////////////////////////////
8 //                                                 //
9 //  Manager and hits classes for set :   VZERO     //
10 //                                     version 7   //
11 //                                     April 2006  //
12 //                                                 //
13 /////////////////////////////////////////////////////
14
15 #include "TLorentzVector.h" 
16 #include "AliVZERO.h"
17
18 class AliVZEROv7 : public AliVZERO {
19   
20 public:
21   AliVZEROv7();
22   AliVZEROv7(const char *name, const char *title);
23   virtual       ~AliVZEROv7() {};
24   virtual void   AddHit(Int_t track, Int_t *vol, Float_t *hits); 
25   virtual void   AddDigits(Int_t *tracks, Int_t *digits);
26   virtual void   CreateGeometry();
27   virtual void   BuildGeometry();
28   virtual void   CreateMaterials();
29   virtual void   DrawModule() const;
30   virtual void   DrawGeometry();
31   virtual void   Init();
32   virtual void   MakeBranch(Option_t *option);
33   virtual Int_t  IsVersion() const {return fVersion;};
34   virtual void   StepManager();
35   Int_t          GetCellId(Int_t *vol, Float_t *hits);
36   
37 protected:
38   Int_t          fCellId;        // Scintillator cell number from 0 to 95 
39   TLorentzVector fTrackPosition; // Position of particle entering cell
40   TLorentzVector fTrackMomentum; // Momentum of particle entering cell
41   
42 private: 
43
44 // V0C part in front of muon arm absorber 
45   Double_t  fV0CHeight1, fV0CHeight2, fV0CHeight3, fV0CHeight4; 
46   Double_t  fV0CRMin, fV0CRBox;
47   Double_t  fV0CLidThickness;
48   Double_t  fV0CCellThickness;
49   Double_t  fV0CBoxThickness; 
50   Double_t  fV0COffsetFibers;
51
52 // V0C Parameters related to light production :
53   Float_t fV0CLightYield;       // Lightyield in BC408   (93.75 eV per photon)
54   Float_t fV0CLightAttenuation; // LightAttenuation in fibers (0.05 per meter)
55   Float_t fV0CnMeters;          // Number of meters of fibers to PM
56   Float_t fV0CFibToPhot;        // Loss in Fibers - Photocathode Connection 
57
58 // V0A Parameters related to geometry:
59   Double_t fV0AR0, fV0AR1, fV0AR2, fV0AR3, fV0AR4, fV0AR5, fV0AR6;      // Radius of V0A
60   Double_t fV0ASciWd, fV0APlaWd, fV0APlaAl, fV0AOctWd, fV0AFraWd;       // Thickness of elements
61   Double_t fV0AOctH1, fV0AOctH2, fV0ABasHt;                             // Height of elements
62   Double_t fV0AFibRd;                                                   // Radius of Fiber
63   Double_t fV0APlaEx;                                                   // Extension of plates to basis
64   Double_t fV0APMBWd, fV0APMBHt, fV0APMBTh, fV0APMBWdW, fV0APMBHtW;     // Parameters for Photo-Multiplier
65   Double_t fV0APMBAng, fV0APMBThW, fV0APMTR1, fV0APMTR2, fV0APMTR3;     // Parameters for Photo-Multiplier
66   Double_t fV0APMTR4, fV0APMTH, fV0APMTB;                               // Parameters for Photo-Multiplier
67   Float_t fV0AnMeters;                                                  // Must be calculated depending on each ring
68   
69 // V0A Parameters releted to light
70   Double_t fV0ALightYield;       // Lightyield in BC404
71   Double_t fV0ALightAttenuation; // LightAttenuation in fibers
72   Double_t fV0AFibToPhot;        // Loss in Fibers - Photocathode Connection
73
74   Int_t   fVersion;              // Version number == IsVersion
75
76
77   ClassDef(AliVZEROv7,1)  // Class for VZERO version 7
78 };
79
80 #endif