1 #ifndef ALIACORDEMODULE_H
2 #define ALIACORDEMODULE_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
7 /////////////////////////////////
8 // ACORDE module geometry manager //
9 /////////////////////////////////
13 class AliACORDEModule : public TNamed {
16 AliACORDEModule(const char* name, const char* title);
17 AliACORDEModule(const AliACORDEModule& mod);
18 virtual ~AliACORDEModule();
20 AliACORDEModule& operator=(const AliACORDEModule& 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(AliACORDEModule, 1)// ACORDE module geometry manager
65 typedef AliACORDEModule AliCRTModule; // for backward compatibility
67 inline void AliACORDEModule::SetScintillatorThickness(Float_t thick)
68 { fScintillatorThickness = thick; }
70 inline void AliACORDEModule::SetScintillatorWidth(Float_t width)
71 { fScintillatorWidth = width; }
73 inline void AliACORDEModule::SetScintillatorLenght(Float_t length)
74 { fScintillatorLength = length; }
76 inline void AliACORDEModule::SetFrameThickness(Float_t thick)
77 { fFrameThickness = thick; }
79 inline void AliACORDEModule::SetFrameWidth(Float_t width)
80 { fFrameWidth = width; }
82 inline void AliACORDEModule::SetFrameLength(Float_t length)
83 { fFrameLength = length; }
85 inline void AliACORDEModule::SetNumberOfColumns(Int_t ncols)
86 { fNColumns = ncols; }
88 inline void AliACORDEModule::SetNumberOfRows(Int_t nrows)
91 inline void AliACORDEModule::SetZGap(Float_t zgap)
94 inline void AliACORDEModule::SetXGap(Float_t xgap)
97 inline Float_t AliACORDEModule::ScintillatorThickness() const
98 { return fScintillatorThickness; }
100 inline Float_t AliACORDEModule::ScintillatorWidth() const
101 { return fScintillatorWidth; }
103 inline Float_t AliACORDEModule::ScintillatorLenght() const
104 { return fScintillatorLength; }
106 inline Float_t AliACORDEModule::FrameThickness() const
107 { return fFrameThickness; }
109 inline Float_t AliACORDEModule::FrameWidth() const
110 { return fFrameWidth; }
112 inline Float_t AliACORDEModule::FrameLength() const
113 { return fFrameLength; }
115 inline Int_t AliACORDEModule::NumberOfModules() const
116 { return fNColumns*fNRows; }
118 inline Int_t AliACORDEModule::NumberOfColumns() const
119 { return fNColumns; }
121 inline Int_t AliACORDEModule::NumberOfRows() const
124 inline Float_t AliACORDEModule::ZGap() const
127 inline Float_t AliACORDEModule::XGap() const
129 #endif // ALIACORDEMODULE_H