1 #ifndef ALIACORDECONSTANTS_H
2 #define ALIACORDECONSTANTS_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
8 ////////////////////////////////////////////////////////////////////////
10 // AliACORDEConstants class
12 // This class serves to group constants needed by ACORDE detector in 1
13 // easily accessible place. All constants are public const static data
14 // members. The class is never instatiated.
16 // Author: Arturo Fernandez, Enrique Gamez
19 /////////////////////////////////////////////////////////////////////////
29 class AliACORDEConstants : public TObject {
31 virtual ~AliACORDEConstants();
33 static AliACORDEConstants* Instance();
35 // constant for geometry
36 Float_t ModuleLength() const;
37 Float_t ModuleWidth() const;
38 Float_t ModuleHeight() const;
39 Float_t ModulePositionX(Int_t i) const;
40 Float_t ModulePositionY(Int_t i) const;
41 Float_t ModulePositionZ(Int_t i) const;
42 Float_t ExtraModulePositionZ(Int_t i) const;
43 Int_t ModuleElectronicChannel(Int_t i) const;
44 Float_t ExtraModulePositionX() const;
45 Float_t ExtraModulePositionY() const;
46 Float_t PlasticLength() const;
47 Float_t PlasticWidth() const;
48 Float_t PlasticHeight() const;
49 Float_t ProfileWidth() const;
50 Float_t ProfileThickness() const;
51 Float_t Depth() const;
53 // constant to convert hits in digits
54 Float_t HitEnergyThreshold() const { return fgkHitEnergyThreshold;}
55 Float_t MaxHitTimeDifference() const { return fgkMaxHitTimeDifference;}
56 // constants for trigger
57 Int_t MultiMuonThreshold() const { return fgkMultiMuonThreshold;}
58 Float_t MultiMuonWindow() const { return fgkMultiMuonWindow;}
64 static AliACORDEConstants* fgInstance; // static instanton
66 static const Float_t fgkModuleLength; // Module lenght
67 static const Float_t fgkModuleWidth; // Module width
68 static const Float_t fgkModuleHeight; // Module height
69 static const Float_t fgkModulePositionX[60]; // position in ALICE
70 static const Float_t fgkModulePositionY[60]; // of center of module
71 static const Float_t fgkModulePositionZ[60];
72 static const Float_t fgkExtraModulePositionZ[4];
73 static const Float_t fgkExtraModulePositionX;
74 static const Float_t fgkExtraModulePositionY;
75 static const Int_t fgkModuleElectronicChannel[60];
77 static const Float_t fgkPlasticLength; // Plastic length
78 static const Float_t fgkPlasticWidth; // Plastic width
79 static const Float_t fgkPlasticHeight; // Plastic height
82 static const Float_t fgkProfileWidth; // profile of the module
83 static const Float_t fgkProfileThickness;
84 static const Float_t fgkDepth; // Alice IP depth from surface
86 static const Float_t fgkHitEnergyThreshold;
87 static const Float_t fgkMaxHitTimeDifference;
88 static const Int_t fgkMultiMuonThreshold;
89 static const Float_t fgkMultiMuonWindow;
91 ClassDef(AliACORDEConstants, 0) // ACORDE(ACORDE) global constants
94 typedef AliACORDEConstants AliCRTConstants; // for backward compatibility
96 #endif // ALIACORDECONSTANTS_H