]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ACORDE/AliACORDEConstants.h
Create the rec-point branch even in the case of no digits. Please review and fix...
[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//
16// Author: Arturo Fernandez, Enrique Gamez
17// FCFM-UAP, Mexico.
18//
19/////////////////////////////////////////////////////////////////////////
20
21#include <TObject.h>
22
23enum ECRMode {
24 kSingleMuons,
25 kMuonBundle,
26 kMuonFlux
27};
28
29class AliACORDEConstants : public TObject {
30public:
31 virtual ~AliACORDEConstants();
32
33 static AliACORDEConstants* Instance();
34
19f796ed 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 Float_t ExtraModulePositionX() const;
44 Float_t ExtraModulePositionY() const;
45 Float_t PlasticLength() const;
46 Float_t PlasticWidth() const;
47 Float_t PlasticHeight() const;
48 Float_t ProfileWidth() const;
49 Float_t ProfileThickness() const;
b86e74f5 50 Float_t Depth() const;
51
19f796ed 52 // constant to convert hits in digits
53 Float_t HitEnergyThreshold() const { return fgkHitEnergyThreshold;}
54 Float_t MaxHitTimeDifference() const { return fgkMaxHitTimeDifference;}
55 // constants for trigger
56 Int_t MultiMuonThreshold() const { return fgkMultiMuonThreshold;}
57 Float_t MultiMuonWindow() const { return fgkMultiMuonWindow;}
58
b86e74f5 59protected:
19f796ed 60
b86e74f5 61 AliACORDEConstants();
b86e74f5 62
63 static AliACORDEConstants* fgInstance; // static instanton
64
19f796ed 65 static const Float_t fgkModuleLength; // Module lenght
66 static const Float_t fgkModuleWidth; // Module width
67 static const Float_t fgkModuleHeight; // Module height
68 static const Float_t fgkModulePositionX[60]; // position in ALICE
69 static const Float_t fgkModulePositionY[60]; // of center of module
70 static const Float_t fgkModulePositionZ[60];
71 static const Float_t fgkExtraModulePositionZ[4];
72 static const Float_t fgkExtraModulePositionX;
73 static const Float_t fgkExtraModulePositionY;
74
b86e74f5 75
19f796ed 76 static const Float_t fgkPlasticLength; // Plastic length
77 static const Float_t fgkPlasticWidth; // Plastic width
78 static const Float_t fgkPlasticHeight; // Plastic height
b86e74f5 79
b86e74f5 80
19f796ed 81 static const Float_t fgkProfileWidth; // profile of the module
82 static const Float_t fgkProfileThickness;
b86e74f5 83 static const Float_t fgkDepth; // Alice IP depth from surface
84
19f796ed 85 static const Float_t fgkHitEnergyThreshold;
86 static const Float_t fgkMaxHitTimeDifference;
87 static const Int_t fgkMultiMuonThreshold;
88 static const Float_t fgkMultiMuonWindow;
b86e74f5 89 private:
90 ClassDef(AliACORDEConstants, 0) // ACORDE(ACORDE) global constants
91};
2814d35e 92
93typedef AliACORDEConstants AliCRTConstants; // for backward compatibility
94
b86e74f5 95#endif // ALIACORDECONSTANTS_H