3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
7 /////////////////////////////////
8 // CRT module geometry manager //
9 /////////////////////////////////
13 class AliCRTModule : public TNamed {
16 AliCRTModule(const char* name, const char* title);
17 AliCRTModule(const AliCRTModule& mod);
18 virtual ~AliCRTModule();
20 AliCRTModule& operator=(const AliCRTModule& mod);
22 void SetScintillatorThickness(Float_t thickness);
23 void SetScintillatorWidth(Float_t width);
24 void SetScintillatorLenght(Float_t length);
26 void SetFrameThickness(Float_t thickness);
27 void SetFrameWidth(Float_t width);
28 void SetFrameLength(Float_t length);
30 void SetNumberOfColumns(Int_t ncols);
31 void SetNumberOfRows(Int_t nrows);
33 void SetZGap(Float_t zgap);
34 void SetXGap(Float_t xgap);
36 Float_t ScintillatorThickness() const;
37 Float_t ScintillatorWidth() const;
38 Float_t ScintillatorLenght() const;
40 Float_t FrameThickness() const;
41 Float_t FrameWidth() const;
42 Float_t FrameLength() const;
44 Int_t NumberOfModules() const;
45 Int_t NumberOfColumns() const;
46 Int_t NumberOfRows() const;
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
65 inline void AliCRTModule::SetScintillatorThickness(Float_t thick)
66 { fScintillatorThickness = thick; }
68 inline void AliCRTModule::SetScintillatorWidth(Float_t width)
69 { fScintillatorWidth = width; }
71 inline void AliCRTModule::SetScintillatorLenght(Float_t length)
72 { fScintillatorLength = length; }
74 inline void AliCRTModule::SetFrameThickness(Float_t thick)
75 { fFrameThickness = thick; }
77 inline void AliCRTModule::SetFrameWidth(Float_t width)
78 { fFrameWidth = width; }
80 inline void AliCRTModule::SetFrameLength(Float_t length)
81 { fFrameLength = length; }
83 inline void AliCRTModule::SetNumberOfColumns(Int_t ncols)
84 { fNColumns = ncols; }
86 inline void AliCRTModule::SetNumberOfRows(Int_t nrows)
89 inline void AliCRTModule::SetZGap(Float_t zgap)
92 inline void AliCRTModule::SetXGap(Float_t xgap)
95 inline Float_t AliCRTModule::ScintillatorThickness() const
96 { return fScintillatorThickness; }
98 inline Float_t AliCRTModule::ScintillatorWidth() const
99 { return fScintillatorWidth; }
101 inline Float_t AliCRTModule::ScintillatorLenght() const
102 { return fScintillatorLength; }
104 inline Float_t AliCRTModule::FrameThickness() const
105 { return fFrameThickness; }
107 inline Float_t AliCRTModule::FrameWidth() const
108 { return fFrameWidth; }
110 inline Float_t AliCRTModule::FrameLength() const
111 { return fFrameLength; }
113 inline Int_t AliCRTModule::NumberOfModules() const
114 { return fNColumns*fNRows; }
116 inline Int_t AliCRTModule::NumberOfColumns() const
117 { return fNColumns; }
119 inline Int_t AliCRTModule::NumberOfRows() const
122 inline Float_t AliCRTModule::ZGap() const
125 inline Float_t AliCRTModule::XGap() const
127 #endif // ALICRTMODULE_H