]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STEER/AliEventTagCuts.h
Method ReadNext moved to public (C.Cheshkov)
[u/mrichter/AliRoot.git] / STEER / AliEventTagCuts.h
CommitLineData
c7e89ea3 1#ifndef ALIEVENTTAGCUTS_H
2#define ALIEVENTTAGCUTS_H
3/* See cxx source for full Copyright notice */
4
5
6/* $Id$ */
7
8//-------------------------------------------------------------------------
9// Class AliEventTagCuts
10// This is the class for the cuts in event tags
11//
12// Origin: Panos Christakoglou, UOA-CERN, Panos.Christakoglou@cern.ch
13//-------------------------------------------------------------------------
14
15#include <TObject.h>
16
17class AliEventTag;
18
19class AliEventTagCuts : public TObject
20{
21 public:
22 AliEventTagCuts();
23
24 ~AliEventTagCuts();
25
26 void Reset();
27
28 void SetParticipantsRange(Int_t i1, Int_t i2);
29 void SetImpactParamRange(Float_t r1, Float_t r2);
30
31 void SetPrimaryVertexXRange(Float_t r1, Float_t r2);
32 void SetPrimaryVertexYRange(Float_t r1, Float_t r2);
33 void SetPrimaryVertexZRange(Float_t r1, Float_t r2);
34
35 void SetPrimaryVertexFlag(Int_t i);
36
37 void SetZDCNeutrRange(Float_t r1, Float_t r2);
38 void SetZDCProtRange(Float_t r1, Float_t r2);
39 void SetZDCEMRange(Float_t r1, Float_t r2);
40 void SetT0VertexZRange(Float_t r1, Float_t r2);
41
42 void SetMultiplicityRange(Int_t n1, Int_t n2);
43 void SetPosMultiplicityRange(Int_t n1, Int_t n2);
44 void SetNegMultiplicityRange(Int_t n1, Int_t n2);
45 void SetNeutrMultiplicityRange(Int_t n1, Int_t n2);
46 void SetV0sRange(Int_t n1, Int_t n2);
47 void SetCascadesRange(Int_t n1, Int_t n2);
48 void SetKinksRange(Int_t n1, Int_t n2);
49
50 void SetMaxJetEnergy(Float_t r1);
51 void SetMaxNeutralEnergy(Float_t r1);
52 void SetHardPhotonsRange(Int_t i1, Int_t i2);
53
54 void SetNChargedAbove1GeVRange(Int_t i1, Int_t i2);
55 void SetNChargedAbove3GeVRange(Int_t i1, Int_t i2);
56 void SetNChargedAbove10GeVRange(Int_t i1, Int_t i2);
57 void SetNMuonsAbove1GeVRange(Int_t i1, Int_t i2);
58 void SetNMuonsAbove3GeVRange(Int_t i1, Int_t i2);
59 void SetNMuonsAbove10GeVRange(Int_t i1, Int_t i2);
60 void SetNElectronsAbove1GeVRange(Int_t i1, Int_t i2);
61 void SetNElectronsAbove3GeVRange(Int_t i1, Int_t i2);
62 void SetNElectronsAbove10GeVRange(Int_t i1, Int_t i2);
63
64 void SetNElectronRange(Int_t n1, Int_t n2);
65 void SetNMuonRange(Int_t n1, Int_t n2);
66 void SetNPionRange(Int_t n1, Int_t n2);
67 void SetNKaonRange(Int_t n1, Int_t n2);
68 void SetNProtonRange(Int_t n1, Int_t n2);
69 void SetNLambdaRange(Int_t n1, Int_t n2);
70 void SetNPhotonRange(Int_t n1, Int_t n2);
71 void SetNPi0Range(Int_t n1, Int_t n2);
72 void SetNNeutronRange(Int_t n1, Int_t n2);
73 void SetNKaon0Range(Int_t n1, Int_t n2);
74
75 void SetTotalPRange(Float_t r1, Float_t r2);
76 void SetMeanPtRange(Float_t r1, Float_t r2);
77 void SetMaxPt(Float_t r1);
78 void SetTotalNeutralPRange(Float_t r1, Float_t r2);
79 void SetMeanNeutralPtPRange(Float_t r1, Float_t r2);
80 void SetMaxNeutralPt(Float_t r1);
81 void SetEvPlaneAngleRange(Float_t r1, Float_t r2);
82 void SetHBTRadiiRange(Float_t r1, Float_t r2);
83
84 Bool_t IsAccepted(AliEventTag *EvTag) const;
85
86 private:
87 Float_t fVxMin, fVxMax; //Definition of the range of the Vx
88 Bool_t fVxFlag; //Shows whether this cut is used or not
89 Float_t fVyMin, fVyMax; //Definition of the range of the Vy
90 Bool_t fVyFlag; //Shows whether this cut is used or not
91 Float_t fVzMin, fVzMax; //Definition of the range of the Vz
92 Bool_t fVzFlag; //Shows whether this cut is used or not
93 Int_t fParticipantsMin, fParticipantMax; //# participants range
94 Bool_t fParticipantsFlag;//Shows whether this cut is used or not
95 Float_t fImpactParamMin, fImpactParamMax; //Impact parameter range
96 Bool_t fImpactParamFlag; //Shows whether this cut is used or not
97 Int_t fPrimaryVertexFlag; //Primary vertex flag: 0->not found, 1->found
98 Bool_t fPVFlag; //Shows whether this cut is used or not
99
100 Float_t fZDCNeutronEnergyMin, fZDCNeutronEnergyMax; //ZDC min,max - neutron
101 Bool_t fZDCNeutronEnergyFlag;//Shows whether this cut is used or not
102 Float_t fZDCProtonEnergyMin, fZDCProtonEnergyMax; //ZDC min,max - proton
103 Bool_t fZDCProtonEnergyFlag;//Shows whether this cut is used or not
104 Float_t fZDCEMEnergyMin, fZDCEMEnergyMax; //ZDC min,max - em
105 Bool_t fZDCEMEnergyFlag;//Shows whether this cut is used or not
106 Float_t fT0VertexZMin, fT0VertexZMax; //T0 min, max
107 Bool_t fT0VertexZFlag;//Shows whether this cut is used or not
108
109 Int_t fMultMin, fMultMax; //Definition of the range of the multiplicity
110 Bool_t fMultFlag;//Shows whether this cut is used or not
111 Int_t fMultPosMin, fMultPosMax; //Positive tracks multiplicity range
112 Bool_t fMultPosFlag;//Shows whether this cut is used or not
113 Int_t fMultNegMin, fMultNegMax; //Negative tracks multiplicity range
114 Bool_t fMultNegFlag;//Shows whether this cut is used or not
115 Int_t fMultNeutrMin, fMultNeutrMax; //Neutral tracks multiplicity range
116 Bool_t fMultNeutrFlag;//Shows whether this cut is used or not
117 Int_t fV0sMin, fV0sMax; //Range of V0s
118 Bool_t fV0sFlag;//Shows whether this cut is used or not
119 Int_t fCascadesMin, fCascadesMax; //Range of cascades
120 Bool_t fCascadesFlag;//Shows whether this cut is used or not
121 Int_t fkinksMin, fkinksMax; //Range of kinks
122 Bool_t fkinksFlag;//Shows whether this cut is used or not
123
124 Float_t fMaxJetEnergy; //max jet energy info
125 Bool_t fMaxJetEnergyFlag;//Shows whether this cut is used or not
126
127 Int_t fNHardPhotonsCandidatesMin, fNHardPhotonsCandidatesMax; //Hard photons candidates
128 Bool_t fNHardPhotonsCandidatesFlag;//Shows whether this cut is used or not
129 Float_t fMaxNeutralEnergy; //max neutral energy info
130 Bool_t fMaxNeutralFlag;//Shows whether this cut is used or not
131
132 Int_t fChargedAbove1GeVMin, fChargedAbove1GeVMax;//Definition of the range of the number of charged above 1GeV
133 Bool_t fChargedAbove1GeVFlag;//Shows whether this cut is used or not
134 Int_t fChargedAbove3GeVMin, fChargedAbove3GeVMax;//Definition of the range of the number of charged above 3GeV
135 Bool_t fChargedAbove3GeVFlag;//Shows whether this cut is used or not
136 Int_t fChargedAbove10GeVMin, fChargedAbove10GeVMax;//Definition of the range of the number of charged above 10GeV
137 Bool_t fChargedAbove10GeVFlag;//Shows whether this cut is used or not
138 Int_t fMuonsAbove1GeVMin, fMuonsAbove1GeVMax;//Definition of the range of the number of muons above 1GeV
139 Bool_t fMuonsAbove1GeVFlag;//Shows whether this cut is used or not
140 Int_t fMuonsAbove3GeVMin, fMuonsAbove3GeVMax;//Definition of the range of the number of muons above 3GeV
141 Bool_t fMuonsAbove3GeVFlag;//Shows whether this cut is used or not
142 Int_t fMuonsAbove10GeVMin, fMuonsAbove10GeVMax; //Definition of the range of the number of muons above 10GeV
143 Bool_t fMuonsAbove10GeVFlag;//Shows whether this cut is used or not
144 Int_t fElectronsAbove1GeVMin, fElectronsAbove1GeVMax;//Definition of the range of the number of electorns above 1GeV
145 Bool_t fElectronsAbove1GeVFlag;//Shows whether this cut is used or not
146 Int_t fElectronsAbove3GeVMin, fElectronsAbove3GeVMax;//Definition of the range of the number of electorns above 3GeV
147 Bool_t fElectronsAbove3GeVFlag;//Shows whether this cut is used or not
148 Int_t fElectronsAbove10GeVMin,fElectronsAbove10GeVMax;//Definition of the range of the number of electorns above 10GeV
149 Bool_t fElectronsAbove10GeVFlag;//Shows whether this cut is used or not
150
151 Int_t fElectronsMin, fElectronsMax; //Number of electrons range
152 Bool_t fElectronsFlag;//Shows whether this cut is used or not
153 Int_t fMuonsMin, fMuonsMax; //Number of muons range
154 Bool_t fMuonsFlag;//Shows whether this cut is used or not
155 Int_t fPionsMin, fPionsMax; //Number of pions range
156 Bool_t fPionsFlag;//Shows whether this cut is used or not
157 Int_t fKaonsMin, fKaonsMax; //Number of kaons range
158 Bool_t fKaonsFlag;//Shows whether this cut is used or not
159 Int_t fProtonsMin, fProtonsMax; //Number of protons range
160 Bool_t fProtonsFlag;//Shows whether this cut is used or not
161 Int_t fLambdasMin, fLambdasMax; //Number of lambdas range
162 Bool_t fLambdasFlag;//Shows whether this cut is used or not
163 Int_t fPhotonsMin, fPhotonsMax; //Number of photons range
164 Bool_t fPhotonFlag;//Shows whether this cut is used or not
165 Int_t fPi0sMin, fPi0sMax; //Number of Pi0s range
166 Bool_t fPi0sFlag;//Shows whether this cut is used or not
167 Int_t fNeutronsMin, fNeutronsMax; //Number of neutrons range
168 Bool_t fNeutronsFlag;//Shows whether this cut is used or not
169 Int_t fKaon0sMin, fKaon0sMax; //Number of K0s range
170 Bool_t fKaon0sFlag;//Shows whether this cut is used or not
171
172 Float_t fTotalPMin, fTotalPMax; //Range of the sum of the momentum per event
173 Bool_t fTotalPFlag;//Shows whether this cut is used or not
174 Float_t fMeanPtMin, fMeanPtMax; //Range of mean Pt per event
175 Bool_t fMeanPtFlag;//Shows whether this cut is used or not
176 Float_t fMaxPt; //Max Pt for each event
177 Bool_t fMaxPtFlag;//Shows whether this cut is used or not
178 Float_t fTotalNeutralPMin, fTotalNeutralPMax; //Sum of the momentum per event for neutral
179 Bool_t fTotalNeutralPFlag;//Shows whether this cut is used or not
180 Float_t fMeanNeutralPtMin, fMeanNeutralPtMax; //Mean Pt per event for neutral
181 Bool_t fMeanNeutralPtFlag;//Shows whether this cut is used or not
182 Float_t fMaxNeutralPt; //Max Pt for each event for neutral
183 Bool_t fMaxNeutralPtFlag;//Shows whether this cut is used or not
184 Float_t fEventPlaneAngleMin, fEventPlaneAngleMax; //event plane info
185 Bool_t fEventPlaneAngleFlag;//Shows whether this cut is used or not
186 Float_t fHBTRadiiMin, fHBTRadiiMax; //HBT info
187 Bool_t fHBTRadiiFlag;//Shows whether this cut is used or not
188
189 ClassDef(AliEventTagCuts, 1)
190} ;
191
192#endif