Geometry defined by TGeoModeler
[u/mrichter/AliRoot.git] / VZERO / AliVZEROv6.h
1 #ifndef ALIVZEROv6_H
2 #define ALIVZEROv6_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 6   //
11 //                                  september 2005 //
12 //                                                 //
13 /////////////////////////////////////////////////////
14
15 #include "TLorentzVector.h" 
16 #include "AliVZERO.h"
17
18 class AliVZEROv6 : public AliVZERO {
19   
20 public:
21   AliVZEROv6();
22   AliVZEROv6(const char *name, const char *title);
23   virtual       ~AliVZEROv6() {};
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 // Parameters related to geometry :
45 // V0 part in front of muon arm absorber 
46
47   Float_t  fV0CHeight1, fV0CHeight2, fV0CHeight3, fV0CHeight4; 
48   Float_t  fV0CRMin, fV0CRBox;
49   Float_t  fV0CLidThickness;
50   Float_t  fV0CCellThickness;
51   Float_t  fV0CBoxThickness; 
52   Float_t  fV0COffsetFibers;
53
54 // V0 part on the other side with respect to IP
55
56   Float_t  fV0AHeight1, fV0AHeight2, fV0AHeight3, fV0AHeight4; 
57   Float_t  fV0ARMin;
58   Float_t  fV0ACellThickness;
59   
60 // Parameters related to light production :
61  
62   Float_t fLightYield;       // Lightyield in BC408   (93.75 eV per photon)
63   Float_t fLightAttenuation; // LightAttenuation in fibers (0.05 per meter)
64   Float_t fnMeters;          // Number of meters of fibers to PM
65   Float_t fFibToPhot;        // Loss in Fibers - Photocathode Connection 
66   Int_t   fVersion;          // Version number == IsVersion
67   
68   ClassDef(AliVZEROv6,1)  //Class for VZERO version 6
69 };
70
71 #endif
72
73