]> git.uio.no Git - u/mrichter/AliRoot.git/blob - CRT/AliCRTConstants.h
macro to make ESD
[u/mrichter/AliRoot.git] / CRT / AliCRTConstants.h
1 #ifndef ALICRTCONSTANTS_H
2 #define ALICRTCONSTANTS_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 // AliCRTConstants 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
23 enum ECRMode {
24   kSingleMuons,
25   kMuonBundle,
26   kMuonFlux
27 };
28
29 class AliCRTConstants : public TObject {
30 public:
31   virtual ~AliCRTConstants();
32
33   static AliCRTConstants* Instance();
34
35   const Float_t CageLenght() const;
36   const Float_t CageWidth() const;
37   const Float_t CageHeight() const;
38
39   const Float_t SinglePaletteLenght() const;
40   const Float_t SinglePaletteWidth() const;
41   const Float_t SinglePaletteHeight() const;
42
43   const Float_t ActiveAreaGap() const;
44   const Float_t ActiveAreaLenght() const;
45   const Float_t ActiveAreaWidth() const;
46   const Float_t ActiveAreaHeight() const;
47
48   const Float_t MagnetWidth() const;
49   const Float_t MagnetLenght() const;
50   const Float_t MagMinRadius() const;
51   const Float_t MagMaxRadius() const;
52
53   const Float_t Depth() const;
54
55 protected:
56   AliCRTConstants();
57   AliCRTConstants(const AliCRTConstants& ct);
58   AliCRTConstants& operator=(const AliCRTConstants& ct);
59
60   static AliCRTConstants* fgInstance; // static instanton
61
62   static const Float_t fgkCageLenght; // Cage lenght
63   static const Float_t fgkCageWidth;  // Cage width
64   static const Float_t fgkCageHeight; // Cage height
65
66   static const Float_t fgkSinglePaletteLenght; // Palette lenght
67   static const Float_t fgkSinglePaletteWidth;  // Palette width
68   static const Float_t fgkSinglePaletteHeight; // Palette height
69
70   static const Float_t fgkActiveAreaGap; // Scintillator active area
71
72   static const Float_t fgkActiveAreaLenght; // Active area lenght
73   static const Float_t fgkActiveAreaWidth;  // Active area width
74   static const Float_t fgkActiveAreaHeight; // Active area height
75
76   static const Float_t fgkMagnetWidth;  // Magnet widht
77   static const Float_t fgkMagnetLenght; // Magnet lenght
78   static const Float_t fgkMagMinRadius; // Magnet inside radius
79   static const Float_t fgkMagMaxRadius; // Magnet outer radius
80
81   static const Float_t fgkDepth; // Alice IP depth from surface
82
83  private:
84   ClassDef(AliCRTConstants, 0)   // CRT(ACORDE) global constants
85 };
86 #endif // ALICRTCONSTANTS_H