Update of QA hitograms
[u/mrichter/AliRoot.git] / ACORDE / AliACORDEConstants.h
CommitLineData
b86e74f5 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 */
5
6/* $Id$ */
7
8////////////////////////////////////////////////////////////////////////
9//
10// AliACORDEConstants class
11//
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.
15//
ee0da434 16// Author: Arturo Fernandez, Enrique Gamez, Mario Rodriguez Cahuantzi
b86e74f5 17// FCFM-UAP, Mexico.
18//
ee0da434 19// Last update: Nov. 24th 08
b86e74f5 20/////////////////////////////////////////////////////////////////////////
21
22#include <TObject.h>
23
24enum ECRMode {
25 kSingleMuons,
26 kMuonBundle,
27 kMuonFlux
28};
29
30class AliACORDEConstants : public TObject {
31public:
32 virtual ~AliACORDEConstants();
33
34 static AliACORDEConstants* Instance();
35
19f796ed 36 // constant for geometry
37 Float_t ModuleLength() const;
38 Float_t ModuleWidth() const;
39 Float_t ModuleHeight() const;
40 Float_t ModulePositionX(Int_t i) const;
41 Float_t ModulePositionY(Int_t i) const;
42 Float_t ModulePositionZ(Int_t i) const;
ee0da434 43 Float_t SupportModulePositionX(Int_t i) const;
44 Float_t SupportModulePositionY(Int_t i) const;
45 Float_t SupportModulePositionZ(Int_t i) const;
19f796ed 46 Float_t ExtraModulePositionZ(Int_t i) const;
c16b72bc 47 Int_t ModuleElectronicChannel(Int_t i) const;
19f796ed 48 Float_t ExtraModulePositionX() const;
49 Float_t ExtraModulePositionY() const;
50 Float_t PlasticLength() const;
51 Float_t PlasticWidth() const;
52 Float_t PlasticHeight() const;
53 Float_t ProfileWidth() const;
54 Float_t ProfileThickness() const;
b86e74f5 55 Float_t Depth() const;
56
19f796ed 57 // constant to convert hits in digits
58 Float_t HitEnergyThreshold() const { return fgkHitEnergyThreshold;}
59 Float_t MaxHitTimeDifference() const { return fgkMaxHitTimeDifference;}
60 // constants for trigger
61 Int_t MultiMuonThreshold() const { return fgkMultiMuonThreshold;}
62 Float_t MultiMuonWindow() const { return fgkMultiMuonWindow;}
63
b86e74f5 64protected:
19f796ed 65
b86e74f5 66 AliACORDEConstants();
b86e74f5 67
68 static AliACORDEConstants* fgInstance; // static instanton
69
19f796ed 70 static const Float_t fgkModuleLength; // Module lenght
71 static const Float_t fgkModuleWidth; // Module width
72 static const Float_t fgkModuleHeight; // Module height
73 static const Float_t fgkModulePositionX[60]; // position in ALICE
74 static const Float_t fgkModulePositionY[60]; // of center of module
75 static const Float_t fgkModulePositionZ[60];
ee0da434 76 static const Float_t fgkSupportModulePositionX[60];
77 static const Float_t fgkSupportModulePositionY[60];
78 static const Float_t fgkSupportModulePositionZ[60];
19f796ed 79 static const Float_t fgkExtraModulePositionZ[4];
80 static const Float_t fgkExtraModulePositionX;
81 static const Float_t fgkExtraModulePositionY;
c16b72bc 82 static const Int_t fgkModuleElectronicChannel[60];
b86e74f5 83
19f796ed 84 static const Float_t fgkPlasticLength; // Plastic length
85 static const Float_t fgkPlasticWidth; // Plastic width
86 static const Float_t fgkPlasticHeight; // Plastic height
b86e74f5 87
b86e74f5 88
19f796ed 89 static const Float_t fgkProfileWidth; // profile of the module
90 static const Float_t fgkProfileThickness;
b86e74f5 91 static const Float_t fgkDepth; // Alice IP depth from surface
92
19f796ed 93 static const Float_t fgkHitEnergyThreshold;
94 static const Float_t fgkMaxHitTimeDifference;
95 static const Int_t fgkMultiMuonThreshold;
96 static const Float_t fgkMultiMuonWindow;
1093dbd7 97
98
b86e74f5 99 private:
100 ClassDef(AliACORDEConstants, 0) // ACORDE(ACORDE) global constants
101};
2814d35e 102
103typedef AliACORDEConstants AliCRTConstants; // for backward compatibility
104
b86e74f5 105#endif // ALIACORDECONSTANTS_H