]>
Commit | Line | Data |
---|---|---|
7d62fb64 | 1 | #ifndef ALIITSVBEAMTESTITS04_H |
2 | #define ALIITSVBEAMTESTITS04_H | |
5ba31760 | 3 | |
4 | //////////////////////////////////////////////// | |
5 | // ITS geometry class and step manager for the// | |
6 | // integrated ITS test beam of Nov. 04 // | |
7 | //////////////////////////////////////////////// | |
012f0f4c | 8 | #include "AliITSInitGeometry.h" |
5ba31760 | 9 | #include "AliITS.h" |
10 | ||
11 | class TGeoVolume; | |
12 | ||
13 | class AliITSvBeamTestITS04 : public AliITS { | |
14 | ||
15 | public: | |
012f0f4c | 16 | AliITSvBeamTestITS04(); |
17 | AliITSvBeamTestITS04(const char* name,const char *title); | |
18 | virtual ~AliITSvBeamTestITS04(); | |
19 | virtual void SetNumberOfSPD(Int_t nSPD) {fNspd=nSPD;} | |
20 | virtual void SetNumberOfSDD(Int_t nSDD) {fNsdd=nSDD;} | |
21 | virtual void SetNumberOfSSD(Int_t nSSD) {fNssd=nSSD;} | |
22 | Int_t GetNSPD() const {return fNspd;} | |
23 | Int_t GetNSDD() const {return fNsdd;} | |
24 | Int_t GetNSSD() const {return fNssd;} | |
25 | Int_t GetNumberOfSubDet(const TString& det) const; | |
26 | virtual void CreateGeometry(); | |
27 | virtual void CreateMaterials(); | |
28 | virtual Int_t IsVersion()const{return (Int_t)kvITS04;}//Return Major Version | |
29 | virtual Int_t MinorVersion()const{return fMinorVersion;}//Return Minor Version | |
30 | //virtual void InitAliITSgeom(); | |
31 | virtual void Init(); | |
32 | //virtual void SetDefaults(); | |
33 | virtual void StepManager(); | |
34 | //for writing out geometry set .det write | |
35 | virtual void SetWriteDet(Bool_t det=kTRUE){fGeomDetOut = det;} | |
36 | virtual void SetWriteDet(const char *f){strncpy(fWrite,f,60); | |
37 | fGeomDetOut = kTRUE;}// set write file | |
38 | //for reading geometry (JC) set .det read | |
39 | virtual void SetReadDet(Bool_t det=kTRUE){fGeomDetIn = det;} | |
40 | virtual void SetReadDet(const char *f){strncpy(fRead,f,60); | |
41 | fGeomDetIn = kTRUE;} // set read file | |
42 | public: | |
43 | void AddSPDGeometry(TGeoVolume *moth) const; | |
44 | void AddSDDGeometry(TGeoVolume *moth) const; | |
45 | void AddSSDGeometry(TGeoVolume *moth) const; | |
0237c22c | 46 | protected: |
012f0f4c | 47 | //! ITS mother volume |
48 | static const Int_t fgkNumberOfSPD; //number of SPD | |
49 | static const Int_t fgkNumberOfSDD; //number of SDD | |
50 | static const Int_t fgkNumberOfSSD; //number of SSD | |
51 | // SPD specific | |
52 | static const char* fgSPDsensitiveVolName; //SPD volume name | |
53 | static const Double_t fgkSPDthickness; //SPD thickness | |
54 | static const Double_t fgkSPDwidth; //SPD width | |
55 | static const Double_t fgkSPDlength; //SPD length | |
56 | static const Double_t fgkSPDthickSens; //SPD sensitive thickness | |
57 | static const Double_t fgkSPDwidthSens; //SPD sensitive width | |
58 | static const Double_t fgkSPDlengthSens; //SPD sensitive length | |
59 | static const Double_t fgkSPD0y; //SPD position | |
60 | static const Double_t fgkSPD1y; //SPD position | |
61 | // SDD specific | |
62 | static const char* fgSDDsensitiveVolName; //SDD volume name | |
63 | static const Double_t fgkSDDthickness; //SDD thickness | |
64 | static const Double_t fgkSDDwidth; //SDD width | |
65 | static const Double_t fgkSDDlength; //SDD length | |
66 | static const Double_t fgkSDDthickSens; //SDD sensitive thickness | |
67 | static const Double_t fgkSDDwidthSens; //SDD sensitive width | |
68 | static const Double_t fgkSDDlengthSens; //SDD sensitive length | |
69 | static const Double_t fgkSDD0y; //SDD position | |
70 | static const Double_t fgkSDD1y; //SDD position | |
71 | // SDD specific | |
72 | static const char* fgSSDsensitiveVolName; //SSD volume name | |
73 | static const Double_t fgkSSDthickness; //SSD thickness | |
74 | static const Double_t fgkSSDwidth; //SSD width | |
75 | static const Double_t fgkSSDlength; //SSD length | |
76 | static const Double_t fgkSSDthickSens; //SSD sensitive thickness | |
77 | static const Double_t fgkSSDwidthSens; //SSD sensitive width | |
78 | static const Double_t fgkSSDlengthSens; //SSD sensitive length | |
79 | static const Double_t fgkSSD0y; //SSD position | |
80 | static const Double_t fgkSSD1y; //SSD position | |
81 | // | |
e939a978 | 82 | private: |
012f0f4c | 83 | //Int_t GetCurrentLayLaddDet(Int_t &lay,Int_t &ladd, Int_t &det) const;: |
84 | AliITSvBeamTestITS04(const AliITSvBeamTestITS04 &source);//Copy constructor | |
85 | //=operator | |
86 | AliITSvBeamTestITS04& operator=(const AliITSvBeamTestITS04 &source); | |
87 | // | |
0237c22c | 88 | TGeoVolume *fITSmotherVolume; //Pointer to mother volume |
012f0f4c | 89 | Int_t fNspd; //Number of SPD modules |
90 | Int_t fNsdd; //Number of SDD modules | |
91 | Int_t fNssd; //Number of SSD modules | |
92 | //for writing out geometry | |
93 | Bool_t fGeomDetOut; // Flag to write .det file out | |
94 | Bool_t fGeomDetIn; // Flag to read geometry file (JC) | |
95 | char fWrite[60]; //! file name to write .det file | |
96 | char fRead[60]; // file name to read .det file (JC) | |
97 | AliITSVersion_t fMajorVersion; // Major Version | |
98 | Int_t fMinorVersion; // Minor Version | |
99 | AliITSInitGeometry fIgm; //! Init geometry object | |
100 | ||
101 | ClassDef(AliITSvBeamTestITS04,3) // Full ITS test beam geometry 2004 | |
102 | }; | |
5ba31760 | 103 | |
104 | #endif | |
105 | ||
106 |