This commit was generated by cvs2svn to compensate for changes in r15989,
[u/mrichter/AliRoot.git] / ACORDE / AliACORDEConstants.cxx
1  /**************************************************************************
2  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3  *                                                                        *
4  * Author: The ALICE Off-line Project.                                    *
5  * Contributors are mentioned in the code where appropriate.              *
6  *                                                                        *
7  * Permission to use, copy, modify and distribute this software and its   *
8  * documentation strictly for non-commercial purposes is hereby granted   *
9  * without fee, provided that the above copyright notice appears in all   *
10  * copies and that both the copyright notice and this permission notice   *
11  * appear in the supporting documentation. The authors make no claims     *
12  * about the suitability of this software for any purpose. It is          *
13  * provided "as is" without express or implied warranty.                  *
14  **************************************************************************/
15
16 /* $Id$ */
17
18 ////////////////////////////////////////////////////////////////////////
19 //
20 // AliACORDEConstants class
21 //
22 // This class serves to group constants needed by ACORDE detector in 1
23 // easily accessible place. All constants are public const static data 
24 // members. The class is never instatiated.
25 // Author: Arturo Fernandez, Enrique Gamez
26 //         FCFM-UAP, Mexico.
27 //
28 ////////////////////////////////////////////////////////////////////////
29
30 #include "AliACORDEConstants.h"
31
32 AliACORDEConstants* AliACORDEConstants::fgInstance = 0;
33
34 const Float_t AliACORDEConstants::fgkCageLenght          = 477.6;
35 const Float_t AliACORDEConstants::fgkCageWidth           = 166.7;
36 const Float_t AliACORDEConstants::fgkCageHeight          =  10.7;
37 const Float_t AliACORDEConstants::fgkSinglePaletteLenght = 363.0;
38 const Float_t AliACORDEConstants::fgkSinglePaletteWidth  =  19.7;
39 const Float_t AliACORDEConstants::fgkSinglePaletteHeight =   1;
40 const Float_t AliACORDEConstants::fgkActiveAreaGap       = 0.7;
41 const Float_t AliACORDEConstants::fgkActiveAreaLenght    = AliACORDEConstants::fgkSinglePaletteLenght;
42 const Float_t AliACORDEConstants::fgkActiveAreaWidth     = 156.7;
43 const Float_t AliACORDEConstants::fgkActiveAreaHeight    = 2*AliACORDEConstants::fgkSinglePaletteHeight + AliACORDEConstants::fgkActiveAreaGap;
44 const Float_t AliACORDEConstants::fgkMagnetWidth         = 654.4;
45 const Float_t AliACORDEConstants::fgkMagnetLenght        = 1200;
46 const Float_t AliACORDEConstants::fgkMagMinRadius        = 790;
47 const Float_t AliACORDEConstants::fgkMagMaxRadius        = AliACORDEConstants::fgkMagMinRadius + 20;
48 const Float_t AliACORDEConstants::fgkDepth               =4420; // cm
49
50 ClassImp(AliACORDEConstants)
51
52 //_____________________________________________________________________________
53 AliACORDEConstants::AliACORDEConstants()
54   : TObject()
55 {
56   // Default constructor
57 }
58
59 //_____________________________________________________________________________
60 AliACORDEConstants::AliACORDEConstants(const AliACORDEConstants& ct)
61   : TObject(ct)
62 {
63   // Copy constructor
64 }
65
66 //_____________________________________________________________________________
67 AliACORDEConstants& AliACORDEConstants::operator=(const AliACORDEConstants&)
68 {
69   // Asingment operator
70   return *this;
71 }
72
73 //_____________________________________________________________________________
74 AliACORDEConstants* AliACORDEConstants::Instance()
75 {
76   if ( !fgInstance ) {
77     fgInstance = new AliACORDEConstants;
78   }
79   return fgInstance;
80 }
81
82 //_____________________________________________________________________________
83 AliACORDEConstants::~AliACORDEConstants()
84 {
85   fgInstance = 0;
86 }
87
88 //_____________________________________________________________________________
89 Float_t AliACORDEConstants::CageLenght() const
90 {
91   // Module lenght
92   return fgkCageLenght;
93 }
94
95 //_____________________________________________________________________________
96 Float_t AliACORDEConstants::CageWidth() const
97 {
98   // Module width
99   return fgkCageWidth;
100 }
101
102 //_____________________________________________________________________________
103 Float_t AliACORDEConstants::CageHeight() const
104 {
105   // Module height
106   return fgkCageHeight;
107 }
108
109 //_____________________________________________________________________________
110 Float_t AliACORDEConstants::SinglePaletteLenght() const
111 {
112   // Lenght of the scintillator active zone for a single counter
113   return fgkSinglePaletteLenght;
114 }
115
116 //_____________________________________________________________________________
117 Float_t AliACORDEConstants::SinglePaletteWidth() const
118 {
119   // Width of the scintillator active zone for a single counter
120   return fgkSinglePaletteWidth;
121 }
122
123 //_____________________________________________________________________________
124 Float_t AliACORDEConstants::SinglePaletteHeight() const
125 {
126   // Height of the scintillator active zone for a single counter
127   return fgkSinglePaletteHeight;
128 }
129
130 //_____________________________________________________________________________
131 Float_t AliACORDEConstants::ActiveAreaGap() const
132
133   // Gap betwen scintillators
134   return fgkActiveAreaGap;
135 }
136
137 //_____________________________________________________________________________
138 Float_t AliACORDEConstants::ActiveAreaLenght() const
139 {
140   // Lenght of the scintillator active zone
141   return fgkActiveAreaLenght;
142 }
143
144 //_____________________________________________________________________________
145 Float_t AliACORDEConstants::ActiveAreaWidth() const
146 {
147   // Width of the scintillator active zone
148   return fgkActiveAreaWidth;
149 }
150
151 //_____________________________________________________________________________
152 Float_t AliACORDEConstants::ActiveAreaHeight() const
153 {
154   // Height of the scintillator active zone
155   return fgkActiveAreaHeight;
156 }
157
158 //_____________________________________________________________________________
159 Float_t AliACORDEConstants::MagnetWidth() const
160 {
161   // Magnet  width
162   return fgkMagnetWidth;
163 }
164
165 //_____________________________________________________________________________
166 Float_t AliACORDEConstants::MagnetLenght() const
167 {
168   // Magnet lenght
169   return fgkMagnetLenght;
170 }
171
172 //_____________________________________________________________________________
173 Float_t AliACORDEConstants::MagMinRadius() const
174 {
175   // Magnet Inner radius
176   return fgkMagMinRadius;
177 }
178
179 //_____________________________________________________________________________
180 Float_t AliACORDEConstants::MagMaxRadius() const
181 {
182   // Magnet outer radius
183   return fgkMagMaxRadius;
184 }
185
186 //_____________________________________________________________________________
187 Float_t AliACORDEConstants::Depth() const
188 {
189   // Alice IP depth
190   return fgkDepth;
191 }