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