1 /**************************************************************************
2 * Author: Panos Christakoglou. *
3 * Contributors are mentioned in the code where appropriate. *
5 * Permission to use, copy, modify and distribute this software and its *
6 * documentation strictly for non-commercial purposes is hereby granted *
7 * without fee, provided that the above copyright notice appears in all *
8 * copies and that both the copyright notice and this permission notice *
9 * appear in the supporting documentation. The authors make no claims *
10 * about the suitability of this software for any purpose. It is *
11 * provided "as is" without express or implied warranty. *
12 **************************************************************************/
16 //-----------------------------------------------------------------
17 // AliEventTagCuts class
18 // This is the class to deal with the event tag level cuts
19 // Origin: Panos Christakoglou, UOA-CERN, Panos.Christakoglou@cern.ch
20 //-----------------------------------------------------------------
25 #include "AliEventTag.h"
26 #include "AliEventTagCuts.h"
28 ClassImp(AliEventTagCuts)
31 //___________________________________________________________________________
32 AliEventTagCuts::AliEventTagCuts() :
38 fVxMin(-1000.0), fVxMax(1000.0),
40 fVyMin(-1000.0), fVyMax(1000.0),
42 fVzMin(-1000.0), fVzMax(1000.0),
44 fParticipantsMin(-1), fParticipantMax(10000),
45 fParticipantsFlag(kFALSE),
46 fImpactParamMin(-1.0), fImpactParamMax(1000.0),
47 fImpactParamFlag(kFALSE),
48 fPrimaryVertexFlag(1),
51 fPrimaryVertexZErrorMin(-10000.), fPrimaryVertexZErrorMax(10000.),
52 fPVzErrorFlag(kFALSE),
54 fTriggerMaskFlag(kFALSE),
56 fTriggerClusterFlag(kFALSE),
58 fZDCNeutron1EnergyMin(-1.0), fZDCNeutron1EnergyMax(100000.0),
59 fZDCNeutron1EnergyFlag(kFALSE),
60 fZDCProton1EnergyMin(-1.0), fZDCProton1EnergyMax(100000.0),
61 fZDCProton1EnergyFlag(kFALSE),
62 fZDCNeutron2EnergyMin(-1.0), fZDCNeutron2EnergyMax(100000.0),
63 fZDCNeutron2EnergyFlag(kFALSE),
64 fZDCProton2EnergyMin(-1.0), fZDCProton2EnergyMax(100000.0),
65 fZDCProton2EnergyFlag(kFALSE),
66 fZDCEMEnergyMin(-1.0), fZDCEMEnergyMax(100000.0),
67 fZDCEMEnergyFlag(kFALSE),
68 fT0VertexZMin(-10000.0), fT0VertexZMax(10000.0),
69 fT0VertexZFlag(kFALSE),
70 fMultMin(0), fMultMax(100000),
72 fMultPosMin(-1), fMultPosMax(100000),
74 fMultNegMin(-1), fMultNegMax(100000),
76 fMultNeutrMin(-1), fMultNeutrMax(100000),
77 fMultNeutrFlag(kFALSE),
78 fV0sMin(-1), fV0sMax(1000000),
80 fCascadesMin(-1), fCascadesMax(100000),
81 fCascadesFlag(kFALSE),
82 fkinksMin(-1), fkinksMax(1000000),
85 fPMDTracksMin(-1), fPMDTracksMax(100000),
86 fPMDTracksFlag(kFALSE),
87 fFMDTracksMin(-1), fFMDTracksMax(100000),
88 fFMDTracksFlag(kFALSE),
89 fPHOSClustersMin(-1), fPHOSClustersMax(100000),
90 fPHOSClustersFlag(kFALSE),
91 fEMCALClustersMin(-1), fEMCALClustersMax(100000),
92 fEMCALClustersFlag(kFALSE),
93 fJetCandidatesMin(-1), fJetCandidatesMax(100000),
94 fJetCandidatesFlag(kFALSE),
97 fMaxJetEnergyFlag(kFALSE),
98 fNHardPhotonsCandidatesMin(-1), fNHardPhotonsCandidatesMax(100000),
99 fNHardPhotonsCandidatesFlag(kFALSE),
100 fMaxNeutralEnergy(-1.0),
101 fMaxNeutralFlag(kFALSE),
102 fChargedAbove1GeVMin(-1), fChargedAbove1GeVMax(100000),
103 fChargedAbove1GeVFlag(kFALSE),
104 fChargedAbove3GeVMin(-1), fChargedAbove3GeVMax(100000),
105 fChargedAbove3GeVFlag(kFALSE),
106 fChargedAbove10GeVMin(-1), fChargedAbove10GeVMax(100000),
107 fChargedAbove10GeVFlag(kFALSE),
108 fMuonsAbove1GeVMin(-1), fMuonsAbove1GeVMax(100000),
109 fMuonsAbove1GeVFlag(kFALSE),
110 fMuonsAbove3GeVMin(-1), fMuonsAbove3GeVMax(100000),
111 fMuonsAbove3GeVFlag(kFALSE),
112 fMuonsAbove10GeVMin(-1), fMuonsAbove10GeVMax(100000),
113 fMuonsAbove10GeVFlag(kFALSE),
114 fElectronsAbove1GeVMin(-1), fElectronsAbove1GeVMax(100000),
115 fElectronsAbove1GeVFlag(kFALSE),
116 fElectronsAbove3GeVMin(-1), fElectronsAbove3GeVMax(100000),
117 fElectronsAbove3GeVFlag(kFALSE),
118 fElectronsAbove10GeVMin(-1), fElectronsAbove10GeVMax(100000),
119 fElectronsAbove10GeVFlag(kFALSE),
120 fElectronsMin(-1), fElectronsMax(100000),
121 fElectronsFlag(kFALSE),
122 fMuonsMin(-1), fMuonsMax(100000),
124 fPionsMin(-1), fPionsMax(100000),
126 fKaonsMin(-1), fKaonsMax(100000),
128 fProtonsMin(-1), fProtonsMax(100000),
129 fProtonsFlag(kFALSE),
130 fLambdasMin(-1), fLambdasMax(100000),
131 fLambdasFlag(kFALSE),
132 fPhotonsMin(-1), fPhotonsMax(100000),
134 fPi0sMin(-1), fPi0sMax(100000),
136 fNeutronsMin(-1), fNeutronsMax(100000),
137 fNeutronsFlag(kFALSE),
138 fKaon0sMin(-1), fKaon0sMax(100000),
140 fTotalPMin(-1.0), fTotalPMax(1000000.0),
142 fMeanPtMin(-1.0), fMeanPtMax(100000.0),
146 fTotalNeutralPMin(-1.0), fTotalNeutralPMax(1000000.0),
147 fTotalNeutralPFlag(kFALSE),
148 fMeanNeutralPtMin(-1.0), fMeanNeutralPtMax(1000000.0),
149 fMeanNeutralPtFlag(kFALSE),
151 fMaxNeutralPtFlag(kFALSE),
152 fEventPlaneAngleMin(-10000000.0), fEventPlaneAngleMax(10000000.0),
153 fEventPlaneAngleFlag(kFALSE),
154 fHBTRadiiMin(-1.0), fHBTRadiiMax(100000.0),
155 fHBTRadiiFlag(kFALSE)
157 //Default constructor which calls the Reset method.
161 //___________________________________________________________________________
162 AliEventTagCuts::~AliEventTagCuts() {
166 //___________________________________________________________________________
167 void AliEventTagCuts::Reset() {
168 //Sets dummy values to every private member.
172 fParticipantsFlag = kFALSE;
173 fImpactParamFlag = kFALSE;
176 fPVzErrorFlag = kFALSE;
177 fTriggerMaskFlag = kFALSE;
178 fTriggerClusterFlag = kFALSE;
180 fZDCNeutron1EnergyFlag = kFALSE;
181 fZDCProton1EnergyFlag = kFALSE;
182 fZDCNeutron2EnergyFlag = kFALSE;
183 fZDCProton2EnergyFlag = kFALSE;
184 fZDCEMEnergyFlag = kFALSE;
185 fT0VertexZFlag = kFALSE;
187 fMultPosFlag = kFALSE;
188 fMultNegFlag = kFALSE;
189 fMultNeutrFlag = kFALSE;
191 fCascadesFlag = kFALSE;
194 fPMDTracksFlag = kFALSE;
195 fFMDTracksFlag = kFALSE;
196 fPHOSClustersFlag = kFALSE;
197 fEMCALClustersFlag = kFALSE;
198 fJetCandidatesFlag = kFALSE;
200 fMaxJetEnergyFlag = kFALSE;
201 fNHardPhotonsCandidatesFlag = kFALSE;
202 fMaxNeutralFlag = kFALSE;
203 fChargedAbove1GeVFlag = kFALSE;
204 fChargedAbove3GeVFlag = kFALSE;
205 fChargedAbove10GeVFlag = kFALSE;
206 fMuonsAbove1GeVFlag = kFALSE;
207 fMuonsAbove3GeVFlag = kFALSE;
208 fMuonsAbove10GeVFlag = kFALSE;
209 fElectronsAbove1GeVFlag = kFALSE;
210 fElectronsAbove3GeVFlag = kFALSE;
211 fElectronsAbove10GeVFlag = kFALSE;
212 fElectronsFlag = kFALSE;
216 fProtonsFlag = kFALSE;
217 fLambdasFlag = kFALSE;
218 fPhotonFlag = kFALSE;
220 fNeutronsFlag = kFALSE;
221 fKaon0sFlag = kFALSE;
222 fTotalPFlag = kFALSE;
223 fMeanPtFlag = kFALSE;
225 fTotalNeutralPFlag = kFALSE;
226 fMeanNeutralPtFlag = kFALSE;
227 fMaxNeutralPtFlag = kFALSE;
228 fEventPlaneAngleFlag = kFALSE;
229 fHBTRadiiFlag = kFALSE;
231 fVxMin = -1000.0; fVxMax = 1000.0;
232 fVyMin = -1000.0; fVyMax = 1000.0;
233 fVzMin = -1000.0; fVzMax = 1000.0;
234 fParticipantsMin = -1; fParticipantMax = 10000;
235 fImpactParamMin = -1.0; fImpactParamMax = 1000.0;
236 fPrimaryVertexFlag = 1;
238 fPrimaryVertexZErrorMin = -10000.; fPrimaryVertexZErrorMax = 10000.;
242 fZDCNeutron1EnergyMin = -1.0; fZDCNeutron1EnergyMax = 100000.0;
243 fZDCProton1EnergyMin = -1.0; fZDCProton1EnergyMax = 100000.0;
244 fZDCNeutron2EnergyMin = -1.0; fZDCNeutron2EnergyMax = 100000.0;
245 fZDCProton2EnergyMin = -1.0; fZDCProton2EnergyMax = 100000.0;
246 fZDCEMEnergyMin = -1.0; fZDCEMEnergyMax = 100000.0;
247 fT0VertexZMin = -10000.0; fT0VertexZMax = 10000.0;
248 fMultMin = 0; fMultMax = 100000;
249 fMultPosMin = -1; fMultPosMax = 100000;
250 fMultNegMin = -1; fMultNegMax = 100000;
251 fMultNeutrMin = -1; fMultNeutrMax = 100000;
252 fV0sMin = -1; fV0sMax = 1000000;
253 fCascadesMin = -1; fCascadesMax = 100000;
254 fkinksMin = -1; fkinksMax = 1000000;
256 fPMDTracksMin = -1, fPMDTracksMax = 100000;
257 fFMDTracksMin = -1, fFMDTracksMax = 100000;
258 fPHOSClustersMin = -1, fPHOSClustersMax = 100000;
259 fEMCALClustersMin = -1, fEMCALClustersMax = 100000;
260 fJetCandidatesMin = -1, fJetCandidatesMax = 100000;
262 fMaxJetEnergy = -1.0;
263 fNHardPhotonsCandidatesMin = -1; fNHardPhotonsCandidatesMax = 100000;
264 fMaxNeutralEnergy = -1.0;
265 fChargedAbove1GeVMin = -1; fChargedAbove1GeVMax = 100000;
266 fChargedAbove3GeVMin = -1; fChargedAbove3GeVMax = 100000;
267 fChargedAbove10GeVMin = -1; fChargedAbove10GeVMax = 100000;
268 fMuonsAbove1GeVMin = -1; fMuonsAbove1GeVMax = 100000;
269 fMuonsAbove3GeVMin = -1; fMuonsAbove3GeVMax = 100000;
270 fMuonsAbove10GeVMin = -1; fMuonsAbove10GeVMax = 100000;
271 fElectronsAbove1GeVMin = -1; fElectronsAbove1GeVMax = 100000;
272 fElectronsAbove3GeVMin = -1; fElectronsAbove3GeVMax = 100000;
273 fElectronsAbove10GeVMin = -1; fElectronsAbove10GeVMax = 100000;
274 fElectronsMin = -1; fElectronsMax = 100000;
275 fMuonsMin = -1; fMuonsMax = 100000;
276 fPionsMin = -1; fPionsMax = 100000;
277 fKaonsMin = -1; fKaonsMax = 100000;
278 fProtonsMin = -1; fProtonsMax = 100000;
279 fLambdasMin = -1; fLambdasMax = 100000;
280 fPhotonsMin = -1; fPhotonsMax = 100000;
281 fPi0sMin = -1; fPi0sMax = 100000;
282 fNeutronsMin = -1; fNeutronsMax = 100000;
283 fKaon0sMin = -1; fKaon0sMax = 100000;
284 fTotalPMin = -1.0; fTotalPMax = 1000000.0;
285 fMeanPtMin = -1.0; fMeanPtMax = 100000.0;
286 fMaxPt = -1.0; fTotalNeutralPMin = -1.0;
287 fTotalNeutralPMax = 1000000.0;
288 fMeanNeutralPtMin = -1.0; fMeanNeutralPtMax = 1000000.0;
289 fMaxNeutralPt = -1.0;
290 fEventPlaneAngleMin = -10000000.0; fEventPlaneAngleMax = 10000000.0;
291 fHBTRadiiMin = -1.0; fHBTRadiiMax = 100000.0;
294 //___________________________________________________________________________
295 void AliEventTagCuts::SetPrimaryVertexXRange(Float_t r1, Float_t r2) {
296 //Sets the primary vertex x range
297 //and the corresponding flag to kTRUE if the cut is used.
303 //___________________________________________________________________________
304 void AliEventTagCuts::SetPrimaryVertexYRange(Float_t r1, Float_t r2) {
305 //Sets the primary vertex y range
306 //and the corresponding flag to kTRUE if the cut is used.
312 //___________________________________________________________________________
313 void AliEventTagCuts::SetPrimaryVertexZRange(Float_t r1, Float_t r2) {
314 //Sets the primary vertex z range
315 //and the corresponding flag to kTRUE if the cut is used.
321 //___________________________________________________________________________
322 void AliEventTagCuts::SetMultiplicityRange(Int_t n1, Int_t n2) {
323 //Sets the primary multiplicity range
324 //and the corresponding flag to kTRUE if the cut is used.
330 //___________________________________________________________________________
331 void AliEventTagCuts::SetParticipantsRange(Int_t i1, Int_t i2) {
332 //Sets the number of participants range
333 //and the corresponding flag to kTRUE if the cut is used.
334 fParticipantsMin = i1;
335 fParticipantMax = i2;
336 fParticipantsFlag = kTRUE;
339 //___________________________________________________________________________
340 void AliEventTagCuts::SetImpactParamRange(Float_t r1, Float_t r2) {
341 //Sets the impact parameter range
342 //and the corresponding flag to kTRUE if the cut is used.
343 fImpactParamMin = r1;
344 fImpactParamMax = r2;
345 fImpactParamFlag = kTRUE;
349 //___________________________________________________________________________
350 void AliEventTagCuts::SetPrimaryVertexFlag(Int_t i) {
351 //Sets the primary vertex flag cut
352 //and the corresponding flag to kTRUE if the cut is used.
353 fPrimaryVertexFlag = i;
357 //___________________________________________________________________________
358 void AliEventTagCuts::SetZDCNeutr1Range(Float_t r1, Float_t r2) {
359 //Sets the ZDC's neutron energy range
360 //and the corresponding flag to kTRUE if the cut is used.
361 fZDCNeutron1EnergyMin = r1;
362 fZDCNeutron1EnergyMax = r2;
363 fZDCNeutron1EnergyFlag = kTRUE;
366 //___________________________________________________________________________
367 void AliEventTagCuts::SetZDCProt1Range(Float_t r1, Float_t r2) {
368 //Sets the ZDC's proton energy range
369 //and the corresponding flag to kTRUE if the cut is used.
370 fZDCProton1EnergyMin = r1;
371 fZDCProton1EnergyMax = r2;
372 fZDCProton1EnergyFlag = kTRUE;
374 //___________________________________________________________________________
375 void AliEventTagCuts::SetZDCNeutr2Range(Float_t r1, Float_t r2) {
376 //Sets the ZDC's neutron energy range
377 //and the corresponding flag to kTRUE if the cut is used.
378 fZDCNeutron2EnergyMin = r1;
379 fZDCNeutron2EnergyMax = r2;
380 fZDCNeutron2EnergyFlag = kTRUE;
382 //___________________________________________________________________________
383 void AliEventTagCuts::SetZDCProt2Range(Float_t r1, Float_t r2) {
384 //Sets the ZDC's proton energy range
385 //and the corresponding flag to kTRUE if the cut is used.
386 fZDCProton2EnergyMin = r1;
387 fZDCProton2EnergyMax = r2;
388 fZDCProton2EnergyFlag = kTRUE;
390 //___________________________________________________________________________
391 void AliEventTagCuts::SetZDCEMRange(Float_t r1, Float_t r2) {
392 //Sets the ZDC's e/m energy range
393 //and the corresponding flag to kTRUE if the cut is used.
394 fZDCEMEnergyMin = r1;
395 fZDCEMEnergyMax = r2;
396 fZDCEMEnergyFlag = kTRUE;
399 //___________________________________________________________________________
400 void AliEventTagCuts::SetT0VertexZRange(Float_t r1, Float_t r2) {
401 //Sets the T0's Vz range
402 //and the corresponding flag to kTRUE if the cut is used.
405 fT0VertexZFlag = kTRUE;
408 //___________________________________________________________________________
409 void AliEventTagCuts::SetPosMultiplicityRange(Int_t n1, Int_t n2) {
410 //Sets the positive multiplicity range
411 //and the corresponding flag to kTRUE if the cut is used.
414 fMultPosFlag = kTRUE;
418 //___________________________________________________________________________
419 void AliEventTagCuts::SetNegMultiplicityRange(Int_t n1, Int_t n2) {
420 //Sets the negative multiplicity range
421 //and the corresponding flag to kTRUE if the cut is used.
424 fMultNegFlag = kTRUE;
428 //___________________________________________________________________________
429 void AliEventTagCuts::SetNeutrMultiplicityRange(Int_t n1, Int_t n2) {
430 //Sets the neutral particle multiplicity range
431 //and the corresponding flag to kTRUE if the cut is used.
434 fMultNeutrFlag = kTRUE;
437 //___________________________________________________________________________
438 void AliEventTagCuts::SetV0sRange(Int_t n1, Int_t n2) {
439 //Sets the v0s multiplicity range
440 //and the corresponding flag to kTRUE if the cut is used.
446 //___________________________________________________________________________
447 void AliEventTagCuts::SetCascadesRange(Int_t n1, Int_t n2) {
448 //Sets the cascades multiplicity range
449 //and the corresponding flag to kTRUE if the cut is used.
452 fCascadesFlag = kTRUE;
455 //___________________________________________________________________________
456 void AliEventTagCuts::SetKinksRange(Int_t n1, Int_t n2) {
457 //Sets the kinks multipliicity range
458 //and the corresponding flag to kTRUE if the cut is used.
464 //___________________________________________________________________________
465 void AliEventTagCuts::SetMaxJetEnergy(Float_t r1) {
466 //Sets the lower limit of the maximum jet energy
467 //and the corresponding flag to kTRUE if the cut is used.
469 fMaxJetEnergyFlag = kTRUE;
471 //___________________________________________________________________________
472 void AliEventTagCuts::SetMaxNeutralEnergy(Float_t r1) {
473 //Sets the lower limit of the maximum neutral jet energy
474 //and the corresponding flag to kTRUE if the cut is used.
475 fMaxNeutralEnergy = r1;
476 fMaxNeutralFlag = kTRUE;
478 //___________________________________________________________________________
479 void AliEventTagCuts::SetHardPhotonsRange(Int_t i1, Int_t i2) {
480 //Sets the hard photons multiplicity range
481 //and the corresponding flag to kTRUE if the cut is used.
482 fNHardPhotonsCandidatesMin = i1;
483 fNHardPhotonsCandidatesMax = i2;
484 fNHardPhotonsCandidatesFlag = kTRUE;
487 //___________________________________________________________________________
488 void AliEventTagCuts::SetNChargedAbove1GeVRange(Int_t i1, Int_t i2) {
489 //Sets the number of charged above 1GeV range
490 //and the corresponding flag to kTRUE if the cut is used.
491 fChargedAbove1GeVMin = i1;
492 fChargedAbove1GeVMax = i2;
493 fChargedAbove1GeVFlag = kTRUE;
496 //___________________________________________________________________________
497 void AliEventTagCuts::SetNChargedAbove3GeVRange(Int_t i1, Int_t i2) {
498 //Sets the number of charged above 3GeV range
499 //and the corresponding flag to kTRUE if the cut is used.
500 fChargedAbove3GeVMin = i1;
501 fChargedAbove3GeVMax = i2;
502 fChargedAbove3GeVFlag = kTRUE;
506 //___________________________________________________________________________
507 void AliEventTagCuts::SetNChargedAbove10GeVRange(Int_t i1, Int_t i2) {
508 //Sets the number of charged above 10GeV range
509 //and the corresponding flag to kTRUE if the cut is used.
510 fChargedAbove10GeVMin = i1;
511 fChargedAbove10GeVMax = i2;
512 fChargedAbove10GeVFlag = kTRUE;
516 //___________________________________________________________________________
517 void AliEventTagCuts::SetNMuonsAbove1GeVRange(Int_t i1, Int_t i2) {
518 //Sets the number of muons above 1GeV range
519 //and the corresponding flag to kTRUE if the cut is used.
520 fMuonsAbove1GeVMin = i1;
521 fMuonsAbove1GeVMax = i2;
522 fMuonsAbove1GeVFlag = kTRUE;
526 //___________________________________________________________________________
527 void AliEventTagCuts::SetNMuonsAbove3GeVRange(Int_t i1, Int_t i2) {
528 //Sets the number of muons above 3GeV range
529 //and the corresponding flag to kTRUE if the cut is used.
530 fMuonsAbove3GeVMin = i1;
531 fMuonsAbove3GeVMax = i2;
532 fMuonsAbove3GeVFlag = kTRUE;
535 //___________________________________________________________________________
536 void AliEventTagCuts::SetNMuonsAbove10GeVRange(Int_t i1, Int_t i2) {
537 //Sets the number of muons above 10GeV range
538 //and the corresponding flag to kTRUE if the cut is used.
539 fMuonsAbove10GeVMin = i1;
540 fMuonsAbove10GeVMax = i2;
541 fMuonsAbove10GeVFlag = kTRUE;
545 //___________________________________________________________________________
546 void AliEventTagCuts::SetNElectronsAbove1GeVRange(Int_t i1, Int_t i2) {
547 //Sets the number of electrons above 1GeV range
548 //and the corresponding flag to kTRUE if the cut is used.
549 fElectronsAbove1GeVMin = i1;
550 fElectronsAbove1GeVMax = i2;
551 fElectronsAbove1GeVFlag = kTRUE;
554 //___________________________________________________________________________
555 void AliEventTagCuts::SetNElectronsAbove3GeVRange(Int_t i1, Int_t i2) {
556 //Sets the number of electrons above 3GeV range
557 //and the corresponding flag to kTRUE if the cut is used.
558 fElectronsAbove3GeVMin = i1;
559 fElectronsAbove3GeVMax = i2;
560 fElectronsAbove3GeVFlag = kTRUE;
563 //___________________________________________________________________________
564 void AliEventTagCuts::SetNElectronsAbove10GeVRange(Int_t i1, Int_t i2) {
565 //Sets the number of electrons above 10GeV range
566 //and the corresponding flag to kTRUE if the cut is used.
567 fElectronsAbove10GeVMin = i1;
568 fElectronsAbove10GeVMax = i2;
569 fElectronsAbove10GeVFlag = kTRUE;
571 //___________________________________________________________________________
572 void AliEventTagCuts::SetNElectronRange(Int_t n1, Int_t n2) {
573 //Sets the electron multiplicity range
574 //and the corresponding flag to kTRUE if the cut is used.
577 fElectronsFlag = kTRUE;
579 //___________________________________________________________________________
580 void AliEventTagCuts::SetNMuonRange(Int_t n1, Int_t n2) {
581 //Sets the muon multiplicity range
582 //and the corresponding flag to kTRUE if the cut is used.
588 //___________________________________________________________________________
589 void AliEventTagCuts::SetNPionRange(Int_t n1, Int_t n2) {
590 //Sets the pion multiplicity range
591 //and the corresponding flag to kTRUE if the cut is used.
597 //___________________________________________________________________________
598 void AliEventTagCuts::SetNKaonRange(Int_t n1, Int_t n2) {
599 //Sets the kaon multiplicity range
600 //and the corresponding flag to kTRUE if the cut is used.
606 //___________________________________________________________________________
607 void AliEventTagCuts::SetNProtonRange(Int_t n1, Int_t n2) {
608 //Sets the proton multiplicity range
609 //and the corresponding flag to kTRUE if the cut is used.
612 fProtonsFlag = kTRUE;
615 //___________________________________________________________________________
616 void AliEventTagCuts::SetNLambdaRange(Int_t n1, Int_t n2) {
617 //Sets the lambda multiplicity range
618 //and the corresponding flag to kTRUE if the cut is used.
621 fLambdasFlag = kTRUE;
623 //___________________________________________________________________________
624 void AliEventTagCuts::SetNPhotonRange(Int_t n1, Int_t n2) {
625 //Sets the photon multiplicity range
626 //and the corresponding flag to kTRUE if the cut is used.
631 //___________________________________________________________________________
632 void AliEventTagCuts::SetNPi0Range(Int_t n1, Int_t n2) {
633 //Sets the pi0 multiplicity range
634 //and the corresponding flag to kTRUE if the cut is used.
640 //___________________________________________________________________________
641 void AliEventTagCuts::SetNNeutronRange(Int_t n1, Int_t n2) {
642 //Sets the neutron multiplicity range
643 //and the corresponding flag to kTRUE if the cut is used.
646 fNeutronsFlag = kTRUE;
649 //___________________________________________________________________________
650 void AliEventTagCuts::SetNKaon0Range(Int_t n1, Int_t n2) {
651 //Sets the K0s multiplicity range
652 //and the corresponding flag to kTRUE if the cut is used.
658 //___________________________________________________________________________
659 void AliEventTagCuts::SetTotalPRange(Float_t r1, Float_t r2) {
660 //Sets the total momentum range
661 //and the corresponding flag to kTRUE if the cut is used.
667 //___________________________________________________________________________
668 void AliEventTagCuts::SetMeanPtRange(Float_t r1, Float_t r2) {
669 //Sets the mean Pt range
670 //and the corresponding flag to kTRUE if the cut is used.
676 //___________________________________________________________________________
677 void AliEventTagCuts::SetMaxPt(Float_t r1) {
678 //Sets the lower limit of the max Pt value
679 //and the corresponding flag to kTRUE if the cut is used.
684 //___________________________________________________________________________
685 void AliEventTagCuts::SetTotalNeutralPRange(Float_t r1, Float_t r2) {
686 //Sets the total momentum of neutral particles range
687 //and the corresponding flag to kTRUE if the cut is used.
688 fTotalNeutralPMin =r1 ;
689 fTotalNeutralPMax = r2;
690 fTotalNeutralPFlag = kTRUE;
692 //___________________________________________________________________________
693 void AliEventTagCuts::SetMeanNeutralPtPRange(Float_t r1, Float_t r2) {
694 //Sets the mean Pt of neutral particles range
695 //and the corresponding flag to kTRUE if the cut is used.
696 fMeanNeutralPtMin = r1;
697 fMeanNeutralPtMax = r2;
698 fMeanNeutralPtFlag = kTRUE;
700 //___________________________________________________________________________
701 void AliEventTagCuts::SetMaxNeutralPt(Float_t r1) {
702 //Sets the lower limit of the maximum Pt of neutral particles
703 //and the corresponding flag to kTRUE if the cut is used.
705 fMaxNeutralPtFlag = kTRUE;
708 //___________________________________________________________________________
709 void AliEventTagCuts::SetEvPlaneAngleRange(Float_t r1, Float_t r2) {
710 //Sets the event plane range
711 //and the corresponding flag to kTRUE if the cut is used.
712 fEventPlaneAngleMin = r1;
713 fEventPlaneAngleMax = r2;
714 fEventPlaneAngleFlag = kTRUE;
717 //___________________________________________________________________________
718 void AliEventTagCuts::SetHBTRadiiRange(Float_t r1, Float_t r2) {
719 //Sets the HBT radii range
720 //and the corresponding flag to kTRUE if the cut is used.
723 fHBTRadiiFlag = kTRUE;
726 //___________________________________________________________________________
727 Bool_t AliEventTagCuts::IsAccepted(AliEventTag *EvTag) const {
728 //Returns true if the event is accepted otherwise false.
730 if((EvTag->GetVertexZ() < fVzMin) || (EvTag->GetVertexZ() > fVzMax))
734 if((EvTag->GetVertexY() < fVyMin) || (EvTag->GetVertexY() > fVyMax))
738 if((EvTag->GetVertexX() < fVxMin) || (EvTag->GetVertexX() > fVxMax))
741 if(fParticipantsFlag)
742 if((EvTag->GetNumOfParticipants() < fParticipantsMin) || (EvTag->GetNumOfParticipants() > fParticipantMax))
746 if((EvTag->GetImpactParameter() < fImpactParamMin) || (EvTag->GetImpactParameter() > fImpactParamMax))
750 if((EvTag->GetVertexFlag() != fPrimaryVertexFlag))
754 if((EvTag->GetVertexZError() < fPrimaryVertexZErrorMin) || (EvTag->GetVertexZError() > fPrimaryVertexZErrorMax))
757 if((EvTag->GetTriggerMask() != fTriggerMask))
759 if(fTriggerClusterFlag)
760 if((EvTag->GetTriggerMask() != fTriggerMask))
763 if(fZDCNeutron1EnergyFlag)
764 if((EvTag->GetZDCNeutron1Energy() < fZDCNeutron1EnergyMin) || (EvTag->GetZDCNeutron1Energy() > fZDCNeutron1EnergyMax))
767 if(fZDCProton1EnergyFlag)
768 if((EvTag->GetZDCProton1Energy() < fZDCProton1EnergyMin) || (EvTag->GetZDCProton1Energy() > fZDCProton1EnergyMax))
771 if(fZDCNeutron2EnergyFlag)
772 if((EvTag->GetZDCNeutron2Energy() < fZDCNeutron2EnergyMin) || (EvTag->GetZDCNeutron2Energy() > fZDCNeutron2EnergyMax))
775 if(fZDCProton2EnergyFlag)
776 if((EvTag->GetZDCProton2Energy() < fZDCProton2EnergyMin) || (EvTag->GetZDCProton2Energy() > fZDCProton2EnergyMax))
780 if((EvTag->GetZDCEMEnergy() < fZDCEMEnergyMin) || (EvTag->GetZDCEMEnergy() > fZDCEMEnergyMax))
784 if((EvTag->GetT0VertexZ() < fT0VertexZMin) || (EvTag->GetT0VertexZ() > fT0VertexZMax))
788 if((EvTag->GetNumOfTracks() < fMultMin) || (EvTag->GetNumOfTracks() > fMultMax))
791 if((EvTag->GetNumOfPosTracks() < fMultPosMin) || (EvTag->GetNumOfPosTracks() > fMultPosMax))
795 if((EvTag->GetNumOfNegTracks() < fMultNegMin) || (EvTag->GetNumOfNegTracks() > fMultNegMax))
799 if((EvTag->GetNumOfNeutrTracks() < fMultNeutrMin) || (EvTag->GetNumOfNeutrTracks() > fMultNeutrMax))
803 if((EvTag->GetNumOfV0s() < fV0sMin) || (EvTag->GetNumOfV0s() > fV0sMax))
807 if((EvTag->GetNumOfCascades() < fCascadesMin) || (EvTag->GetNumOfCascades() > fCascadesMax))
811 if((EvTag->GetNumOfKinks() < fkinksMin) || (EvTag->GetNumOfKinks() > fkinksMax))
816 if((EvTag->GetNumOfPMDTracks() < fPMDTracksMin) || (EvTag->GetNumOfPMDTracks() > fPMDTracksMax))
819 if((EvTag->GetNumOfFMDTracks() < fFMDTracksMin) || (EvTag->GetNumOfFMDTracks() > fFMDTracksMax))
821 if(fPHOSClustersFlag)
822 if((EvTag->GetNumOfPHOSClusters() < fPHOSClustersMin) || (EvTag->GetNumOfPHOSClusters() > fPHOSClustersMax))
824 if(fEMCALClustersFlag)
825 if((EvTag->GetNumOfEMCALClusters() < fEMCALClustersMin) || (EvTag->GetNumOfEMCALClusters() > fEMCALClustersMax))
827 if(fJetCandidatesFlag)
828 if((EvTag->GetNumOfJetCandidates() < fJetCandidatesMin) || (EvTag->GetNumOfJetCandidates() > fJetCandidatesMax))
832 if(fMaxJetEnergyFlag)
833 if((EvTag->GetMaxJetEnergy() < fMaxJetEnergy))
836 if(fNHardPhotonsCandidatesFlag)
837 if((EvTag->GetNumOfHardPhotonsCandidates() < fNHardPhotonsCandidatesMin) || (EvTag->GetNumOfHardPhotonsCandidates() > fNHardPhotonsCandidatesMax))
841 if((EvTag->GetMaxNeutralEnergy() < fMaxNeutralEnergy))
844 if(fChargedAbove1GeVFlag)
845 if((EvTag->GetNumOfChargedAbove1GeV() < fChargedAbove1GeVMin) || (EvTag->GetNumOfChargedAbove1GeV() > fChargedAbove1GeVMax))
848 if(fChargedAbove3GeVFlag)
849 if((EvTag->GetNumOfChargedAbove3GeV() < fChargedAbove3GeVMin) || (EvTag->GetNumOfChargedAbove3GeV() > fChargedAbove3GeVMax))
852 if(fChargedAbove10GeVFlag)
853 if((EvTag->GetNumOfChargedAbove10GeV() < fChargedAbove10GeVMin) || (EvTag->GetNumOfChargedAbove10GeV() > fChargedAbove10GeVMax))
856 if(fMuonsAbove1GeVFlag)
857 if((EvTag->GetNumOfMuonsAbove1GeV() < fMuonsAbove1GeVMin) || (EvTag->GetNumOfMuonsAbove1GeV() > fMuonsAbove1GeVMax))
860 if(fMuonsAbove3GeVFlag)
861 if((EvTag->GetNumOfMuonsAbove3GeV() < fMuonsAbove3GeVMin) || (EvTag->GetNumOfMuonsAbove3GeV() > fMuonsAbove3GeVMax))
864 if(fMuonsAbove10GeVFlag)
865 if((EvTag->GetNumOfMuonsAbove10GeV() < fMuonsAbove10GeVMin) || (EvTag->GetNumOfMuonsAbove10GeV() > fMuonsAbove10GeVMax))
868 if(fElectronsAbove1GeVFlag)
869 if((EvTag->GetNumOfElectronsAbove1GeV() < fElectronsAbove1GeVMin) || (EvTag->GetNumOfElectronsAbove1GeV() > fElectronsAbove1GeVMax))
872 if(fElectronsAbove3GeVFlag)
873 if((EvTag->GetNumOfElectronsAbove3GeV() < fElectronsAbove3GeVMin) || (EvTag->GetNumOfElectronsAbove3GeV() > fElectronsAbove3GeVMax))
876 if(fElectronsAbove10GeVFlag)
877 if((EvTag->GetNumOfElectronsAbove10GeV() < fElectronsAbove10GeVMin) || (EvTag->GetNumOfElectronsAbove10GeV() > fElectronsAbove10GeVMax))
881 if((EvTag->GetNumOfElectrons() < fElectronsMin) || (EvTag->GetNumOfElectrons() > fElectronsMax))
885 if((EvTag->GetNumOfMuons() < fMuonsMin) || (EvTag->GetNumOfMuons() > fMuonsMax))
889 if((EvTag->GetNumOfPions() < fPionsMin) || (EvTag->GetNumOfPions() > fPionsMax))
893 if((EvTag->GetNumOfKaons() < fKaonsMin) || (EvTag->GetNumOfKaons() > fKaonsMax))
897 if((EvTag->GetNumOfProtons() < fProtonsMin) || (EvTag->GetNumOfProtons() > fProtonsMax))
901 if((EvTag->GetNumOfLambdas() < fLambdasMin) || (EvTag->GetNumOfLambdas() > fLambdasMax))
905 if((EvTag->GetNumOfPhotons() < fPhotonsMin) || (EvTag->GetNumOfPhotons() > fPhotonsMax))
909 if((EvTag->GetNumOfPi0s() < fPi0sMin) || (EvTag->GetNumOfPi0s() > fPi0sMax))
913 if((EvTag->GetNumOfNeutrons() < fNeutronsMin) || (EvTag->GetNumOfNeutrons() > fNeutronsMax))
917 if((EvTag->GetNumOfKaon0s() < fKaon0sMin) || (EvTag->GetNumOfKaon0s() > fKaon0sMax))
921 if((EvTag->GetTotalMomentum() < fTotalPMin) || (EvTag->GetTotalMomentum() > fTotalPMax))
925 if((EvTag->GetMeanPt() < fMeanPtMin) || (EvTag->GetMeanPt() > fMeanPtMax))
929 if((EvTag->GetMaxPt() < fMaxPt))
932 if(fTotalNeutralPFlag)
933 if((EvTag->GetNeutralTotalMomentum() < fTotalNeutralPMin) || (EvTag->GetNeutralTotalMomentum() > fTotalNeutralPMax))
936 if(fMeanNeutralPtFlag)
937 if((EvTag->GetNeutralMeanPt() < fMeanNeutralPtMin) || (EvTag->GetNeutralMeanPt() >fMeanNeutralPtMax ))
940 if(fMaxNeutralPtFlag)
941 if((EvTag->GetNeutralMaxPt() < fMaxNeutralPt))
944 if(fEventPlaneAngleFlag)
945 if((EvTag->GetEventPlaneAngle() < fEventPlaneAngleMin) || (EvTag->GetEventPlaneAngle() > fEventPlaneAngleMax))
949 if((EvTag->GetHBTRadii() < fHBTRadiiMin) || (EvTag->GetHBTRadii() > fHBTRadiiMax))