]>
Commit | Line | Data |
---|---|---|
1 | #ifndef ALICRTMODULE_H | |
2 | #define ALICRTMODULE_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* $Id: */ | |
7 | ///////////////////////////////// | |
8 | // CRT module geometry manager // | |
9 | ///////////////////////////////// | |
10 | ||
11 | #include <TNamed.h> | |
12 | ||
13 | class AliCRTModule : public TNamed { | |
14 | public: | |
15 | AliCRTModule(); | |
16 | AliCRTModule(const char* name, const char* title); | |
17 | AliCRTModule(const AliCRTModule& mod); | |
18 | virtual ~AliCRTModule(); | |
19 | ||
20 | AliCRTModule& operator=(const AliCRTModule& mod); | |
21 | ||
22 | void SetScintillatorThickness(Float_t thickness); | |
23 | void SetScintillatorWidth(Float_t width); | |
24 | void SetScintillatorLenght(Float_t length); | |
25 | ||
26 | void SetFrameThickness(Float_t thickness); | |
27 | void SetFrameWidth(Float_t width); | |
28 | void SetFrameLength(Float_t length); | |
29 | ||
30 | void SetNumberOfColumns(Int_t ncols); | |
31 | void SetNumberOfRows(Int_t nrows); | |
32 | ||
33 | void SetZGap(Float_t zgap); | |
34 | void SetXGap(Float_t xgap); | |
35 | ||
36 | Float_t ScintillatorThickness() const; | |
37 | Float_t ScintillatorWidth() const; | |
38 | Float_t ScintillatorLenght() const; | |
39 | ||
40 | Float_t FrameThickness() const; | |
41 | Float_t FrameWidth() const; | |
42 | Float_t FrameLength() const; | |
43 | ||
44 | Int_t NumberOfModules() const; | |
45 | Int_t NumberOfColumns() const; | |
46 | Int_t NumberOfRows() const; | |
47 | ||
48 | Float_t ZGap() const; | |
49 | Float_t XGap() const; | |
50 | ||
51 | private: | |
52 | Float_t fScintillatorThickness; // Scintillator thickness | |
53 | Float_t fScintillatorWidth; // Scintillator width | |
54 | Float_t fScintillatorLength; // Scintillator length | |
55 | Float_t fFrameThickness; // Aluminium frame thickness | |
56 | Float_t fFrameWidth; // Aluminium frame width | |
57 | Float_t fFrameLength; // Aliuminium frame length | |
58 | Int_t fNColumns;//Number of modules per column per magnet face (z coordinate) | |
59 | Int_t fNRows; // Number of module rows per magnet face (x coordinate) | |
60 | Float_t fZGap; // Gap in Z betwen modules | |
61 | Float_t fXGap; // Gap in X betwen modules | |
62 | ClassDef(AliCRTModule, 1)// CRT module geometry manager | |
63 | }; | |
64 | ||
65 | inline void AliCRTModule::SetScintillatorThickness(Float_t thick) | |
66 | { fScintillatorThickness = thick; } | |
67 | ||
68 | inline void AliCRTModule::SetScintillatorWidth(Float_t width) | |
69 | { fScintillatorWidth = width; } | |
70 | ||
71 | inline void AliCRTModule::SetScintillatorLenght(Float_t length) | |
72 | { fScintillatorLength = length; } | |
73 | ||
74 | inline void AliCRTModule::SetFrameThickness(Float_t thick) | |
75 | { fFrameThickness = thick; } | |
76 | ||
77 | inline void AliCRTModule::SetFrameWidth(Float_t width) | |
78 | { fFrameWidth = width; } | |
79 | ||
80 | inline void AliCRTModule::SetFrameLength(Float_t length) | |
81 | { fFrameLength = length; } | |
82 | ||
83 | inline void AliCRTModule::SetNumberOfColumns(Int_t ncols) | |
84 | { fNColumns = ncols; } | |
85 | ||
86 | inline void AliCRTModule::SetNumberOfRows(Int_t nrows) | |
87 | { fNRows = nrows; } | |
88 | ||
89 | inline void AliCRTModule::SetZGap(Float_t zgap) | |
90 | { fZGap = zgap; } | |
91 | ||
92 | inline void AliCRTModule::SetXGap(Float_t xgap) | |
93 | { fXGap = xgap; } | |
94 | ||
95 | inline Float_t AliCRTModule::ScintillatorThickness() const | |
96 | { return fScintillatorThickness; } | |
97 | ||
98 | inline Float_t AliCRTModule::ScintillatorWidth() const | |
99 | { return fScintillatorWidth; } | |
100 | ||
101 | inline Float_t AliCRTModule::ScintillatorLenght() const | |
102 | { return fScintillatorLength; } | |
103 | ||
104 | inline Float_t AliCRTModule::FrameThickness() const | |
105 | { return fFrameThickness; } | |
106 | ||
107 | inline Float_t AliCRTModule::FrameWidth() const | |
108 | { return fFrameWidth; } | |
109 | ||
110 | inline Float_t AliCRTModule::FrameLength() const | |
111 | { return fFrameLength; } | |
112 | ||
113 | inline Int_t AliCRTModule::NumberOfModules() const | |
114 | { return fNColumns*fNRows; } | |
115 | ||
116 | inline Int_t AliCRTModule::NumberOfColumns() const | |
117 | { return fNColumns; } | |
118 | ||
119 | inline Int_t AliCRTModule::NumberOfRows() const | |
120 | { return fNRows; } | |
121 | ||
122 | inline Float_t AliCRTModule::ZGap() const | |
123 | { return fZGap; } | |
124 | ||
125 | inline Float_t AliCRTModule::XGap() const | |
126 | { return fXGap; } | |
127 | #endif // ALICRTMODULE_H |