]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STEER/STEERBase/AliCentrality.cxx
Update from Alberica. Addition of VZERO equalized signals and ZNC.
[u/mrichter/AliRoot.git] / STEER / STEERBase / AliCentrality.cxx
CommitLineData
d15bf53f 1/**************************************************************************
2 * Copyright(c) 1998-2008, 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//*****************************************************
a540a9d3 17// Class AliCentrality
d15bf53f 18// author: Alberica Toia
19//*****************************************************
fba4b2e2 20/// A container for the centrality stored in AOD in ESD
d15bf53f 21
fba4b2e2 22#include "AliCentrality.h"
d15bf53f 23
fba4b2e2 24ClassImp(AliCentrality)
d15bf53f 25
fba4b2e2 26AliCentrality::AliCentrality() : TNamed("Centrality", "Centrality"),
93d96ff5 27 fQuality(999),
d15bf53f 28 fCentralityV0M(0),
13e74ee2 29 fCentralityV0A(0),
30 fCentralityV0C(0),
f9a774f9 31 fCentralityV0MEq(0),
32 fCentralityV0AEq(0),
33 fCentralityV0CEq(0),
d15bf53f 34 fCentralityFMD(0),
35 fCentralityTRK(0),
36 fCentralityTKL(0),
37 fCentralityCL0(0),
be0d4e9b 38 fCentralityCL1(0),
13e74ee2 39 fCentralityCND(0),
99029fba 40 fCentralityZNA(0),
f9a774f9 41 fCentralityZNC(0),
39a3e400 42 fCentralityNPA(0),
d15bf53f 43 fCentralityV0MvsFMD(0),
44 fCentralityTKLvsV0M(0),
39a3e400 45 fCentralityZEMvsZDC(0),
46 fCentralityV0Mtrue(0),
47 fCentralityV0Atrue(0),
48 fCentralityV0Ctrue(0),
f9a774f9 49 fCentralityV0MEqtrue(0),
50 fCentralityV0AEqtrue(0),
51 fCentralityV0CEqtrue(0),
39a3e400 52 fCentralityFMDtrue(0),
53 fCentralityTRKtrue(0),
54 fCentralityTKLtrue(0),
55 fCentralityCL0true(0),
56 fCentralityCL1true(0),
57 fCentralityCNDtrue(0),
f9a774f9 58 fCentralityZNAtrue(0),
59 fCentralityZNCtrue(0)
d15bf53f 60{
61 /// constructor
62}
63
fba4b2e2 64AliCentrality::AliCentrality(const AliCentrality& cnt) :
a540a9d3 65 TNamed(cnt),
66 fQuality(cnt.fQuality),
d15bf53f 67 fCentralityV0M(cnt.fCentralityV0M),
13e74ee2 68 fCentralityV0A(cnt.fCentralityV0A),
69 fCentralityV0C(cnt.fCentralityV0C),
f9a774f9 70 fCentralityV0MEq(cnt.fCentralityV0MEq),
71 fCentralityV0AEq(cnt.fCentralityV0AEq),
72 fCentralityV0CEq(cnt.fCentralityV0CEq),
d15bf53f 73 fCentralityFMD(cnt.fCentralityFMD),
74 fCentralityTRK(cnt.fCentralityTRK),
75 fCentralityTKL(cnt.fCentralityTKL),
76 fCentralityCL0(cnt.fCentralityCL0),
be0d4e9b 77 fCentralityCL1(cnt.fCentralityCL1),
13e74ee2 78 fCentralityCND(cnt.fCentralityCND),
99029fba 79 fCentralityZNA(cnt.fCentralityZNA),
f9a774f9 80 fCentralityZNC(cnt.fCentralityZNC),
39a3e400 81 fCentralityNPA(cnt.fCentralityNPA),
d15bf53f 82 fCentralityV0MvsFMD(cnt.fCentralityV0MvsFMD),
83 fCentralityTKLvsV0M(cnt.fCentralityTKLvsV0M),
39a3e400 84 fCentralityZEMvsZDC(cnt.fCentralityZEMvsZDC),
85 fCentralityV0Mtrue(cnt.fCentralityV0Mtrue),
86 fCentralityV0Atrue(cnt.fCentralityV0Atrue),
87 fCentralityV0Ctrue(cnt.fCentralityV0Ctrue),
f9a774f9 88 fCentralityV0MEqtrue(cnt.fCentralityV0MEqtrue),
89 fCentralityV0AEqtrue(cnt.fCentralityV0AEqtrue),
90 fCentralityV0CEqtrue(cnt.fCentralityV0CEqtrue),
39a3e400 91 fCentralityFMDtrue(cnt.fCentralityFMDtrue),
92 fCentralityTRKtrue(cnt.fCentralityTRKtrue),
93 fCentralityTKLtrue(cnt.fCentralityTKLtrue),
94 fCentralityCL0true(cnt.fCentralityCL0true),
95 fCentralityCL1true(cnt.fCentralityCL1true),
96 fCentralityCNDtrue(cnt.fCentralityCNDtrue),
f9a774f9 97 fCentralityZNAtrue(cnt.fCentralityZNAtrue),
98 fCentralityZNCtrue(cnt.fCentralityZNCtrue)
d15bf53f 99{
100 /// Copy constructor
101}
102
fba4b2e2 103AliCentrality& AliCentrality::operator=(const AliCentrality& c)
d15bf53f 104{
105 /// Assignment operator
106 if (this!=&c) {
107 TNamed::operator=(c);
a540a9d3 108 fQuality = c.fQuality;
d15bf53f 109 fCentralityV0M = c.fCentralityV0M;
13e74ee2 110 fCentralityV0A = c.fCentralityV0A;
111 fCentralityV0C = c.fCentralityV0C;
f9a774f9 112 fCentralityV0MEq = c.fCentralityV0MEq;
113 fCentralityV0AEq = c.fCentralityV0AEq;
114 fCentralityV0CEq = c.fCentralityV0CEq;
d15bf53f 115 fCentralityFMD = c.fCentralityFMD;
116 fCentralityTRK = c.fCentralityTRK;
117 fCentralityTKL = c.fCentralityTKL;
118 fCentralityCL0 = c.fCentralityCL0;
be0d4e9b 119 fCentralityCL1 = c.fCentralityCL1;
13e74ee2 120 fCentralityCND = c.fCentralityCND;
99029fba 121 fCentralityZNA = c.fCentralityZNA;
f9a774f9 122 fCentralityZNC = c.fCentralityZNC;
39a3e400 123 fCentralityNPA = c.fCentralityNPA;
d15bf53f 124 fCentralityV0MvsFMD = c.fCentralityV0MvsFMD;
125 fCentralityTKLvsV0M = c.fCentralityTKLvsV0M;
126 fCentralityZEMvsZDC = c.fCentralityZEMvsZDC;
39a3e400 127 fCentralityV0Mtrue = c.fCentralityV0Mtrue;
128 fCentralityV0Atrue = c.fCentralityV0Atrue;
129 fCentralityV0Ctrue = c.fCentralityV0Ctrue;
f9a774f9 130 fCentralityV0MEqtrue = c.fCentralityV0MEqtrue;
131 fCentralityV0AEqtrue = c.fCentralityV0AEqtrue;
132 fCentralityV0CEqtrue = c.fCentralityV0CEqtrue;
39a3e400 133 fCentralityFMDtrue = c.fCentralityFMDtrue;
134 fCentralityTRKtrue = c.fCentralityTRKtrue;
135 fCentralityTKLtrue = c.fCentralityTKLtrue;
136 fCentralityCL0true = c.fCentralityCL0true;
137 fCentralityCL1true = c.fCentralityCL1true;
138 fCentralityCNDtrue = c.fCentralityCNDtrue;
139 fCentralityZNAtrue = c.fCentralityZNAtrue;
f9a774f9 140 fCentralityZNCtrue = c.fCentralityZNCtrue;
d15bf53f 141 }
142
143 return *this;
144}
145
fba4b2e2 146AliCentrality::~AliCentrality()
d15bf53f 147{
148 /// destructor
149}
150
aa7e002c 151Int_t AliCentrality::GetQuality() const
a540a9d3 152{
153 return fQuality;
154}
155
aa7e002c 156Float_t AliCentrality::GetCentralityPercentile(const char *x) const
a540a9d3 157{
aa7e002c 158// Return the centrality percentile
a540a9d3 159 if (fQuality == 0) {
160 TString method = x;
161 if(method.CompareTo("V0M")==0) return fCentralityV0M;
13e74ee2 162 if(method.CompareTo("V0A")==0) return fCentralityV0A;
163 if(method.CompareTo("V0C")==0) return fCentralityV0C;
f9a774f9 164 if(method.CompareTo("V0MEq")==0) return fCentralityV0MEq;
165 if(method.CompareTo("V0AEq")==0) return fCentralityV0AEq;
166 if(method.CompareTo("V0CEq")==0) return fCentralityV0CEq;
a540a9d3 167 if(method.CompareTo("FMD")==0) return fCentralityFMD;
168 if(method.CompareTo("TRK")==0) return fCentralityTRK;
169 if(method.CompareTo("TKL")==0) return fCentralityTKL;
170 if(method.CompareTo("CL0")==0) return fCentralityCL0;
171 if(method.CompareTo("CL1")==0) return fCentralityCL1;
13e74ee2 172 if(method.CompareTo("CND")==0) return fCentralityCND;
99029fba 173 if(method.CompareTo("ZNA")==0) return fCentralityZNA;
f9a774f9 174 if(method.CompareTo("ZNC")==0) return fCentralityZNC;
39a3e400 175 if(method.CompareTo("NPA")==0) return fCentralityNPA;
a540a9d3 176 if(method.CompareTo("V0MvsFMD")==0) return fCentralityV0MvsFMD;
177 if(method.CompareTo("TKLvsV0M")==0) return fCentralityTKLvsV0M;
fe92f402 178 if(method.CompareTo("ZEMvsZDC")==0) return fCentralityZEMvsZDC;
39a3e400 179 if(method.CompareTo("V0Mtrue")==0) return fCentralityV0Mtrue;
180 if(method.CompareTo("V0Atrue")==0) return fCentralityV0Atrue;
181 if(method.CompareTo("V0Ctrue")==0) return fCentralityV0Ctrue;
f9a774f9 182 if(method.CompareTo("V0MEqtrue")==0) return fCentralityV0MEqtrue;
183 if(method.CompareTo("V0AEqtrue")==0) return fCentralityV0AEqtrue;
184 if(method.CompareTo("V0CEqtrue")==0) return fCentralityV0CEqtrue;
39a3e400 185 if(method.CompareTo("FMDtrue")==0) return fCentralityFMDtrue;
186 if(method.CompareTo("TRKtrue")==0) return fCentralityTRKtrue;
187 if(method.CompareTo("TKLtrue")==0) return fCentralityTKLtrue;
188 if(method.CompareTo("CL0true")==0) return fCentralityCL0true;
189 if(method.CompareTo("CL1true")==0) return fCentralityCL1true;
190 if(method.CompareTo("CNDtrue")==0) return fCentralityCNDtrue;
191 if(method.CompareTo("ZNAtrue")==0) return fCentralityZNAtrue;
f9a774f9 192 if(method.CompareTo("ZNCtrue")==0) return fCentralityZNCtrue;
a540a9d3 193 return -1;
194 } else {
195 return -1;
196 }
197}
198
aa7e002c 199Int_t AliCentrality::GetCentralityClass10(const char *x) const
a540a9d3 200{
aa7e002c 201// Return the centrality class
a540a9d3 202 if (fQuality == 0) {
203 TString method = x;
204 if(method.CompareTo("V0M")==0) return (Int_t) (fCentralityV0M / 10.0);
13e74ee2 205 if(method.CompareTo("V0A")==0) return (Int_t) (fCentralityV0A / 10.0);
206 if(method.CompareTo("V0C")==0) return (Int_t) (fCentralityV0C / 10.0);
f9a774f9 207 if(method.CompareTo("V0MEq")==0) return (Int_t) (fCentralityV0MEq / 10.0);
208 if(method.CompareTo("V0AEq")==0) return (Int_t) (fCentralityV0AEq / 10.0);
209 if(method.CompareTo("V0CEq")==0) return (Int_t) (fCentralityV0CEq / 10.0);
a540a9d3 210 if(method.CompareTo("FMD")==0) return (Int_t) (fCentralityFMD / 10.0);
211 if(method.CompareTo("TRK")==0) return (Int_t) (fCentralityTRK / 10.0);
212 if(method.CompareTo("TKL")==0) return (Int_t) (fCentralityTKL / 10.0);
213 if(method.CompareTo("CL0")==0) return (Int_t) (fCentralityCL0 / 10.0);
214 if(method.CompareTo("CL1")==0) return (Int_t) (fCentralityCL1 / 10.0);
13e74ee2 215 if(method.CompareTo("CND")==0) return (Int_t) (fCentralityCND / 10.0);
99029fba 216 if(method.CompareTo("ZNA")==0) return (Int_t) (fCentralityZNA / 10.0);
f9a774f9 217 if(method.CompareTo("ZNC")==0) return (Int_t) (fCentralityZNC / 10.0);
39a3e400 218 if(method.CompareTo("NPA")==0) return (Int_t) (fCentralityNPA / 10.0);
a540a9d3 219 if(method.CompareTo("V0MvsFMD")==0) return (Int_t) (fCentralityV0MvsFMD / 10.0);
220 if(method.CompareTo("TKLvsV0M")==0) return (Int_t) (fCentralityTKLvsV0M / 10.0);
fe92f402 221 if(method.CompareTo("ZEMvsZDC")==0) return (Int_t) (fCentralityZEMvsZDC / 10.0);
39a3e400 222 if(method.CompareTo("V0Mtrue")==0) return (Int_t) (fCentralityV0Mtrue / 10.0);
223 if(method.CompareTo("V0Atrue")==0) return (Int_t) (fCentralityV0Atrue / 10.0);
224 if(method.CompareTo("V0Ctrue")==0) return (Int_t) (fCentralityV0Ctrue / 10.0);
f9a774f9 225 if(method.CompareTo("V0MEqtrue")==0)return (Int_t) (fCentralityV0MEqtrue / 10.0);
226 if(method.CompareTo("V0AEqtrue")==0)return (Int_t) (fCentralityV0AEqtrue / 10.0);
227 if(method.CompareTo("V0CEqtrue")==0)return (Int_t) (fCentralityV0CEqtrue / 10.0);
39a3e400 228 if(method.CompareTo("FMDtrue")==0) return (Int_t) (fCentralityFMDtrue / 10.0);
229 if(method.CompareTo("TRKtrue")==0) return (Int_t) (fCentralityTRKtrue / 10.0);
230 if(method.CompareTo("TKLtrue")==0) return (Int_t) (fCentralityTKLtrue / 10.0);
231 if(method.CompareTo("CL0true")==0) return (Int_t) (fCentralityCL0true / 10.0);
232 if(method.CompareTo("CL1true")==0) return (Int_t) (fCentralityCL1true / 10.0);
233 if(method.CompareTo("CNDtrue")==0) return (Int_t) (fCentralityCNDtrue / 10.0);
234 if(method.CompareTo("ZNAtrue")==0) return (Int_t) (fCentralityZNAtrue / 10.0);
f9a774f9 235 if(method.CompareTo("ZNCtrue")==0) return (Int_t) (fCentralityZNCtrue / 10.0);
a540a9d3 236 return -1;
237 } else {
238 return -1;
239 }
240}
241
aa7e002c 242Int_t AliCentrality::GetCentralityClass5(const char *x) const
a540a9d3 243{
aa7e002c 244// Return the centrality class
a540a9d3 245 if (fQuality == 0) {
246 TString method = x;
247 if(method.CompareTo("V0M")==0) return (Int_t) (fCentralityV0M / 5.0);
13e74ee2 248 if(method.CompareTo("V0A")==0) return (Int_t) (fCentralityV0A / 5.0);
249 if(method.CompareTo("V0C")==0) return (Int_t) (fCentralityV0C / 5.0);
f9a774f9 250 if(method.CompareTo("V0MEq")==0) return (Int_t) (fCentralityV0MEq / 5.0);
251 if(method.CompareTo("V0AEq")==0) return (Int_t) (fCentralityV0AEq / 5.0);
252 if(method.CompareTo("V0CEq")==0) return (Int_t) (fCentralityV0CEq / 5.0);
a540a9d3 253 if(method.CompareTo("FMD")==0) return (Int_t) (fCentralityFMD / 5.0);
254 if(method.CompareTo("TRK")==0) return (Int_t) (fCentralityTRK / 5.0);
255 if(method.CompareTo("TKL")==0) return (Int_t) (fCentralityTKL / 5.0);
256 if(method.CompareTo("CL0")==0) return (Int_t) (fCentralityCL0 / 5.0);
257 if(method.CompareTo("CL1")==0) return (Int_t) (fCentralityCL1 / 5.0);
13e74ee2 258 if(method.CompareTo("CND")==0) return (Int_t) (fCentralityCND / 5.0);
99029fba 259 if(method.CompareTo("ZNA")==0) return (Int_t) (fCentralityZNA / 5.0);
f9a774f9 260 if(method.CompareTo("ZNC")==0) return (Int_t) (fCentralityZNC / 5.0);
39a3e400 261 if(method.CompareTo("NPA")==0) return (Int_t) (fCentralityNPA / 5.0);
a540a9d3 262 if(method.CompareTo("V0MvsFMD")==0) return (Int_t) (fCentralityV0MvsFMD / 5.0);
263 if(method.CompareTo("TKLvsV0M")==0) return (Int_t) (fCentralityTKLvsV0M / 5.0);
fe92f402 264 if(method.CompareTo("ZEMvsZDC")==0) return (Int_t) (fCentralityZEMvsZDC / 5.0);
39a3e400 265 if(method.CompareTo("V0Mtrue")==0) return (Int_t) (fCentralityV0Mtrue / 5.0);
266 if(method.CompareTo("V0Atrue")==0) return (Int_t) (fCentralityV0Atrue / 5.0);
267 if(method.CompareTo("V0Ctrue")==0) return (Int_t) (fCentralityV0Ctrue / 5.0);
f9a774f9 268 if(method.CompareTo("V0MEqtrue")==0)return (Int_t) (fCentralityV0MEqtrue / 5.0);
269 if(method.CompareTo("V0AEqtrue")==0)return (Int_t) (fCentralityV0AEqtrue / 5.0);
270 if(method.CompareTo("V0CEqtrue")==0)return (Int_t) (fCentralityV0CEqtrue / 5.0);
39a3e400 271 if(method.CompareTo("FMDtrue")==0) return (Int_t) (fCentralityFMDtrue / 5.0);
272 if(method.CompareTo("TRKtrue")==0) return (Int_t) (fCentralityTRKtrue / 5.0);
273 if(method.CompareTo("TKLtrue")==0) return (Int_t) (fCentralityTKLtrue / 5.0);
274 if(method.CompareTo("CL0true")==0) return (Int_t) (fCentralityCL0true / 5.0);
275 if(method.CompareTo("CL1true")==0) return (Int_t) (fCentralityCL1true / 5.0);
276 if(method.CompareTo("CNDtrue")==0) return (Int_t) (fCentralityCNDtrue / 5.0);
277 if(method.CompareTo("ZNAtrue")==0) return (Int_t) (fCentralityZNAtrue / 5.0);
f9a774f9 278 if(method.CompareTo("ZNCtrue")==0) return (Int_t) (fCentralityZNCtrue / 5.0);
a540a9d3 279 return -1;
280 } else {
281 return -1;
282 }
283}
284
285
aa7e002c 286Bool_t AliCentrality::IsEventInCentralityClass(Float_t a, Float_t b, const char *x) const
a540a9d3 287{
aa7e002c 288// True if event is inside a given class
a540a9d3 289 if (fQuality == 0) {
290 TString method = x;
291 if ((method.CompareTo("V0M")==0) && (fCentralityV0M >=a && fCentralityV0M < b)) return kTRUE;
13e74ee2 292 if ((method.CompareTo("V0A")==0) && (fCentralityV0A >=a && fCentralityV0A < b)) return kTRUE;
293 if ((method.CompareTo("V0C")==0) && (fCentralityV0C >=a && fCentralityV0C < b)) return kTRUE;
f9a774f9 294 if ((method.CompareTo("V0MEq")==0) && (fCentralityV0MEq >=a && fCentralityV0MEq < b)) return kTRUE;
295 if ((method.CompareTo("V0AEq")==0) && (fCentralityV0AEq >=a && fCentralityV0AEq < b)) return kTRUE;
296 if ((method.CompareTo("V0CEq")==0) && (fCentralityV0CEq >=a && fCentralityV0CEq < b)) return kTRUE;
a540a9d3 297 if ((method.CompareTo("FMD")==0) && (fCentralityFMD >=a && fCentralityFMD < b)) return kTRUE;
298 if ((method.CompareTo("TRK")==0) && (fCentralityTRK >=a && fCentralityTRK < b)) return kTRUE;
299 if ((method.CompareTo("TKL")==0) && (fCentralityTKL >=a && fCentralityTKL < b)) return kTRUE;
300 if ((method.CompareTo("CL0")==0) && (fCentralityCL0 >=a && fCentralityCL0 < b)) return kTRUE;
301 if ((method.CompareTo("CL1")==0) && (fCentralityCL1 >=a && fCentralityCL1 < b)) return kTRUE;
13e74ee2 302 if ((method.CompareTo("CND")==0) && (fCentralityCND >=a && fCentralityCND < b)) return kTRUE;
99029fba 303 if ((method.CompareTo("ZNA")==0) && (fCentralityZNA >=a && fCentralityZNA < b)) return kTRUE;
f9a774f9 304 if ((method.CompareTo("ZNC")==0) && (fCentralityZNC >=a && fCentralityZNC < b)) return kTRUE;
39a3e400 305 if ((method.CompareTo("NPA")==0) && (fCentralityNPA >=a && fCentralityNPA < b)) return kTRUE;
a540a9d3 306 if ((method.CompareTo("V0MvsFMD")==0) && (fCentralityV0MvsFMD >=a && fCentralityV0MvsFMD < b)) return kTRUE;
307 if ((method.CompareTo("TKLvsV0M")==0) && (fCentralityTKLvsV0M >=a && fCentralityTKLvsV0M < b)) return kTRUE;
308 if ((method.CompareTo("ZEMvsZDC")==0) && (fCentralityZEMvsZDC >=a && fCentralityZEMvsZDC < b)) return kTRUE;
39a3e400 309 if ((method.CompareTo("V0Mtrue")==0) && (fCentralityV0Mtrue >=a && fCentralityV0Mtrue < b)) return kTRUE;
310 if ((method.CompareTo("V0Atrue")==0) && (fCentralityV0Atrue >=a && fCentralityV0Atrue < b)) return kTRUE;
311 if ((method.CompareTo("V0Ctrue")==0) && (fCentralityV0Ctrue >=a && fCentralityV0Ctrue < b)) return kTRUE;
f9a774f9 312 if ((method.CompareTo("V0MEqtrue")==0) && (fCentralityV0MEqtrue >=a && fCentralityV0MEqtrue < b)) return kTRUE;
313 if ((method.CompareTo("V0AEqtrue")==0) && (fCentralityV0AEqtrue >=a && fCentralityV0AEqtrue < b)) return kTRUE;
314 if ((method.CompareTo("V0CEqtrue")==0) && (fCentralityV0CEqtrue >=a && fCentralityV0CEqtrue < b)) return kTRUE;
39a3e400 315 if ((method.CompareTo("FMDtrue")==0) && (fCentralityFMDtrue >=a && fCentralityFMDtrue < b)) return kTRUE;
316 if ((method.CompareTo("TRKtrue")==0) && (fCentralityTRKtrue >=a && fCentralityTRKtrue < b)) return kTRUE;
317 if ((method.CompareTo("TKLtrue")==0) && (fCentralityTKLtrue >=a && fCentralityTKLtrue < b)) return kTRUE;
318 if ((method.CompareTo("CL0true")==0) && (fCentralityCL0true >=a && fCentralityCL0true < b)) return kTRUE;
319 if ((method.CompareTo("CL1true")==0) && (fCentralityCL1true >=a && fCentralityCL1true < b)) return kTRUE;
320 if ((method.CompareTo("CNDtrue")==0) && (fCentralityCNDtrue >=a && fCentralityCNDtrue < b)) return kTRUE;
321 if ((method.CompareTo("ZNAtrue")==0) && (fCentralityZNAtrue >=a && fCentralityZNAtrue < b)) return kTRUE;
f9a774f9 322 if ((method.CompareTo("ZNCtrue")==0) && (fCentralityZNCtrue >=a && fCentralityZNCtrue < b)) return kTRUE;
a540a9d3 323 else return kFALSE;
324 } else {
067ce65d 325 return kFALSE;
a540a9d3 326 }
327}
328
aa7e002c 329Float_t AliCentrality::GetCentralityPercentileUnchecked(const char *x) const
d15bf53f 330{
aa7e002c 331// Return the centrality percentile
d15bf53f 332 TString method = x;
333 if(method.CompareTo("V0M")==0) return fCentralityV0M;
13e74ee2 334 if(method.CompareTo("V0A")==0) return fCentralityV0A;
335 if(method.CompareTo("V0C")==0) return fCentralityV0C;
f9a774f9 336 if(method.CompareTo("V0MEq")==0) return fCentralityV0MEq;
337 if(method.CompareTo("V0AEq")==0) return fCentralityV0AEq;
338 if(method.CompareTo("V0CEq")==0) return fCentralityV0CEq;
d15bf53f 339 if(method.CompareTo("FMD")==0) return fCentralityFMD;
340 if(method.CompareTo("TRK")==0) return fCentralityTRK;
341 if(method.CompareTo("TKL")==0) return fCentralityTKL;
342 if(method.CompareTo("CL0")==0) return fCentralityCL0;
be0d4e9b 343 if(method.CompareTo("CL1")==0) return fCentralityCL1;
13e74ee2 344 if(method.CompareTo("CND")==0) return fCentralityCND;
99029fba 345 if(method.CompareTo("ZNA")==0) return fCentralityZNA;
f9a774f9 346 if(method.CompareTo("ZNC")==0) return fCentralityZNC;
39a3e400 347 if(method.CompareTo("NPA")==0) return fCentralityNPA;
d15bf53f 348 if(method.CompareTo("V0MvsFMD")==0) return fCentralityV0MvsFMD;
349 if(method.CompareTo("TKLvsV0M")==0) return fCentralityTKLvsV0M;
fe92f402 350 if(method.CompareTo("ZEMvsZDC")==0) return fCentralityZEMvsZDC;
39a3e400 351 if(method.CompareTo("V0Mtrue")==0) return fCentralityV0Mtrue;
352 if(method.CompareTo("V0Atrue")==0) return fCentralityV0Atrue;
353 if(method.CompareTo("V0Ctrue")==0) return fCentralityV0Ctrue;
f9a774f9 354 if(method.CompareTo("V0MEqtrue")==0) return fCentralityV0MEqtrue;
355 if(method.CompareTo("V0AEqtrue")==0) return fCentralityV0AEqtrue;
356 if(method.CompareTo("V0CEqtrue")==0) return fCentralityV0CEqtrue;
39a3e400 357 if(method.CompareTo("FMDtrue")==0) return fCentralityFMDtrue;
358 if(method.CompareTo("TRKtrue")==0) return fCentralityTRKtrue;
359 if(method.CompareTo("TKLtrue")==0) return fCentralityTKLtrue;
360 if(method.CompareTo("CL0true")==0) return fCentralityCL0true;
361 if(method.CompareTo("CL1true")==0) return fCentralityCL1true;
362 if(method.CompareTo("CNDtrue")==0) return fCentralityCNDtrue;
363 if(method.CompareTo("ZNAtrue")==0) return fCentralityZNAtrue;
f9a774f9 364 if(method.CompareTo("ZNCtrue")==0) return fCentralityZNCtrue;
d15bf53f 365 return -1;
366}
367
aa7e002c 368Int_t AliCentrality::GetCentralityClass10Unchecked(const char *x) const
d15bf53f 369{
aa7e002c 370// Return the centrality class
d15bf53f 371 TString method = x;
f9a774f9 372 if(method.CompareTo("V0M")==0) return (Int_t) (fCentralityV0M / 10.0);
373 if(method.CompareTo("V0A")==0) return (Int_t) (fCentralityV0A / 10.0);
374 if(method.CompareTo("V0C")==0) return (Int_t) (fCentralityV0C / 10.0);
375 if(method.CompareTo("V0MEq")==0) return (Int_t) (fCentralityV0MEq / 10.0);
376 if(method.CompareTo("V0AEq")==0) return (Int_t) (fCentralityV0AEq / 10.0);
377 if(method.CompareTo("V0CEq")==0) return (Int_t) (fCentralityV0CEq / 10.0);
378 if(method.CompareTo("FMD")==0) return (Int_t) (fCentralityFMD / 10.0);
379 if(method.CompareTo("TRK")==0) return (Int_t) (fCentralityTRK / 10.0);
380 if(method.CompareTo("TKL")==0) return (Int_t) (fCentralityTKL / 10.0);
381 if(method.CompareTo("CL0")==0) return (Int_t) (fCentralityCL0 / 10.0);
382 if(method.CompareTo("CL1")==0) return (Int_t) (fCentralityCL1 / 10.0);
383 if(method.CompareTo("CND")==0) return (Int_t) (fCentralityCND / 10.0);
384 if(method.CompareTo("ZNA")==0) return (Int_t) (fCentralityZNA / 10.0);
385 if(method.CompareTo("ZNC")==0) return (Int_t) (fCentralityZNC / 10.0);
386 if(method.CompareTo("NPA")==0) return (Int_t) (fCentralityNPA / 10.0);
387 if(method.CompareTo("V0MvsFMD")==0) return (Int_t) (fCentralityV0MvsFMD / 10.0);
388 if(method.CompareTo("TKLvsV0M")==0) return (Int_t) (fCentralityTKLvsV0M / 10.0);
389 if(method.CompareTo("ZEMvsZDC")==0) return (Int_t) (fCentralityZEMvsZDC / 10.0);
390 if(method.CompareTo("V0Mtrue")==0) return (Int_t) (fCentralityV0Mtrue / 10.0);
391 if(method.CompareTo("V0Atrue")==0) return (Int_t) (fCentralityV0Atrue / 10.0);
392 if(method.CompareTo("V0Ctrue")==0) return (Int_t) (fCentralityV0Ctrue / 10.0);
393 if(method.CompareTo("V0MEqtrue")==0)return (Int_t) (fCentralityV0MEqtrue / 10.0);
394 if(method.CompareTo("V0AEqtrue")==0)return (Int_t) (fCentralityV0AEqtrue / 10.0);
395 if(method.CompareTo("V0CEqtrue")==0)return (Int_t) (fCentralityV0CEqtrue / 10.0);
396 if(method.CompareTo("FMDtrue")==0) return (Int_t) (fCentralityFMDtrue / 10.0);
397 if(method.CompareTo("TRKtrue")==0) return (Int_t) (fCentralityTRKtrue / 10.0);
398 if(method.CompareTo("TKLtrue")==0) return (Int_t) (fCentralityTKLtrue / 10.0);
399 if(method.CompareTo("CL0true")==0) return (Int_t) (fCentralityCL0true / 10.0);
400 if(method.CompareTo("CL1true")==0) return (Int_t) (fCentralityCL1true / 10.0);
401 if(method.CompareTo("CNDtrue")==0) return (Int_t) (fCentralityCNDtrue / 10.0);
402 if(method.CompareTo("ZNAtrue")==0) return (Int_t) (fCentralityZNAtrue / 10.0);
403 if(method.CompareTo("ZNCtrue")==0) return (Int_t) (fCentralityZNCtrue / 10.0);
d15bf53f 404 return -1;
405}
406
aa7e002c 407Int_t AliCentrality::GetCentralityClass5Unchecked(const char *x) const
d15bf53f 408{
aa7e002c 409// Return the centrality class
a540a9d3 410 TString method = x;
f9a774f9 411 if(method.CompareTo("V0M")==0) return (Int_t) (fCentralityV0M / 5.0);
412 if(method.CompareTo("V0A")==0) return (Int_t) (fCentralityV0A / 5.0);
413 if(method.CompareTo("V0C")==0) return (Int_t) (fCentralityV0C / 5.0);
414 if(method.CompareTo("V0MEq")==0) return (Int_t) (fCentralityV0MEq / 5.0);
415 if(method.CompareTo("V0AEq")==0) return (Int_t) (fCentralityV0AEq / 5.0);
416 if(method.CompareTo("V0CEq")==0) return (Int_t) (fCentralityV0CEq / 5.0);
417 if(method.CompareTo("FMD")==0) return (Int_t) (fCentralityFMD / 5.0);
418 if(method.CompareTo("TRK")==0) return (Int_t) (fCentralityTRK / 5.0);
419 if(method.CompareTo("TKL")==0) return (Int_t) (fCentralityTKL / 5.0);
420 if(method.CompareTo("CL0")==0) return (Int_t) (fCentralityCL0 / 5.0);
421 if(method.CompareTo("CL1")==0) return (Int_t) (fCentralityCL1 / 5.0);
422 if(method.CompareTo("CND")==0) return (Int_t) (fCentralityCND / 5.0);
423 if(method.CompareTo("ZNA")==0) return (Int_t) (fCentralityZNA / 5.0);
424 if(method.CompareTo("ZNC")==0) return (Int_t) (fCentralityZNC / 5.0);
425 if(method.CompareTo("NPA")==0) return (Int_t) (fCentralityNPA / 5.0);
426 if(method.CompareTo("V0MvsFMD")==0) return (Int_t) (fCentralityV0MvsFMD / 5.0);
427 if(method.CompareTo("TKLvsV0M")==0) return (Int_t) (fCentralityTKLvsV0M / 5.0);
428 if(method.CompareTo("ZEMvsZDC")==0) return (Int_t) (fCentralityZEMvsZDC / 5.0);
429 if(method.CompareTo("V0Mtrue")==0) return (Int_t) (fCentralityV0Mtrue / 5.0);
430 if(method.CompareTo("V0Atrue")==0) return (Int_t) (fCentralityV0Atrue / 5.0);
431 if(method.CompareTo("V0Ctrue")==0) return (Int_t) (fCentralityV0Ctrue / 5.0);
432 if(method.CompareTo("V0MEqtrue")==0)return (Int_t) (fCentralityV0MEqtrue / 5.0);
433 if(method.CompareTo("V0AEqtrue")==0)return (Int_t) (fCentralityV0AEqtrue / 5.0);
434 if(method.CompareTo("V0CEqtrue")==0)return (Int_t) (fCentralityV0CEqtrue / 5.0);
435 if(method.CompareTo("FMDtrue")==0) return (Int_t) (fCentralityFMDtrue / 5.0);
436 if(method.CompareTo("TRKtrue")==0) return (Int_t) (fCentralityTRKtrue / 5.0);
437 if(method.CompareTo("TKLtrue")==0) return (Int_t) (fCentralityTKLtrue / 5.0);
438 if(method.CompareTo("CL0true")==0) return (Int_t) (fCentralityCL0true / 5.0);
439 if(method.CompareTo("CL1true")==0) return (Int_t) (fCentralityCL1true / 5.0);
440 if(method.CompareTo("CNDtrue")==0) return (Int_t) (fCentralityCNDtrue / 5.0);
441 if(method.CompareTo("ZNAtrue")==0) return (Int_t) (fCentralityZNAtrue / 5.0);
442 if(method.CompareTo("ZNCtrue")==0) return (Int_t) (fCentralityZNCtrue / 5.0);
d15bf53f 443 return -1;
a540a9d3 444}
d15bf53f 445
aa7e002c 446Bool_t AliCentrality::IsEventInCentralityClassUnchecked(Float_t a, Float_t b, const char *x) const
d15bf53f 447{
aa7e002c 448// True if event inside given centrality class
d15bf53f 449 TString method = x;
f9a774f9 450 if ((method.CompareTo("V0M")==0) && (fCentralityV0M >=a && fCentralityV0M < b)) return kTRUE;
451 if ((method.CompareTo("V0A")==0) && (fCentralityV0A >=a && fCentralityV0A < b)) return kTRUE;
452 if ((method.CompareTo("V0C")==0) && (fCentralityV0C >=a && fCentralityV0C < b)) return kTRUE;
453 if ((method.CompareTo("V0MEq")==0) && (fCentralityV0MEq >=a && fCentralityV0MEq < b)) return kTRUE;
454 if ((method.CompareTo("V0AEq")==0) && (fCentralityV0AEq >=a && fCentralityV0AEq < b)) return kTRUE;
455 if ((method.CompareTo("V0CEq")==0) && (fCentralityV0CEq >=a && fCentralityV0CEq < b)) return kTRUE;
456 if ((method.CompareTo("FMD")==0) && (fCentralityFMD >=a && fCentralityFMD < b)) return kTRUE;
457 if ((method.CompareTo("TRK")==0) && (fCentralityTRK >=a && fCentralityTRK < b)) return kTRUE;
458 if ((method.CompareTo("TKL")==0) && (fCentralityTKL >=a && fCentralityTKL < b)) return kTRUE;
459 if ((method.CompareTo("CL0")==0) && (fCentralityCL0 >=a && fCentralityCL0 < b)) return kTRUE;
460 if ((method.CompareTo("CL1")==0) && (fCentralityCL1 >=a && fCentralityCL1 < b)) return kTRUE;
461 if ((method.CompareTo("CND")==0) && (fCentralityCND >=a && fCentralityCND < b)) return kTRUE;
462 if ((method.CompareTo("ZNA")==0) && (fCentralityZNA >=a && fCentralityZNA < b)) return kTRUE;
463 if ((method.CompareTo("ZNC")==0) && (fCentralityZNC >=a && fCentralityZNC < b)) return kTRUE;
464 if ((method.CompareTo("NPA")==0) && (fCentralityNPA >=a && fCentralityNPA < b)) return kTRUE;
465 if ((method.CompareTo("V0MvsFMD")==0) && (fCentralityV0MvsFMD >=a && fCentralityV0MvsFMD < b)) return kTRUE;
466 if ((method.CompareTo("TKLvsV0M")==0) && (fCentralityTKLvsV0M >=a && fCentralityTKLvsV0M < b)) return kTRUE;
467 if ((method.CompareTo("ZEMvsZDC")==0) && (fCentralityZEMvsZDC >=a && fCentralityZEMvsZDC < b)) return kTRUE;
468 if ((method.CompareTo("V0Mtrue")==0) && (fCentralityV0Mtrue >=a && fCentralityV0Mtrue < b)) return kTRUE;
469 if ((method.CompareTo("V0Atrue")==0) && (fCentralityV0Atrue >=a && fCentralityV0Atrue < b)) return kTRUE;
470 if ((method.CompareTo("V0Ctrue")==0) && (fCentralityV0Ctrue >=a && fCentralityV0Ctrue < b)) return kTRUE;
471 if ((method.CompareTo("V0MEqtrue")==0) && (fCentralityV0MEqtrue >=a && fCentralityV0MEqtrue < b)) return kTRUE;
472 if ((method.CompareTo("V0AEqtrue")==0) && (fCentralityV0AEqtrue >=a && fCentralityV0AEqtrue < b)) return kTRUE;
473 if ((method.CompareTo("V0CEqtrue")==0) && (fCentralityV0CEqtrue >=a && fCentralityV0CEqtrue < b)) return kTRUE;
474 if ((method.CompareTo("FMDtrue")==0) && (fCentralityFMDtrue >=a && fCentralityFMDtrue < b)) return kTRUE;
475 if ((method.CompareTo("TRKtrue")==0) && (fCentralityTRKtrue >=a && fCentralityTRKtrue < b)) return kTRUE;
476 if ((method.CompareTo("TKLtrue")==0) && (fCentralityTKLtrue >=a && fCentralityTKLtrue < b)) return kTRUE;
477 if ((method.CompareTo("CL0true")==0) && (fCentralityCL0true >=a && fCentralityCL0true < b)) return kTRUE;
478 if ((method.CompareTo("CL1true")==0) && (fCentralityCL1true >=a && fCentralityCL1true < b)) return kTRUE;
479 if ((method.CompareTo("CNDtrue")==0) && (fCentralityCNDtrue >=a && fCentralityCNDtrue < b)) return kTRUE;
480 if ((method.CompareTo("ZNAtrue")==0) && (fCentralityZNAtrue >=a && fCentralityZNAtrue < b)) return kTRUE;
481 if ((method.CompareTo("ZNCtrue")==0) && (fCentralityZNCtrue >=a && fCentralityZNCtrue < b)) return kTRUE;
d15bf53f 482 else return kFALSE;
a540a9d3 483}
d15bf53f 484
93d96ff5 485void AliCentrality::Reset()
486{
487// Reset.
488
489 fQuality = 999;
490 fCentralityV0M = 0;
13e74ee2 491 fCentralityV0A = 0;
492 fCentralityV0C = 0;
f9a774f9 493 fCentralityV0MEq = 0;
494 fCentralityV0AEq = 0;
495 fCentralityV0CEq = 0;
93d96ff5 496 fCentralityFMD = 0;
497 fCentralityTRK = 0;
498 fCentralityTKL = 0;
499 fCentralityCL0 = 0;
500 fCentralityCL1 = 0;
13e74ee2 501 fCentralityCND = 0;
99029fba 502 fCentralityZNA = 0;
f9a774f9 503 fCentralityZNC = 0;
39a3e400 504 fCentralityNPA = 0;
93d96ff5 505 fCentralityV0MvsFMD = 0;
506 fCentralityTKLvsV0M = 0;
507 fCentralityZEMvsZDC = 0;
39a3e400 508 fCentralityV0Mtrue = 0;
509 fCentralityV0Atrue = 0;
510 fCentralityV0Ctrue = 0;
f9a774f9 511 fCentralityV0MEqtrue = 0;
512 fCentralityV0AEqtrue = 0;
513 fCentralityV0CEqtrue = 0;
39a3e400 514 fCentralityFMDtrue = 0;
515 fCentralityTRKtrue = 0;
516 fCentralityTKLtrue = 0;
517 fCentralityCL0true = 0;
518 fCentralityCL1true = 0;
519 fCentralityCNDtrue = 0;
520 fCentralityZNAtrue = 0;
f9a774f9 521 fCentralityZNCtrue = 0;
93d96ff5 522}