]>
Commit | Line | Data |
---|---|---|
dfef1a15 | 1 | #ifndef ALITOFv6T0_H |
2 | #define ALITOFv6T0_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 | // Implementation version v6 of TOF Manager class // | |
9 | // FULL COVERAGE VERSION + OPTION FOR PHOS HOLES // | |
10 | // // | |
11 | // -- Authors: G. Cara Romeo, A. De Caro // | |
12 | // // | |
13 | //_________________________________________________________________________// | |
14 | ||
15 | #include "AliTOF.h" | |
16 | ||
17 | ||
18 | class AliTOFv6T0 : public AliTOF { | |
19 | ||
20 | public: | |
21 | AliTOFv6T0(); | |
22 | AliTOFv6T0(const char *name, const char *title); | |
23 | virtual ~AliTOFv6T0() {}; | |
dfef1a15 | 24 | virtual void CreateGeometry(); |
25 | virtual void CreateMaterials(); | |
26 | virtual void Init(); | |
27 | virtual Int_t IsVersion() const {return 8;} | |
28 | virtual void AddAlignableVolumes() const; | |
29 | virtual void TOFpc(Float_t xtof, Float_t ytof, Float_t zlenA); | |
30 | virtual void TOFpc(Float_t, Float_t, Float_t, Float_t) {}; | |
31 | virtual void TOFpc(Float_t, Float_t, Float_t, Float_t, Float_t, Float_t) {}; | |
32 | virtual void StepManager(); | |
33 | virtual void DrawModule() const; | |
34 | virtual void DrawDetectorModules() const; | |
35 | virtual void DrawDetectorStrips() const; | |
36 | ||
37 | protected: | |
38 | ||
39 | void MaterialMixer(Float_t* p,Float_t* a,Float_t* m,Int_t n) const; | |
40 | ||
41 | private: | |
57df6e96 | 42 | |
43 | void CreateModules(Float_t xtof, Float_t ytof, Float_t zlenA, | |
44 | Float_t xFLT, Float_t yFLT, Float_t zFLTA) const; | |
45 | void MakeStripsInModules(Float_t ytof, Float_t zlenA) const; | |
46 | void CreateModuleCovers(Float_t xtof, Float_t zlenA) const; | |
47 | void CreateBackZone(Float_t xtof, Float_t ytof, Float_t zlenA) const; | |
5e6c8f3d | 48 | void MakeFrontEndElectronics(Float_t xtof) const; |
49 | void MakeFEACooling(Float_t xtof) const; | |
50 | void MakeNinoMask(Float_t xtof) const; | |
57df6e96 | 51 | void MakeSuperModuleCooling(Float_t xtof, Float_t ytof, Float_t zlenA) const; |
52 | void MakeSuperModuleServices(Float_t xtof, Float_t ytof, Float_t zlenA) const; | |
53 | void MakeModulesInBTOFvolumes(Float_t ytof, Float_t zlenA) const; | |
54 | void MakeCoversInBTOFvolumes() const; | |
55 | void MakeBackInBTOFvolumes(Float_t ytof) const; | |
56 | void MakeReadoutCrates(Float_t ytof) const; | |
57 | ||
dfef1a15 | 58 | Int_t fIdFTOA; // FTOA volume identifier (outer plate A) |
59 | Int_t fIdFTOB; // FTOB volume identifier (outer plate B) | |
60 | Int_t fIdFTOC; // FTOC volume identifier (outer plate C) | |
61 | Int_t fIdFLTA; // FLTA volume identifier (inner plate A) | |
62 | Int_t fIdFLTB; // FLTB volume identifier (inner plate B) | |
63 | Int_t fIdFLTC; // FLTC volume identifier (inner plate C) | |
5e6c8f3d | 64 | |
57df6e96 | 65 | //private: |
66 | ||
5e6c8f3d | 67 | static const Bool_t fgkFEAwithMasks[18]; // Selecting TOF sectors containing FEA cooling masks |
68 | ||
57df6e96 | 69 | static const Float_t fgkModuleWallThickness; // wall thickness (cm) |
70 | static const Float_t fgkInterCentrModBorder1; // 1st distance of | |
71 | // border between | |
72 | // central and | |
73 | // intermediate | |
74 | // modules respect to | |
75 | // the central module | |
76 | // centre (cm) | |
77 | static const Float_t fgkInterCentrModBorder2; // 2nd distance of | |
78 | // border between the | |
79 | // central and | |
80 | // intermediate | |
81 | // modules respect to | |
82 | // the central module | |
83 | // centre (cm) | |
84 | static const Float_t fgkExterInterModBorder1; // 1st distance of | |
85 | // border between the | |
86 | // intermediate and | |
87 | // external modules | |
88 | // respect to the | |
89 | // central module | |
90 | // centre (cm) | |
91 | static const Float_t fgkExterInterModBorder2; // 2nd distance of | |
92 | // border between the | |
93 | // intermediate and | |
94 | // external | |
95 | // modules respect to | |
96 | // the central module | |
97 | // centre (cm) | |
98 | static const Float_t fgkLengthInCeModBorder; // height of border | |
99 | // between the central | |
100 | // and intermediate | |
101 | // modules (cm) | |
102 | static const Float_t fgkLengthExInModBorder; // height of border | |
103 | // between the | |
104 | // intermediate and | |
105 | // external modules | |
106 | // (cm) | |
107 | static const Float_t fgkModuleCoverThickness; // thickness of cover | |
108 | // modules zone (cm) | |
109 | static const Float_t fgkFEAwidth1; // mother volume width of each of | |
110 | // two external FEA in a | |
111 | // supermodule (cm) | |
112 | static const Float_t fgkFEAwidth2; // mother volume width of two | |
113 | // internal FEA in a supermodule | |
114 | // (cm) | |
115 | static const Float_t fgkSawThickness; // services alluminium wall | |
116 | // thickness (cm) | |
117 | static const Float_t fgkCBLw; // cables&tubes block width (cm) | |
118 | static const Float_t fgkCBLh1; // min. height of cables&tubes block | |
119 | // (cm) | |
120 | static const Float_t fgkCBLh2; // max. height of cables&tubes block | |
121 | // (cm) | |
5e6c8f3d | 122 | static const Float_t fgkBetweenLandMask; // distance between the L |
123 | // element and the Nino | |
124 | // mask (cm) | |
125 | static const Float_t fgkAl1parameters[3]; // (cm) | |
126 | static const Float_t fgkAl2parameters[3]; // (cm) | |
127 | static const Float_t fgkAl3parameters[3]; // (cm) | |
128 | static const Float_t fgkRoof1parameters[3]; // (cm) | |
129 | static const Float_t fgkRoof2parameters[3]; // (cm) | |
130 | static const Float_t fgkFEAparameters[3]; // (cm) | |
131 | //static const Float_t fgkFCAparameters[3]; // (cm) | |
132 | static const Float_t fgkBar[3]; // (cm) | |
133 | static const Float_t fgkBar1[3]; // (cm) | |
134 | static const Float_t fgkBar2[3]; // (cm) | |
135 | static const Float_t fgkBarS[3]; // (cm) | |
136 | static const Float_t fgkBarS1[3]; // (cm) | |
137 | static const Float_t fgkBarS2[3]; // (cm) | |
57df6e96 | 138 | |
dfef1a15 | 139 | ClassDef(AliTOFv6T0,0) //Time Of Flight version 6 |
140 | }; | |
141 | ||
142 | #endif /* ALITOFv6T0_H */ |