From Laurent:
[u/mrichter/AliRoot.git] / MUON / AliMUONTriggerConstants.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 #include "AliMUONTriggerConstants.h"
19
20 ClassImp(AliMUONTriggerConstants)
21
22 //----------------------------------------------------------------------
23 AliMUONTriggerConstants::AliMUONTriggerConstants()
24   : TNamed()
25 {
26 // constructor
27     ;
28 }
29 //----------------------------------------------------------------------
30 AliMUONTriggerConstants::~AliMUONTriggerConstants()
31 {
32 // destructor
33     ;
34 }
35
36 //----------------------------------------------------------------------
37 const Int_t AliMUONTriggerConstants::fgkNmodule = 126;
38
39 //----------------------------------------------------------------------
40 // conv : line-column (line : from top to bottom, column : from left to right)
41 const Int_t AliMUONTriggerConstants::fgkModuleId[126] = 
42 {11,12,13,14,15,16,17,         // right side of the chamber
43  21,22,23,24,25,26,27,
44  31,32,33,34,35,36,37,
45  41,42,43,44,45,46,47,
46  51,52,53,54,55,56,57,
47  61,62,63,64,65,66,67,
48  71,72,73,74,75,76,77,
49  81,82,83,84,85,86,87,
50  91,92,93,94,95,96,97,   
51  -11,-12,-13,-14,-15,-16,-17,  // right side of chamber
52  -21,-22,-23,-24,-25,-26,-27,
53  -31,-32,-33,-34,-35,-36,-37,
54  -41,-42,-43,-44,-45,-46,-47,
55  -51,-52,-53,-54,-55,-56,-57,
56  -61,-62,-63,-64,-65,-66,-67,
57  -71,-72,-73,-74,-75,-76,-77,
58  -81,-82,-83,-84,-85,-86,-87,
59  -91,-92,-93,-94,-95,-96,-97};
60
61 //----------------------------------------------------------------------
62 const Int_t AliMUONTriggerConstants::fgkNstripX[126]=
63 {16,16,16,16,16,16,16,  // right side of the chamber 
64  32,32,32,32,32,32,16,
65  32,32,32,32,32,32,16,
66  48,64,64,32,32,32,16,
67  0,64,64,32,32,32,16,
68  48,64,64,32,32,32,16,
69  32,32,32,32,32,32,16,
70  32,32,32,32,32,32,16,
71  16,16,16,16,16,16,16,  // left side of the chamber
72  16,16,16,16,16,16,16,
73  32,32,32,32,32,32,16,
74  32,32,32,32,32,32,16,
75  48,64,64,32,32,32,16,
76  0,64,64,32,32,32,16,
77  48,64,64,32,32,32,16,
78  32,32,32,32,32,32,16,
79  32,32,32,32,32,32,16,
80  16,16,16,16,16,16,16};
81
82 //----------------------------------------------------------------------  
83 const Int_t AliMUONTriggerConstants::fgkNstripY[126]=
84 { 8, 8, 8, 8, 8, 8,16,  // right side of the chamber
85   8, 8, 8, 8, 8, 8,16,
86   16,16,16,16,16, 8,16,
87   16,16,16,16,16, 8,16,
88   0, 8,16,16,16, 8,16,
89   16,16,16,16,16, 8,16,
90   16,16,16,16,16, 8,16,
91   8, 8, 8, 8, 8, 8,16,
92   8, 8, 8, 8, 8, 8,16,  
93   8, 8, 8, 8, 8, 8,16,  // left side of the chamber
94   8, 8, 8, 8, 8, 8,16,
95   16,16,16,16,16, 8,16,
96   16,16,16,16,16, 8,16,
97   0, 8,16,16,16, 8,16,
98   16,16,16,16,16, 8,16,
99   16,16,16,16,16, 8,16,
100   8, 8, 8, 8, 8, 8,16,
101   8, 8, 8, 8, 8, 8,16};
102
103 //----------------------------------------------------------------------  
104 const Float_t AliMUONTriggerConstants::fgkXcMin[126]=
105 {
106  2.,36.,70.,104.,138.,172.,206., // left
107  2.,36.,70.,104.,138.,172.,206.,
108  2.,36.,70.,104.,138.,172.,206.,
109  2.,36.,70.,104.,138.,172.,206.,
110  0.,53.,70.,104.,138.,172.,206.,
111  2.,36.,70.,104.,138.,172.,206.,
112  2.,36.,70.,104.,138.,172.,206.,
113  2.,36.,70.,104.,138.,172.,206.,
114  2.,36.,70.,104.,138.,172.,206.,
115  -36.,-70.,-104.,-138.,-172.,-206.,-257., //right
116  -36.,-70.,-104.,-138.,-172.,-206.,-257.,
117  -36.,-70.,-104.,-138.,-172.,-206.,-257.,
118  -36.,-70.,-104.,-138.,-172.,-206.,-257.,
119    0.,-70.,-104.,-138.,-172.,-206.,-257.,
120  -36.,-70.,-104.,-138.,-172.,-206.,-257.,
121  -36.,-70.,-104.,-138.,-172.,-206.,-257.,
122  -36.,-70.,-104.,-138.,-172.,-206.,-257.,
123  -36.,-70.,-104.,-138.,-172.,-206.,-257.,
124  };
125
126 //----------------------------------------------------------------------  
127 const Float_t AliMUONTriggerConstants::fgkXcMax[126]=
128 {
129  36.,70.,104.,138.,172.,206.,257., //left
130  36.,70.,104.,138.,172.,206.,257.,
131  36.,70.,104.,138.,172.,206.,257.,
132  36.,70.,104.,138.,172.,206.,257.,
133   0.,70.,104.,138.,172.,206.,257.,
134  36.,70.,104.,138.,172.,206.,257.,
135  36.,70.,104.,138.,172.,206.,257.,
136  36.,70.,104.,138.,172.,206.,257.,
137  36.,70.,104.,138.,172.,206.,257., 
138  -2.,-36.,-70.,-104.,-138.,-172.,-206., // right
139  -2.,-36.,-70.,-104.,-138.,-172.,-206.,
140  -2.,-36.,-70.,-104.,-138.,-172.,-206.,
141  -2.,-36.,-70.,-104.,-138.,-172.,-206.,
142   0.,-53.,-70.,-104.,-138.,-172.,-206.,
143  -2.,-36.,-70.,-104.,-138.,-172.,-206.,
144  -2.,-36.,-70.,-104.,-138.,-172.,-206.,
145  -2.,-36.,-70.,-104.,-138.,-172.,-206.,
146  -2.,-36.,-70.,-104.,-138.,-172.,-206.,
147 };
148
149 //----------------------------------------------------------------------  
150 const Int_t AliMUONTriggerConstants::fgkCircuitId[234]=
151 {111, 121, 131, 141, 151, 161, 171,
152  211, 212, 221, 222, 231, 232, 241, 242, 251, 252, 261, 262, 271,
153  311, 312, 321, 322, 331, 332, 341, 342, 351, 352, 361, 362, 371,
154  411, 412, 413, 421, 422, 423, 424, 431, 432, 433, 434, 441, 442, 
155  451, 452, 461, 462, 471,
156  521, 522, 523, 524, 531, 532, 533, 534, 541, 542, 551, 552, 561, 562, 571, 
157  611, 612, 613, 621, 622, 623, 624, 631, 632, 633, 634, 641, 642,
158  651, 652, 661, 662, 671,
159  711, 712, 721, 722, 731, 732, 741, 742, 751, 752, 761, 762, 771,
160  811, 812, 821, 822, 831, 832, 841, 842, 851, 852, 861, 862, 871,
161  911, 921, 931, 941, 951, 961, 971,
162  -111, -121, -131, -141, -151, -161, -171,
163  -211, -212, -221, -222, -231, -232, -241, -242, -251, -252, -261, -262, -271,
164  -311, -312, -321, -322, -331, -332, -341, -342, -351, -352, -361, -362, -371,
165  -411, -412, -413, -421, -422, -423, -424, -431, -432, -433, -434, -441, -442, 
166  -451, -452, -461, -462, -471,
167  -521, -522, -523, -524, -531, -532, -533, -534, -541, -542, -551, -552, -561, -562, -571, 
168  -611, -612, -613, -621, -622, -623, -624, -631, -632, -633, -634, -641, -642,
169  -651, -652, -661, -662, -671,
170  -711, -712, -721, -722, -731, -732, -741, -742, -751, -752, -761, -762, -771,
171  -811, -812, -821, -822, -831, -832, -841, -842, -851, -852, -861, -862, -871,
172  -911, -921, -931, -941, -951, -961, -971};
173
174 //----------------------------------------------------------------------  
175 const Float_t AliMUONTriggerConstants::fgkStripWidth[3]={1.0625, 2.125, 4.25};
176
177 //----------------------------------------------------------------------  
178 const Float_t AliMUONTriggerConstants::fgkStripLength[4]={17., 34., 51., 68.};
179
180 //----------------------------------------------------------------------
181 // methods which returns public static const data
182 //----------------------------------------------------------------------
183 Int_t AliMUONTriggerConstants::Nmodule()
184 {
185 // returns fgkNmodule
186     return fgkNmodule;    
187 }
188 //----------------------------------------------------------------------
189 Int_t AliMUONTriggerConstants::ModuleId(Int_t imodule)
190 {
191 // returns fgkModuleId
192     return fgkModuleId[imodule];
193 }
194 //----------------------------------------------------------------------
195 Int_t AliMUONTriggerConstants::NstripX(Int_t imodule) 
196 {
197 // returns fgkNstripX
198     return fgkNstripX[imodule];
199 }
200 //----------------------------------------------------------------------
201 Int_t AliMUONTriggerConstants::NstripY(Int_t imodule)
202 {
203 // return fgkNstripY
204     return fgkNstripY[imodule];
205 }
206 //----------------------------------------------------------------------
207 Float_t AliMUONTriggerConstants::XcMin(Int_t imodule)
208 {
209 // returns fgkXcMin
210     return fgkXcMin[imodule];
211 }
212 //----------------------------------------------------------------------
213 Float_t AliMUONTriggerConstants::XcMax(Int_t imodule)
214 {
215 // returns fgkXcMax
216     return fgkXcMax[imodule];
217 }
218 //----------------------------------------------------------------------
219 Int_t AliMUONTriggerConstants::CircuitId(Int_t icircuit)
220 {
221 // returns fgkCircuitId
222     return fgkCircuitId[icircuit];
223 }
224 //----------------------------------------------------------------------
225 Float_t AliMUONTriggerConstants::StripWidth(Int_t istrip)
226 {
227 // returns fgkStripWidth
228     return fgkStripWidth[istrip];
229 }
230 //----------------------------------------------------------------------
231 Float_t AliMUONTriggerConstants::StripLength(Int_t istrip)
232 {
233 // returns fgkStripLength
234     return fgkStripLength[istrip];
235 }
236
237
238
239
240
241
242
243
244