]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/AliEventTagCuts.cxx
Label for the ITS tracklets (Jan Fiete)
[u/mrichter/AliRoot.git] / STEER / AliEventTagCuts.cxx
1 /**************************************************************************
2  * Author: Panos Christakoglou.                                           *
3  * Contributors are mentioned in the code where appropriate.              *
4  *                                                                        *
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  **************************************************************************/
13
14 /* $Id$ */
15
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 //-----------------------------------------------------------------
21
22 class AliLog;
23 class AliESD;
24
25 #include "AliEventTag.h"
26 #include "AliEventTagCuts.h"
27
28 ClassImp(AliEventTagCuts)
29
30
31 //___________________________________________________________________________
32 AliEventTagCuts::AliEventTagCuts() :
33   TObject(),
34   
35   fNParticipantsMin(-1), fNParticipantsMax(10000),
36   fNParticipantsFlag(kFALSE),
37   fImpactParamMin(-1.0), fImpactParamMax(1000.0),
38   fImpactParamFlag(kFALSE),
39
40   fVxMin(-1000.0), fVxMax(1000.0), 
41   fVxFlag(kFALSE),
42   fVyMin(-1000.0), fVyMax(1000.0),  
43   fVyFlag(kFALSE),
44   fVzMin(-1000.0), fVzMax(1000.0),
45   fVzFlag(kFALSE),
46   fPrimaryVertexFlag(1),
47   fPVFlag(kFALSE),
48
49   fPrimaryVertexZErrorMin(-10000.), fPrimaryVertexZErrorMax(10000.),
50   fPVzErrorFlag(kFALSE),
51   fTriggerMask(0),
52   fTriggerMaskFlag(kFALSE),
53   fTriggerCluster(0),
54   fTriggerClusterFlag(kFALSE),
55  
56   fZDCNeutron1EnergyMin(-1.0), fZDCNeutron1EnergyMax(100000.0),
57   fZDCNeutron1EnergyFlag(kFALSE),
58   fZDCProton1EnergyMin(-1.0), fZDCProton1EnergyMax(100000.0),
59   fZDCProton1EnergyFlag(kFALSE),
60   fZDCNeutron2EnergyMin(-1.0), fZDCNeutron2EnergyMax(100000.0),
61   fZDCNeutron2EnergyFlag(kFALSE),
62   fZDCProton2EnergyMin(-1.0), fZDCProton2EnergyMax(100000.0),
63   fZDCProton2EnergyFlag(kFALSE),
64   fZDCEMEnergyMin(-1.0), fZDCEMEnergyMax(100000.0),
65   fZDCEMEnergyFlag(kFALSE),
66   fT0VertexZMin(-10000.0), fT0VertexZMax(10000.0),  
67   fT0VertexZFlag(kFALSE),
68   fMultMin(0), fMultMax(100000),  
69   fMultFlag(kFALSE),
70   fPosMultMin(-1), fPosMultMax(100000),
71   fPosMultFlag(kFALSE),
72   fNegMultMin(-1), fNegMultMax(100000),
73   fNegMultFlag(kFALSE),
74   fNeutrMultMin(-1), fNeutrMultMax(100000),
75   fNeutrMultFlag(kFALSE),
76   fNV0sMin(-1), fNV0sMax(1000000),
77   fNV0sFlag(kFALSE),
78   fNCascadesMin(-1), fNCascadesMax(100000),
79   fNCascadesFlag(kFALSE),
80   fNKinksMin(-1), fNKinksMax(1000000),
81   fNKinksFlag(kFALSE),
82
83   fNPMDTracksMin(-1), fNPMDTracksMax(100000),
84   fNPMDTracksFlag(kFALSE),
85   fNFMDTracksMin(-1), fNFMDTracksMax(100000),
86   fNFMDTracksFlag(kFALSE),
87   fNPHOSClustersMin(-1), fNPHOSClustersMax(100000),
88   fNPHOSClustersFlag(kFALSE),
89   fNEMCALClustersMin(-1), fNEMCALClustersMax(100000),
90   fNEMCALClustersFlag(kFALSE),
91   fNJetCandidatesMin(-1), fNJetCandidatesMax(100000),
92   fNJetCandidatesFlag(kFALSE),
93
94   fTopJetEnergyMin(-1.0), 
95   fTopJetEnergyMinFlag(kFALSE),
96   fTopNeutralEnergyMin(-1.0), 
97   fTopNeutralEnergyMinFlag(kFALSE),
98   fNHardPhotonCandidatesMin(-1), fNHardPhotonCandidatesMax(100000),
99   fNHardPhotonCandidatesFlag(kFALSE),
100   fNChargedAbove1GeVMin(-1), fNChargedAbove1GeVMax(100000),
101   fNChargedAbove1GeVFlag(kFALSE),
102   fNChargedAbove3GeVMin(-1), fNChargedAbove3GeVMax(100000),
103   fNChargedAbove3GeVFlag(kFALSE),
104   fNChargedAbove10GeVMin(-1), fNChargedAbove10GeVMax(100000),
105   fNChargedAbove10GeVFlag(kFALSE),
106   fNMuonsAbove1GeVMin(-1), fNMuonsAbove1GeVMax(100000),
107   fNMuonsAbove1GeVFlag(kFALSE),
108   fNMuonsAbove3GeVMin(-1), fNMuonsAbove3GeVMax(100000),
109   fNMuonsAbove3GeVFlag(kFALSE),
110   fNMuonsAbove10GeVMin(-1), fNMuonsAbove10GeVMax(100000), 
111   fNMuonsAbove10GeVFlag(kFALSE),
112   fNElectronsAbove1GeVMin(-1), fNElectronsAbove1GeVMax(100000),
113   fNElectronsAbove1GeVFlag(kFALSE),
114   fNElectronsAbove3GeVMin(-1), fNElectronsAbove3GeVMax(100000),
115   fNElectronsAbove3GeVFlag(kFALSE),
116   fNElectronsAbove10GeVMin(-1), fNElectronsAbove10GeVMax(100000),
117   fNElectronsAbove10GeVFlag(kFALSE),
118   fNElectronsMin(-1), fNElectronsMax(100000),
119   fNElectronsFlag(kFALSE),
120   fNMuonsMin(-1), fNMuonsMax(100000),
121   fNMuonsFlag(kFALSE),
122   fNPionsMin(-1), fNPionsMax(100000),
123   fNPionsFlag(kFALSE),
124   fNKaonsMin(-1), fNKaonsMax(100000),
125   fNKaonsFlag(kFALSE),
126   fNProtonsMin(-1), fNProtonsMax(100000),
127   fNProtonsFlag(kFALSE),
128   fNLambdasMin(-1), fNLambdasMax(100000),
129   fNLambdasFlag(kFALSE),
130   fNPhotonsMin(-1), fNPhotonsMax(100000),
131   fNPhotonFlag(kFALSE),
132   fNPi0sMin(-1), fNPi0sMax(100000), 
133   fNPi0sFlag(kFALSE),
134   fNNeutronsMin(-1), fNNeutronsMax(100000), 
135   fNNeutronsFlag(kFALSE),
136   fNKaon0sMin(-1), fNKaon0sMax(100000), 
137   fNKaon0sFlag(kFALSE),
138   fTotalPMin(-1.0), fTotalPMax(1000000.0),
139   fTotalPFlag(kFALSE),
140   fMeanPtMin(-1.0), fMeanPtMax(100000.0),
141   fMeanPtFlag(kFALSE),
142   fTopPtMin(-1.0),
143   fTopPtMinFlag(kFALSE),
144   fTotalNeutralPMin(-1.0), fTotalNeutralPMax(1000000.0),   
145   fTotalNeutralPFlag(kFALSE),
146   fMeanNeutralPtMin(-1.0), fMeanNeutralPtMax(1000000.0), 
147   fMeanNeutralPtFlag(kFALSE),
148   fTopNeutralPtMin(-1.0), 
149   fTopNeutralPtMinFlag(kFALSE),
150   fEventPlaneAngleMin(-10000000.0), fEventPlaneAngleMax(10000000.0), 
151   fEventPlaneAngleFlag(kFALSE),
152   fHBTRadiiMin(-1.0), fHBTRadiiMax(100000.0), 
153   fHBTRadiiFlag(kFALSE)
154 {
155   //Default constructor which calls the Reset method.
156   Reset();
157 }
158
159 //___________________________________________________________________________
160 AliEventTagCuts::~AliEventTagCuts() {  
161   //Defaut destructor.
162 }
163
164 //___________________________________________________________________________
165 void AliEventTagCuts::Reset() {
166   //Sets dummy values to every private member.
167   fNParticipantsFlag = kFALSE;
168   fImpactParamFlag = kFALSE;
169
170   fVxFlag = kFALSE;
171   fVyFlag = kFALSE;
172   fVzFlag = kFALSE;
173   fPVFlag = kFALSE;
174   fPVzErrorFlag = kFALSE;
175
176   fTriggerMaskFlag = kFALSE;
177   fTriggerClusterFlag = kFALSE;
178
179   fZDCNeutron1EnergyFlag = kFALSE;
180   fZDCProton1EnergyFlag = kFALSE;
181   fZDCNeutron2EnergyFlag = kFALSE;
182   fZDCProton2EnergyFlag = kFALSE;
183   fZDCEMEnergyFlag = kFALSE;
184   fT0VertexZFlag = kFALSE;
185   fMultFlag = kFALSE;
186   fPosMultFlag = kFALSE;
187   fNegMultFlag = kFALSE;
188   fNeutrMultFlag = kFALSE;
189   fNV0sFlag = kFALSE;
190   fNCascadesFlag = kFALSE;
191   fNKinksFlag = kFALSE;
192
193   fNPMDTracksFlag = kFALSE;
194   fNFMDTracksFlag = kFALSE;
195   fNPHOSClustersFlag = kFALSE;
196   fNEMCALClustersFlag = kFALSE;
197   fNJetCandidatesFlag = kFALSE;
198
199   fTopJetEnergyMinFlag = kFALSE;
200   fNHardPhotonCandidatesFlag = kFALSE;
201   fTopNeutralEnergyMinFlag = kFALSE;
202   fNChargedAbove1GeVFlag = kFALSE;
203   fNChargedAbove3GeVFlag = kFALSE;
204   fNChargedAbove10GeVFlag = kFALSE;
205   fNMuonsAbove1GeVFlag = kFALSE;
206   fNMuonsAbove3GeVFlag = kFALSE;
207   fNMuonsAbove10GeVFlag = kFALSE;
208   fNElectronsAbove1GeVFlag = kFALSE;
209   fNElectronsAbove3GeVFlag = kFALSE;
210   fNElectronsAbove10GeVFlag = kFALSE;
211   fNElectronsFlag = kFALSE;
212   fNMuonsFlag = kFALSE;
213   fNPionsFlag = kFALSE;
214   fNKaonsFlag = kFALSE;
215   fNProtonsFlag = kFALSE;
216   fNLambdasFlag = kFALSE;
217   fNPhotonFlag = kFALSE;
218   fNPi0sFlag = kFALSE;
219   fNNeutronsFlag = kFALSE;
220   fNKaon0sFlag = kFALSE;
221   fTotalPFlag = kFALSE;
222   fMeanPtFlag = kFALSE;
223   fTopPtMinFlag = kFALSE;
224   fTotalNeutralPFlag = kFALSE;
225   fMeanNeutralPtFlag = kFALSE;
226   fTopNeutralPtMinFlag = kFALSE;
227   fEventPlaneAngleFlag = kFALSE;
228   fHBTRadiiFlag = kFALSE;
229   
230   fVxMin = -1000.0; fVxMax = 1000.0; 
231   fVyMin = -1000.0; fVyMax = 1000.0;  
232   fVzMin = -1000.0; fVzMax = 1000.0;
233   fNParticipantsMin = -1; fNParticipantsMax = 10000;
234   fImpactParamMin = -1.0; fImpactParamMax = 1000.0;
235   fPrimaryVertexFlag = 1;
236
237   fPrimaryVertexZErrorMin = -10000.; fPrimaryVertexZErrorMax = 10000.;
238   fTriggerMask = 0;
239   fTriggerCluster = 0;
240  
241   fZDCNeutron1EnergyMin = -1.0; fZDCNeutron1EnergyMax = 100000.0;
242   fZDCProton1EnergyMin = -1.0; fZDCProton1EnergyMax = 100000.0;
243   fZDCNeutron2EnergyMin = -1.0; fZDCNeutron2EnergyMax = 100000.0;
244   fZDCProton2EnergyMin = -1.0; fZDCProton2EnergyMax = 100000.0;
245   fZDCEMEnergyMin = -1.0; fZDCEMEnergyMax = 100000.0;
246   fT0VertexZMin = -10000.0; fT0VertexZMax = 10000.0;  
247   fMultMin = 0; fMultMax = 100000;  
248   fPosMultMin = -1; fPosMultMax = 100000;
249   fNegMultMin = -1; fNegMultMax = 100000;
250   fNeutrMultMin = -1; fNeutrMultMax = 100000;
251   fNV0sMin = -1; fNV0sMax = 1000000;
252   fNCascadesMin = -1; fNCascadesMax = 100000;
253   fNKinksMin = -1; fNKinksMax = 1000000;
254
255   fNPMDTracksMin = -1, fNPMDTracksMax = 100000;
256   fNFMDTracksMin = -1, fNFMDTracksMax = 100000;
257   fNPHOSClustersMin = -1, fNPHOSClustersMax = 100000;
258   fNEMCALClustersMin = -1, fNEMCALClustersMax = 100000;
259   fNJetCandidatesMin = -1, fNJetCandidatesMax = 100000;
260
261   fTopJetEnergyMin = -1.0; 
262   fNHardPhotonCandidatesMin = -1; fNHardPhotonCandidatesMax = 100000;
263   fTopNeutralEnergyMin = -1.0; 
264   fNChargedAbove1GeVMin = -1; fNChargedAbove1GeVMax = 100000;
265   fNChargedAbove3GeVMin = -1; fNChargedAbove3GeVMax = 100000;
266   fNChargedAbove10GeVMin = -1; fNChargedAbove10GeVMax = 100000;
267   fNMuonsAbove1GeVMin = -1; fNMuonsAbove1GeVMax = 100000;
268   fNMuonsAbove3GeVMin = -1; fNMuonsAbove3GeVMax = 100000;
269   fNMuonsAbove10GeVMin = -1; fNMuonsAbove10GeVMax = 100000; 
270   fNElectronsAbove1GeVMin = -1; fNElectronsAbove1GeVMax = 100000;
271   fNElectronsAbove3GeVMin = -1; fNElectronsAbove3GeVMax = 100000;
272   fNElectronsAbove10GeVMin = -1; fNElectronsAbove10GeVMax = 100000;
273   fNElectronsMin = -1; fNElectronsMax = 100000;
274   fNMuonsMin = -1; fNMuonsMax = 100000;
275   fNPionsMin = -1; fNPionsMax = 100000;
276   fNKaonsMin = -1; fNKaonsMax = 100000;
277   fNProtonsMin = -1; fNProtonsMax = 100000;
278   fNLambdasMin = -1; fNLambdasMax = 100000;
279   fNPhotonsMin = -1; fNPhotonsMax = 100000;
280   fNPi0sMin = -1; fNPi0sMax = 100000; 
281   fNNeutronsMin = -1; fNNeutronsMax = 100000; 
282   fNKaon0sMin = -1; fNKaon0sMax = 100000; 
283   fTotalPMin = -1.0; fTotalPMax = 1000000.0;
284   fMeanPtMin = -1.0; fMeanPtMax = 100000.0;
285   fTopPtMin = -1.0; fTotalNeutralPMin = -1.0;
286   fTotalNeutralPMax = 1000000.0;   
287   fMeanNeutralPtMin = -1.0; fMeanNeutralPtMax = 1000000.0; 
288   fTopNeutralPtMin = -1.0; 
289   fEventPlaneAngleMin = -10000000.0; fEventPlaneAngleMax = 10000000.0; 
290   fHBTRadiiMin = -1.0; fHBTRadiiMax = 100000.0; 
291 }
292
293 //___________________________________________________________________________
294 void AliEventTagCuts::SetPrimaryVertexXRange(Float_t low, Float_t high) {
295   //Sets the primary vertex x range 
296   //and the corresponding flag to kTRUE if the cut is used.
297   fVxMin = low;
298   fVxMax = high; 
299   fVxFlag = kTRUE;
300 }
301
302 //___________________________________________________________________________
303 void AliEventTagCuts::SetPrimaryVertexYRange(Float_t low, Float_t high) {
304   //Sets the primary vertex y range 
305   //and the corresponding flag to kTRUE if the cut is used.
306   fVyMin = low;
307   fVyMax = high; 
308   fVyFlag = kTRUE;
309 }
310
311 //___________________________________________________________________________
312 void AliEventTagCuts::SetPrimaryVertexZRange(Float_t low, Float_t high) {
313   //Sets the primary vertex z range 
314   //and the corresponding flag to kTRUE if the cut is used.
315   fVzMin = low;
316   fVzMax = high; 
317   fVzFlag = kTRUE;
318 }
319
320 //___________________________________________________________________________
321 void AliEventTagCuts::SetPrimaryVertexZErrorRange(Float_t low, Float_t high) {
322   //Sets the primary vertex z error range 
323   //and the corresponding flag to kTRUE if the cut is used.
324   fPrimaryVertexZErrorMin = low;
325   fPrimaryVertexZErrorMax = high; 
326   fPVzErrorFlag = kTRUE;
327 }
328
329 //___________________________________________________________________________
330 void AliEventTagCuts::SetTriggerMask(ULong64_t trmask) {
331   //Sets the trigger mask 
332   //and the corresponding flag to kTRUE if the cut is used.
333   fTriggerMask = trmask;
334   fTriggerMaskFlag = kTRUE;
335 }
336
337 //___________________________________________________________________________
338 void AliEventTagCuts::SetTriggerCluster(UChar_t trcluster) {
339   //Sets the trigger cluster 
340   //and the corresponding flag to kTRUE if the cut is used.
341   fTriggerCluster = trcluster;
342   fTriggerClusterFlag = kTRUE;
343 }
344
345 //___________________________________________________________________________
346 void AliEventTagCuts::SetMultiplicityRange(Int_t low, Int_t high) {
347   //Sets the primary multiplicity range 
348   //and the corresponding flag to kTRUE if the cut is used.
349   fMultMin = low;
350   fMultMax = high;
351   fMultFlag = kTRUE;
352 }
353
354 //___________________________________________________________________________
355 void AliEventTagCuts::SetNParticipantsRange(Int_t low, Int_t high) {
356   //Sets the number of participants range 
357   //and the corresponding flag to kTRUE if the cut is used.
358   fNParticipantsMin = low;
359   fNParticipantsMax = high;
360   fNParticipantsFlag = kTRUE;
361 }
362
363 //___________________________________________________________________________
364 void AliEventTagCuts::SetImpactParamRange(Float_t low, Float_t high) {
365   //Sets the impact parameter range 
366   //and the corresponding flag to kTRUE if the cut is used.
367   fImpactParamMin = low;
368   fImpactParamMax = high;
369   fImpactParamFlag = kTRUE;
370 }
371  
372
373 //___________________________________________________________________________
374 void AliEventTagCuts::SetPrimaryVertexFlag(Int_t flag) {
375   //Sets the primary vertex flag cut 
376   //and the corresponding flag to kTRUE if the cut is used.
377   fPrimaryVertexFlag = flag;
378   fPVFlag = kTRUE;
379 }
380
381 //___________________________________________________________________________
382 void AliEventTagCuts::SetZDCNeutron1Range(Float_t low, Float_t high) {
383   //Sets the ZDC's neutron energy range 
384   //and the corresponding flag to kTRUE if the cut is used.
385   fZDCNeutron1EnergyMin = low;
386   fZDCNeutron1EnergyMax = high;
387   fZDCNeutron1EnergyFlag = kTRUE;
388 }
389
390 //___________________________________________________________________________
391 void AliEventTagCuts::SetZDCProton1Range(Float_t low, Float_t high) {
392   //Sets the ZDC's proton energy range 
393   //and the corresponding flag to kTRUE if the cut is used.
394   fZDCProton1EnergyMin = low;
395   fZDCProton1EnergyMax = high;
396   fZDCProton1EnergyFlag = kTRUE;
397 }
398 //___________________________________________________________________________
399 void AliEventTagCuts::SetZDCNeutron2Range(Float_t low, Float_t high) {
400   //Sets the ZDC's neutron energy range 
401   //and the corresponding flag to kTRUE if the cut is used.
402   fZDCNeutron2EnergyMin = low;
403   fZDCNeutron2EnergyMax = high;
404   fZDCNeutron2EnergyFlag = kTRUE;
405 }
406 //___________________________________________________________________________
407 void AliEventTagCuts::SetZDCProton2Range(Float_t low, Float_t high) {
408   //Sets the ZDC's proton energy range 
409   //and the corresponding flag to kTRUE if the cut is used.
410   fZDCProton2EnergyMin = low;
411   fZDCProton2EnergyMax = high;
412   fZDCProton2EnergyFlag = kTRUE;
413 }
414 //___________________________________________________________________________
415 void AliEventTagCuts::SetZDCEMRange(Float_t low, Float_t high) {
416   //Sets the ZDC's em energy range 
417   //and the corresponding flag to kTRUE if the cut is used.
418   fZDCEMEnergyMin = low;
419   fZDCEMEnergyMax = high;
420   fZDCEMEnergyFlag = kTRUE;
421 }
422
423 //___________________________________________________________________________
424 void AliEventTagCuts::SetT0VertexZRange(Float_t low, Float_t high) {
425   //Sets the T0's Vz range 
426   //and the corresponding flag to kTRUE if the cut is used.
427   fT0VertexZMin = low;
428   fT0VertexZMax = high;
429   fT0VertexZFlag = kTRUE;
430 }
431
432 //___________________________________________________________________________
433 void AliEventTagCuts::SetPosMultiplicityRange(Int_t low, Int_t high) {
434   //Sets the positive multiplicity range 
435   //and the corresponding flag to kTRUE if the cut is used.
436   fPosMultMin = low;
437   fPosMultMax = high;
438   fPosMultFlag = kTRUE;
439 }
440
441
442 //___________________________________________________________________________
443 void AliEventTagCuts::SetNegMultiplicityRange(Int_t low, Int_t high) {
444   //Sets the negative multiplicity range 
445   //and the corresponding flag to kTRUE if the cut is used.
446   fNegMultMin = low;
447   fNegMultMax = high;
448   fNegMultFlag = kTRUE;
449 }
450
451
452 //___________________________________________________________________________
453 void AliEventTagCuts::SetNeutrMultiplicityRange(Int_t low, Int_t high) {
454   //Sets the neutral particle multiplicity range 
455   //and the corresponding flag to kTRUE if the cut is used.
456   fNeutrMultMin = low;
457   fNeutrMultMax = high;
458   fNeutrMultFlag = kTRUE;
459 }
460
461 //___________________________________________________________________________
462 void AliEventTagCuts::SetNV0sRange(Int_t low, Int_t high) {
463   //Sets the v0s multiplicity range 
464   //and the corresponding flag to kTRUE if the cut is used.
465   fNV0sMin = low;
466   fNV0sMax = high;
467   fNV0sFlag = kTRUE;
468 }
469
470 //___________________________________________________________________________
471 void AliEventTagCuts::SetNCascadesRange(Int_t low, Int_t high) {
472   //Sets the cascades multiplicity range 
473   //and the corresponding flag to kTRUE if the cut is used.
474   fNCascadesMin = low;
475   fNCascadesMax = high;
476   fNCascadesFlag = kTRUE;
477 }
478
479 //___________________________________________________________________________
480 void AliEventTagCuts::SetNKinksRange(Int_t low, Int_t high) {
481   //Sets the kinks multiplicity range 
482   //and the corresponding flag to kTRUE if the cut is used.
483   fNKinksMin = low;
484   fNKinksMax = high;
485   fNKinksFlag = kTRUE;
486 }
487
488 //___________________________________________________________________________
489 void AliEventTagCuts::SetNPMDTracksRange(Int_t low, Int_t high) {
490   //Sets the number of PMD tracks range 
491   //and the corresponding flag to kTRUE if the cut is used.
492   fNPMDTracksMin = low;
493   fNPMDTracksMax = high;
494   fNPMDTracksFlag = kTRUE;
495 }
496
497 //___________________________________________________________________________
498 void AliEventTagCuts::SetNFMDTracksRange(Int_t low, Int_t high) {
499   //Sets the number of FMD tracks range 
500   //and the corresponding flag to kTRUE if the cut is used.
501   fNFMDTracksMin = low;
502   fNFMDTracksMax = high;
503   fNFMDTracksFlag = kTRUE;
504 }
505
506 //___________________________________________________________________________
507 void AliEventTagCuts::SetNPHOSClustersRange(Int_t low, Int_t high) {
508   //Sets the number of PHOS clusters range 
509   //and the corresponding flag to kTRUE if the cut is used.
510   fNPHOSClustersMin = low;
511   fNPHOSClustersMax = high;
512   fNPHOSClustersFlag = kTRUE;
513 }
514
515 //___________________________________________________________________________
516 void AliEventTagCuts::SetNEMCALClustersRange(Int_t low, Int_t high) {
517   //Sets the number of EMCAL clusters range 
518   //and the corresponding flag to kTRUE if the cut is used.
519   fNEMCALClustersMin = low;
520   fNEMCALClustersMax = high;
521   fNEMCALClustersFlag = kTRUE;
522 }
523
524 //___________________________________________________________________________
525 void AliEventTagCuts::SetNJetCandidatesRange(Int_t low, Int_t high) {
526   //Sets the number of jet candidates range 
527   //and the corresponding flag to kTRUE if the cut is used.
528   fNJetCandidatesMin = low;
529   fNJetCandidatesMax = high;
530   fNJetCandidatesFlag = kTRUE;
531 }
532
533 //___________________________________________________________________________
534 void AliEventTagCuts::SetTopJetEnergyMin(Float_t low) {
535   //Sets the lower limit of the maximum jet energy
536   //and the corresponding flag to kTRUE if the cut is used.
537   fTopJetEnergyMin = low; 
538   fTopJetEnergyMinFlag = kTRUE;
539 }
540 //___________________________________________________________________________
541 void AliEventTagCuts::SetTopNeutralEnergyMin(Float_t low) {
542   //Sets the lower limit of the maximum neutral jet energy
543   //and the corresponding flag to kTRUE if the cut is used.
544   fTopNeutralEnergyMin = low; 
545   fTopNeutralEnergyMinFlag = kTRUE;
546 }
547 //___________________________________________________________________________
548 void AliEventTagCuts::SetNHardPhotonsRange(Int_t low, Int_t high) {
549   //Sets the hard photons multiplicity range
550   //and the corresponding flag to kTRUE if the cut is used.
551   fNHardPhotonCandidatesMin = low;
552   fNHardPhotonCandidatesMax = high;
553   fNHardPhotonCandidatesFlag = kTRUE;
554
555
556 //___________________________________________________________________________
557 void AliEventTagCuts::SetNChargedAbove1GeVRange(Int_t low, Int_t high) {
558   //Sets the number of charged above 1GeV range
559   //and the corresponding flag to kTRUE if the cut is used.
560   fNChargedAbove1GeVMin = low;
561   fNChargedAbove1GeVMax = high;
562   fNChargedAbove1GeVFlag = kTRUE;
563 }
564
565 //___________________________________________________________________________
566  void AliEventTagCuts::SetNChargedAbove3GeVRange(Int_t low, Int_t high) {
567   //Sets the number of charged above 3GeV range
568   //and the corresponding flag to kTRUE if the cut is used.
569   fNChargedAbove3GeVMin = low;
570   fNChargedAbove3GeVMax = high;
571   fNChargedAbove3GeVFlag = kTRUE;
572 }
573
574
575 //___________________________________________________________________________
576 void AliEventTagCuts::SetNChargedAbove10GeVRange(Int_t low, Int_t high) {
577   //Sets the number of charged above 10GeV range
578   //and the corresponding flag to kTRUE if the cut is used.
579   fNChargedAbove10GeVMin = low;
580   fNChargedAbove10GeVMax = high;
581   fNChargedAbove10GeVFlag = kTRUE;
582 }
583
584
585 //___________________________________________________________________________
586 void AliEventTagCuts::SetNMuonsAbove1GeVRange(Int_t low, Int_t high) {
587   //Sets the number of muons above 1GeV range
588   //and the corresponding flag to kTRUE if the cut is used.
589   fNMuonsAbove1GeVMin = low;
590   fNMuonsAbove1GeVMax = high;
591   fNMuonsAbove1GeVFlag = kTRUE;
592 }
593
594
595 //___________________________________________________________________________
596 void AliEventTagCuts::SetNMuonsAbove3GeVRange(Int_t low, Int_t high) {
597   //Sets the number of muons above 3GeV range
598   //and the corresponding flag to kTRUE if the cut is used.
599   fNMuonsAbove3GeVMin = low;
600   fNMuonsAbove3GeVMax = high;
601   fNMuonsAbove3GeVFlag = kTRUE;
602
603
604 //___________________________________________________________________________
605 void AliEventTagCuts::SetNMuonsAbove10GeVRange(Int_t low, Int_t high) {
606   //Sets the number of muons above 10GeV range
607   //and the corresponding flag to kTRUE if the cut is used.
608   fNMuonsAbove10GeVMin = low;
609   fNMuonsAbove10GeVMax = high; 
610   fNMuonsAbove10GeVFlag = kTRUE;
611 }
612
613
614 //___________________________________________________________________________
615 void AliEventTagCuts::SetNElectronsAbove1GeVRange(Int_t low, Int_t high) {
616   //Sets the number of electrons above 1GeV range
617   //and the corresponding flag to kTRUE if the cut is used.
618   fNElectronsAbove1GeVMin = low;
619   fNElectronsAbove1GeVMax = high;
620   fNElectronsAbove1GeVFlag = kTRUE;
621 }
622
623 //___________________________________________________________________________
624 void AliEventTagCuts::SetNElectronsAbove3GeVRange(Int_t low, Int_t high) {
625   //Sets the number of electrons above 3GeV range
626   //and the corresponding flag to kTRUE if the cut is used.
627   fNElectronsAbove3GeVMin = low;
628   fNElectronsAbove3GeVMax = high;
629   fNElectronsAbove3GeVFlag = kTRUE;
630 }
631
632 //___________________________________________________________________________
633 void AliEventTagCuts::SetNElectronsAbove10GeVRange(Int_t low, Int_t high) {  
634   //Sets the number of electrons above 10GeV range
635   //and the corresponding flag to kTRUE if the cut is used.
636   fNElectronsAbove10GeVMin = low;
637   fNElectronsAbove10GeVMax = high;
638   fNElectronsAbove10GeVFlag = kTRUE;
639 }
640 //___________________________________________________________________________
641 void AliEventTagCuts::SetNElectronRange(Int_t low, Int_t high) {
642   //Sets the electron multiplicity range
643   //and the corresponding flag to kTRUE if the cut is used.
644   fNElectronsMin = low;
645   fNElectronsMax = high;
646   fNElectronsFlag = kTRUE;
647 }
648 //___________________________________________________________________________
649 void AliEventTagCuts::SetNMuonRange(Int_t low, Int_t high) {
650   //Sets the muon multiplicity range
651   //and the corresponding flag to kTRUE if the cut is used.
652   fNMuonsMin = low;
653   fNMuonsMax = high;
654   fNMuonsFlag = kTRUE;
655 }
656
657 //___________________________________________________________________________
658 void AliEventTagCuts::SetNPionRange(Int_t low, Int_t high) {
659   //Sets the pion multiplicity range
660   //and the corresponding flag to kTRUE if the cut is used.
661   fNPionsMin = low;
662   fNPionsMax = high;
663   fNPionsFlag = kTRUE;
664
665
666 //___________________________________________________________________________
667 void AliEventTagCuts::SetNKaonRange(Int_t low, Int_t high) {
668   //Sets the kaon multiplicity range
669   //and the corresponding flag to kTRUE if the cut is used.
670   fNKaonsMin = low;
671   fNKaonsMax = high;
672   fNKaonsFlag = kTRUE;
673 }
674
675 //___________________________________________________________________________
676 void AliEventTagCuts::SetNProtonRange(Int_t low, Int_t high) {
677   //Sets the proton multiplicity range
678   //and the corresponding flag to kTRUE if the cut is used.
679   fNProtonsMin = low;
680   fNProtonsMax = high;
681   fNProtonsFlag = kTRUE;
682
683
684 //___________________________________________________________________________
685 void AliEventTagCuts::SetNLambdaRange(Int_t low, Int_t high) {
686   //Sets the lambda multiplicity range
687   //and the corresponding flag to kTRUE if the cut is used.
688   fNLambdasMin = low;
689   fNLambdasMax = high;
690   fNLambdasFlag = kTRUE;
691
692 //___________________________________________________________________________
693 void AliEventTagCuts::SetNPhotonRange(Int_t low, Int_t high) {
694   //Sets the photon multiplicity range
695   //and the corresponding flag to kTRUE if the cut is used.
696   fNPhotonsMin = low;
697   fNPhotonsMax = high;
698   fNPhotonFlag = kTRUE;
699
700 //___________________________________________________________________________
701 void AliEventTagCuts::SetNPi0Range(Int_t low, Int_t high) {
702   //Sets the pi0 multiplicity range
703   //and the corresponding flag to kTRUE if the cut is used.
704   fNPi0sMin = low;
705   fNPi0sMax = high; 
706   fNPi0sFlag = kTRUE;
707 }  
708
709 //___________________________________________________________________________
710 void AliEventTagCuts::SetNNeutronRange(Int_t low, Int_t high) {
711   //Sets the neutron multiplicity range
712   //and the corresponding flag to kTRUE if the cut is used.
713   fNNeutronsMin = low;
714   fNNeutronsMax = high; 
715   fNNeutronsFlag = kTRUE;
716 }
717
718 //___________________________________________________________________________
719 void AliEventTagCuts::SetNKaon0Range(Int_t low, Int_t high) {  
720   //Sets the K0s multiplicity range
721   //and the corresponding flag to kTRUE if the cut is used.
722   fNKaon0sMin = low;
723   fNKaon0sMax = high; 
724   fNKaon0sFlag = kTRUE;
725 }
726
727 //___________________________________________________________________________
728 void AliEventTagCuts::SetTotalPRange(Float_t low, Float_t high) {
729   //Sets the total momentum range
730   //and the corresponding flag to kTRUE if the cut is used.
731   fTotalPMin = low;
732   fTotalPMax = high;
733   fTotalPFlag = kTRUE;
734 }
735
736 //___________________________________________________________________________
737 void AliEventTagCuts::SetMeanPtRange(Float_t low, Float_t high) {
738   //Sets the mean Pt range
739   //and the corresponding flag to kTRUE if the cut is used.
740   fMeanPtMin = low;
741   fMeanPtMax = high;
742   fMeanPtFlag = kTRUE;
743 }  
744
745 //___________________________________________________________________________
746 void AliEventTagCuts::SetTopPtMin(Float_t low) {
747   //Sets the lower limit of the max Pt value
748   //and the corresponding flag to kTRUE if the cut is used.
749   fTopPtMin = low; 
750   fTopPtMinFlag = kTRUE;
751 }
752
753 //___________________________________________________________________________
754 void AliEventTagCuts::SetTotalNeutralPRange(Float_t low, Float_t high) {  
755   //Sets the total momentum of neutral particles range
756   //and the corresponding flag to kTRUE if the cut is used.
757   fTotalNeutralPMin =low ;
758   fTotalNeutralPMax = high;  
759   fTotalNeutralPFlag = kTRUE;
760 }
761 //___________________________________________________________________________
762 void AliEventTagCuts::SetMeanNeutralPtPRange(Float_t low, Float_t high) {  
763   //Sets the mean Pt of neutral particles range
764   //and the corresponding flag to kTRUE if the cut is used.
765   fMeanNeutralPtMin = low;
766   fMeanNeutralPtMax = high; 
767   fMeanNeutralPtFlag = kTRUE;
768 }
769 //___________________________________________________________________________
770 void AliEventTagCuts::SetTopNeutralPtMin(Float_t low) {  
771   //Sets the lower limit of the maximum Pt of neutral particles
772   //and the corresponding flag to kTRUE if the cut is used.
773   fTopNeutralPtMin = low; 
774   fTopNeutralPtMinFlag = kTRUE;
775 }
776
777 //___________________________________________________________________________
778 void AliEventTagCuts::SetEventPlaneAngleRange(Float_t low, Float_t high) {
779   //Sets the event plane range
780   //and the corresponding flag to kTRUE if the cut is used.
781   fEventPlaneAngleMin = low;
782   fEventPlaneAngleMax = high; 
783   fEventPlaneAngleFlag = kTRUE;
784 }
785
786 //___________________________________________________________________________
787 void AliEventTagCuts::SetHBTRadiiRange(Float_t low, Float_t high) {
788   //Sets the HBT radii range
789   //and the corresponding flag to kTRUE if the cut is used.
790   fHBTRadiiMin = low;
791   fHBTRadiiMax = high; 
792   fHBTRadiiFlag = kTRUE;
793 }
794
795 //___________________________________________________________________________
796 Bool_t AliEventTagCuts::IsAccepted(AliEventTag *EvTag) const {
797   //Returns true if the event is accepted otherwise false.
798   if(fVzFlag)
799     if((EvTag->GetVertexZ() < fVzMin) || (EvTag->GetVertexZ() > fVzMax))
800       return kFALSE;
801   
802   if(fVyFlag)
803     if((EvTag->GetVertexY() < fVyMin) || (EvTag->GetVertexY() > fVyMax))
804       return kFALSE;
805   
806   if(fVxFlag)
807     if((EvTag->GetVertexX() < fVxMin) || (EvTag->GetVertexX() > fVxMax))
808       return kFALSE;
809   
810   if(fNParticipantsFlag)
811     if((EvTag->GetNumOfParticipants() < fNParticipantsMin) || (EvTag->GetNumOfParticipants() > fNParticipantsMax))
812       return kFALSE; 
813   
814   if(fImpactParamFlag)
815     if((EvTag->GetImpactParameter() < fImpactParamMin) || (EvTag->GetImpactParameter() > fImpactParamMax))
816       return kFALSE; 
817   
818   if(fPVFlag)
819     if((EvTag->GetVertexFlag() != fPrimaryVertexFlag))
820       return kFALSE; 
821   
822   if(fPVzErrorFlag)
823     if((EvTag->GetVertexZError() < fPrimaryVertexZErrorMin) || (EvTag->GetVertexZError() > fPrimaryVertexZErrorMax))
824       return kFALSE; 
825   if(fTriggerMaskFlag)
826     if((EvTag->GetTriggerMask() != fTriggerMask))
827       return kFALSE; 
828   if(fTriggerClusterFlag)
829     if((EvTag->GetTriggerMask() != fTriggerMask))
830       return kFALSE; 
831
832   if(fZDCNeutron1EnergyFlag)
833     if((EvTag->GetZDCNeutron1Energy() < fZDCNeutron1EnergyMin) || (EvTag->GetZDCNeutron1Energy() > fZDCNeutron1EnergyMax))
834       return kFALSE; 
835   
836   if(fZDCProton1EnergyFlag)
837     if((EvTag->GetZDCProton1Energy() < fZDCProton1EnergyMin) || (EvTag->GetZDCProton1Energy() > fZDCProton1EnergyMax))
838       return kFALSE; 
839   
840   if(fZDCNeutron2EnergyFlag)
841     if((EvTag->GetZDCNeutron2Energy() < fZDCNeutron2EnergyMin) || (EvTag->GetZDCNeutron2Energy() > fZDCNeutron2EnergyMax))
842       return kFALSE; 
843   
844   if(fZDCProton2EnergyFlag)
845     if((EvTag->GetZDCProton2Energy() < fZDCProton2EnergyMin) || (EvTag->GetZDCProton2Energy() > fZDCProton2EnergyMax))
846       return kFALSE; 
847   
848   if(fZDCEMEnergyFlag)
849     if((EvTag->GetZDCEMEnergy(1) < fZDCEMEnergyMin) || (EvTag->GetZDCEMEnergy(1) > fZDCEMEnergyMax))
850       return kFALSE; 
851   
852   if(fT0VertexZFlag)
853     if((EvTag->GetT0VertexZ() < fT0VertexZMin) || (EvTag->GetT0VertexZ() > fT0VertexZMax))
854       return kFALSE; 
855   
856   if(fMultFlag)
857     if((EvTag->GetNumOfTracks() < fMultMin) || (EvTag->GetNumOfTracks() > fMultMax))
858       return kFALSE; 
859   
860   if(fPosMultFlag)
861     if((EvTag->GetNumOfPosTracks() < fPosMultMin) || (EvTag->GetNumOfPosTracks() > fPosMultMax))
862       return kFALSE; 
863   
864   if(fNegMultFlag)
865     if((EvTag->GetNumOfNegTracks() < fNegMultMin) || (EvTag->GetNumOfNegTracks() > fNegMultMax))
866       return kFALSE; 
867   
868   if(fNeutrMultFlag)
869     if((EvTag->GetNumOfNeutrTracks() < fNeutrMultMin) || (EvTag->GetNumOfNeutrTracks() > fNeutrMultMax))
870       return kFALSE; 
871   
872   if(fNV0sFlag)
873     if((EvTag->GetNumOfV0s() < fNV0sMin) || (EvTag->GetNumOfV0s() > fNV0sMax))
874       return kFALSE; 
875   
876   if(fNCascadesFlag)
877     if((EvTag->GetNumOfCascades() < fNCascadesMin) || (EvTag->GetNumOfCascades() > fNCascadesMax))
878       return kFALSE; 
879   
880   if(fNKinksFlag)
881     if((EvTag->GetNumOfKinks() < fNKinksMin) || (EvTag->GetNumOfKinks() > fNKinksMax))
882       return kFALSE; 
883
884
885   if(fNPMDTracksFlag)
886     if((EvTag->GetNumOfPMDTracks() < fNPMDTracksMin) || (EvTag->GetNumOfPMDTracks() > fNPMDTracksMax))
887       return kFALSE; 
888   if(fNFMDTracksFlag)
889     if((EvTag->GetNumOfFMDTracks() < fNFMDTracksMin) || (EvTag->GetNumOfFMDTracks() > fNFMDTracksMax))
890       return kFALSE; 
891   if(fNPHOSClustersFlag)
892     if((EvTag->GetNumOfPHOSClusters() < fNPHOSClustersMin) || (EvTag->GetNumOfPHOSClusters() > fNPHOSClustersMax))
893       return kFALSE; 
894   if(fNEMCALClustersFlag)
895     if((EvTag->GetNumOfEMCALClusters() < fNEMCALClustersMin) || (EvTag->GetNumOfEMCALClusters() > fNEMCALClustersMax))
896       return kFALSE; 
897   if(fNJetCandidatesFlag)
898     if((EvTag->GetNumOfJetCandidates() < fNJetCandidatesMin) || (EvTag->GetNumOfJetCandidates() > fNJetCandidatesMax))
899       return kFALSE; 
900
901
902   if(fTopJetEnergyMinFlag)
903     if((EvTag->GetMaxJetEnergy() < fTopJetEnergyMin))
904       return kFALSE; 
905   
906   if(fNHardPhotonCandidatesFlag)
907     if((EvTag->GetNumOfHardPhotonsCandidates() < fNHardPhotonCandidatesMin) || (EvTag->GetNumOfHardPhotonsCandidates() > fNHardPhotonCandidatesMax))
908       return kFALSE; 
909   
910   if(fTopNeutralEnergyMinFlag)
911     if((EvTag->GetMaxNeutralEnergy() < fTopNeutralEnergyMin))
912       return kFALSE; 
913   
914   if(fNChargedAbove1GeVFlag)
915     if((EvTag->GetNumOfChargedAbove1GeV() < fNChargedAbove1GeVMin) || (EvTag->GetNumOfChargedAbove1GeV() > fNChargedAbove1GeVMax))
916       return kFALSE; 
917   
918   if(fNChargedAbove3GeVFlag)
919     if((EvTag->GetNumOfChargedAbove3GeV() < fNChargedAbove3GeVMin) || (EvTag->GetNumOfChargedAbove3GeV() > fNChargedAbove3GeVMax))
920       return kFALSE; 
921   
922   if(fNChargedAbove10GeVFlag)
923     if((EvTag->GetNumOfChargedAbove10GeV() < fNChargedAbove10GeVMin) || (EvTag->GetNumOfChargedAbove10GeV() > fNChargedAbove10GeVMax))
924       return kFALSE; 
925   
926   if(fNMuonsAbove1GeVFlag)
927     if((EvTag->GetNumOfMuonsAbove1GeV() < fNMuonsAbove1GeVMin) || (EvTag->GetNumOfMuonsAbove1GeV() > fNMuonsAbove1GeVMax))
928       return kFALSE; 
929   
930   if(fNMuonsAbove3GeVFlag)
931     if((EvTag->GetNumOfMuonsAbove3GeV() < fNMuonsAbove3GeVMin) || (EvTag->GetNumOfMuonsAbove3GeV() > fNMuonsAbove3GeVMax))
932       return kFALSE; 
933   
934   if(fNMuonsAbove10GeVFlag)
935     if((EvTag->GetNumOfMuonsAbove10GeV() < fNMuonsAbove10GeVMin) || (EvTag->GetNumOfMuonsAbove10GeV() > fNMuonsAbove10GeVMax))
936       return kFALSE; 
937   
938   if(fNElectronsAbove1GeVFlag)
939     if((EvTag->GetNumOfElectronsAbove1GeV()  < fNElectronsAbove1GeVMin) || (EvTag->GetNumOfElectronsAbove1GeV()  > fNElectronsAbove1GeVMax))
940       return kFALSE; 
941   
942   if(fNElectronsAbove3GeVFlag)
943     if((EvTag->GetNumOfElectronsAbove3GeV() < fNElectronsAbove3GeVMin) || (EvTag->GetNumOfElectronsAbove3GeV() > fNElectronsAbove3GeVMax))
944       return kFALSE; 
945   
946   if(fNElectronsAbove10GeVFlag)
947     if((EvTag->GetNumOfElectronsAbove10GeV() < fNElectronsAbove10GeVMin) || (EvTag->GetNumOfElectronsAbove10GeV() > fNElectronsAbove10GeVMax))
948       return kFALSE; 
949   
950   if(fNElectronsFlag)
951     if((EvTag->GetNumOfElectrons() < fNElectronsMin) || (EvTag->GetNumOfElectrons() > fNElectronsMax))
952       return kFALSE; 
953   
954   if(fNMuonsFlag)
955     if((EvTag->GetNumOfMuons() < fNMuonsMin) || (EvTag->GetNumOfMuons() > fNMuonsMax))
956       return kFALSE; 
957   
958   if(fNPionsFlag)
959     if((EvTag->GetNumOfPions() < fNPionsMin) || (EvTag->GetNumOfPions() > fNPionsMax))
960       return kFALSE; 
961   
962   if(fNKaonsFlag)
963     if((EvTag->GetNumOfKaons() < fNKaonsMin) || (EvTag->GetNumOfKaons() > fNKaonsMax))
964       return kFALSE; 
965   
966   if(fNProtonsFlag)
967     if((EvTag->GetNumOfProtons() < fNProtonsMin) || (EvTag->GetNumOfProtons() > fNProtonsMax))
968       return kFALSE; 
969   
970   if(fNLambdasFlag)
971     if((EvTag->GetNumOfLambdas() < fNLambdasMin) || (EvTag->GetNumOfLambdas() > fNLambdasMax))
972       return kFALSE; 
973   
974   if(fNPhotonFlag)
975     if((EvTag->GetNumOfPhotons() < fNPhotonsMin) || (EvTag->GetNumOfPhotons() > fNPhotonsMax))
976       return kFALSE; 
977   
978   if(fNPi0sFlag)
979     if((EvTag->GetNumOfPi0s() < fNPi0sMin) || (EvTag->GetNumOfPi0s() > fNPi0sMax))
980       return kFALSE; 
981   
982   if(fNNeutronsFlag)
983     if((EvTag->GetNumOfNeutrons() < fNNeutronsMin) || (EvTag->GetNumOfNeutrons() > fNNeutronsMax))
984       return kFALSE; 
985   
986   if(fNKaon0sFlag)
987     if((EvTag->GetNumOfKaon0s() < fNKaon0sMin) || (EvTag->GetNumOfKaon0s() > fNKaon0sMax))
988       return kFALSE; 
989   
990   if(fTotalPFlag)
991     if((EvTag->GetTotalMomentum() < fTotalPMin) || (EvTag->GetTotalMomentum() > fTotalPMax))
992       return kFALSE; 
993   
994   if(fMeanPtFlag)
995     if((EvTag->GetMeanPt() < fMeanPtMin) || (EvTag->GetMeanPt() > fMeanPtMax))
996       return kFALSE; 
997   
998   if(fTopPtMinFlag)
999     if((EvTag->GetMaxPt() < fTopPtMin))
1000       return kFALSE; 
1001   
1002   if(fTotalNeutralPFlag)
1003     if((EvTag->GetNeutralTotalMomentum() < fTotalNeutralPMin) || (EvTag->GetNeutralTotalMomentum() > fTotalNeutralPMax))
1004       return kFALSE; 
1005   
1006   if(fMeanNeutralPtFlag)
1007     if((EvTag->GetNeutralMeanPt() < fMeanNeutralPtMin) || (EvTag->GetNeutralMeanPt() >fMeanNeutralPtMax ))
1008       return kFALSE; 
1009   
1010   if(fTopNeutralPtMinFlag)
1011     if((EvTag->GetNeutralMaxPt() < fTopNeutralPtMin))
1012       return kFALSE; 
1013   
1014   if(fEventPlaneAngleFlag)
1015     if((EvTag->GetEventPlaneAngle() < fEventPlaneAngleMin) || (EvTag->GetEventPlaneAngle() > fEventPlaneAngleMax))
1016       return kFALSE; 
1017   
1018   if(fHBTRadiiFlag)
1019     if((EvTag->GetHBTRadii() < fHBTRadiiMin) || (EvTag->GetHBTRadii() > fHBTRadiiMax))
1020       return kFALSE; 
1021   
1022   return kTRUE;
1023 }