]>
Commit | Line | Data |
---|---|---|
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 | ||
17 | class AliEventTag; | |
18 | ||
7e73fbbd | 19 | //___________________________________________________________________________ |
20 | class AliEventTagCuts : public TObject { | |
c7e89ea3 | 21 | public: |
22 | AliEventTagCuts(); | |
c7e89ea3 | 23 | ~AliEventTagCuts(); |
c7e89ea3 | 24 | void Reset(); |
25 | ||
7e73fbbd | 26 | //____________________________________________________// |
915d9c13 | 27 | void SetNParticipantsRange(Int_t low, Int_t high); |
28 | void SetImpactParamRange(Float_t low, Float_t high); | |
c7e89ea3 | 29 | |
915d9c13 | 30 | void SetPrimaryVertexXRange(Float_t low, Float_t high); |
31 | void SetPrimaryVertexYRange(Float_t low, Float_t high); | |
32 | void SetPrimaryVertexZRange(Float_t low, Float_t high); | |
33 | void SetPrimaryVertexFlag(Int_t flag); | |
34 | void SetPrimaryVertexZErrorRange(Float_t low, Float_t high); | |
7e73fbbd | 35 | |
915d9c13 | 36 | void SetTriggerMask(ULong64_t trmask); |
37 | void SetTriggerCluster(UChar_t trcluster); | |
38 | ||
39 | void SetZDCNeutron1Range(Float_t low, Float_t high); | |
40 | void SetZDCProton1Range(Float_t low, Float_t high); | |
41 | void SetZDCEMRange(Float_t low, Float_t high); | |
42 | void SetZDCNeutron2Range(Float_t low, Float_t high); | |
43 | void SetZDCProton2Range(Float_t low, Float_t high); | |
44 | void SetT0VertexZRange(Float_t low, Float_t high); | |
45 | ||
46 | void SetMultiplicityRange(Int_t low, Int_t high); | |
47 | void SetPosMultiplicityRange(Int_t low, Int_t high); | |
48 | void SetNegMultiplicityRange(Int_t low, Int_t high); | |
49 | void SetNeutrMultiplicityRange(Int_t low, Int_t high); | |
50 | void SetNV0sRange(Int_t low, Int_t high); | |
51 | void SetNCascadesRange(Int_t low, Int_t high); | |
52 | void SetNKinksRange(Int_t low, Int_t high); | |
c7e89ea3 | 53 | |
915d9c13 | 54 | void SetNPMDTracksRange(Int_t low, Int_t high); |
55 | void SetNFMDTracksRange(Int_t low, Int_t high); | |
56 | void SetNPHOSClustersRange(Int_t low, Int_t high); | |
57 | void SetNEMCALClustersRange(Int_t low, Int_t high); | |
58 | void SetNJetCandidatesRange(Int_t low, Int_t high); | |
7e73fbbd | 59 | |
915d9c13 | 60 | void SetTopJetEnergyMin(Float_t low); |
61 | void SetTopNeutralEnergyMin(Float_t low); | |
62 | void SetNHardPhotonsRange(Int_t low, Int_t high); | |
63 | void SetNChargedAbove1GeVRange(Int_t low, Int_t high); | |
64 | void SetNChargedAbove3GeVRange(Int_t low, Int_t high); | |
65 | void SetNChargedAbove10GeVRange(Int_t low, Int_t high); | |
66 | void SetNMuonsAbove1GeVRange(Int_t low, Int_t high); | |
67 | void SetNMuonsAbove3GeVRange(Int_t low, Int_t high); | |
68 | void SetNMuonsAbove10GeVRange(Int_t low, Int_t high); | |
69 | void SetNElectronsAbove1GeVRange(Int_t low, Int_t high); | |
70 | void SetNElectronsAbove3GeVRange(Int_t low, Int_t high); | |
71 | void SetNElectronsAbove10GeVRange(Int_t low, Int_t high); | |
72 | void SetNElectronRange(Int_t low, Int_t high); | |
d3893274 | 73 | void SetNFWMuonRange(Int_t low, Int_t high); |
915d9c13 | 74 | void SetNMuonRange(Int_t low, Int_t high); |
75 | void SetNPionRange(Int_t low, Int_t high); | |
76 | void SetNKaonRange(Int_t low, Int_t high); | |
77 | void SetNProtonRange(Int_t low, Int_t high); | |
78 | void SetNLambdaRange(Int_t low, Int_t high); | |
79 | void SetNPhotonRange(Int_t low, Int_t high); | |
80 | void SetNPi0Range(Int_t low, Int_t high); | |
81 | void SetNNeutronRange(Int_t low, Int_t high); | |
82 | void SetNKaon0Range(Int_t low, Int_t high); | |
83 | void SetTotalPRange(Float_t low, Float_t high); | |
84 | void SetMeanPtRange(Float_t low, Float_t high); | |
85 | void SetTopPtMin(Float_t low); | |
86 | void SetTotalNeutralPRange(Float_t low, Float_t high); | |
87 | void SetMeanNeutralPtPRange(Float_t low, Float_t high); | |
88 | void SetTopNeutralPtMin(Float_t low); | |
63fafb59 | 89 | void SetEventPlaneAngleRange(Float_t low, Float_t high); |
915d9c13 | 90 | void SetHBTRadiiRange(Float_t low, Float_t high); |
c7e89ea3 | 91 | |
92 | Bool_t IsAccepted(AliEventTag *EvTag) const; | |
93 | ||
7e73fbbd | 94 | //____________________________________________________// |
c7e89ea3 | 95 | private: |
63fafb59 | 96 | Int_t fNParticipantsMin, fNParticipantsMax; // # participants range |
97 | Bool_t fNParticipantsFlag; // Shows whether this cut is used or not | |
98 | Float_t fImpactParamMin, fImpactParamMax; // Impact parameter range | |
99 | Bool_t fImpactParamFlag; // Shows whether this cut is used or not | |
100 | ||
101 | Float_t fVxMin, fVxMax; // Definition of the range of the Vx | |
102 | Bool_t fVxFlag; // Shows whether this cut is used or not | |
103 | Float_t fVyMin, fVyMax; // Definition of the range of the Vy | |
104 | Bool_t fVyFlag; // Shows whether this cut is used or not | |
105 | Float_t fVzMin, fVzMax; // Definition of the range of the Vz | |
106 | Bool_t fVzFlag; // Shows whether this cut is used or not | |
107 | Int_t fPrimaryVertexFlag; // Primary vertex flag: 0->not found, 1->found | |
108 | Bool_t fPVFlag; // Shows whether this cut is used or not | |
109 | Float_t fPrimaryVertexZErrorMin, fPrimaryVertexZErrorMax; // Range of the primary vertex z error | |
110 | Bool_t fPVzErrorFlag; // Shows whether this cut is used or not | |
111 | ||
112 | ULong64_t fTriggerMask; // trigger mask definition | |
113 | Bool_t fTriggerMaskFlag; // Shows whether this cut is used or not | |
114 | UChar_t fTriggerCluster; // trigger cluster definition | |
115 | Bool_t fTriggerClusterFlag; // Shows whether this cut is used or not | |
c7e89ea3 | 116 | |
63fafb59 | 117 | Float_t fZDCNeutron1EnergyMin, fZDCNeutron1EnergyMax; // ZDC min,max - neutron |
118 | Bool_t fZDCNeutron1EnergyFlag; // Shows whether this cut is used or not | |
119 | Float_t fZDCProton1EnergyMin, fZDCProton1EnergyMax; // ZDC min,max - proton | |
120 | Bool_t fZDCProton1EnergyFlag; // Shows whether this cut is used or not | |
121 | Float_t fZDCNeutron2EnergyMin, fZDCNeutron2EnergyMax; // ZDC min,max - neutron | |
122 | Bool_t fZDCNeutron2EnergyFlag; // Shows whether this cut is used or not | |
123 | Float_t fZDCProton2EnergyMin, fZDCProton2EnergyMax; // ZDC min,max - proton | |
124 | Bool_t fZDCProton2EnergyFlag; // Shows whether this cut is used or not | |
125 | Float_t fZDCEMEnergyMin, fZDCEMEnergyMax; // ZDC min,max - em | |
126 | Bool_t fZDCEMEnergyFlag; // Shows whether this cut is used or not | |
127 | Float_t fT0VertexZMin, fT0VertexZMax; // T0 min, max | |
128 | Bool_t fT0VertexZFlag; // Shows whether this cut is used or not | |
129 | ||
130 | Int_t fMultMin, fMultMax; // Definition of the range of the multiplicity | |
131 | Bool_t fMultFlag; // Shows whether this cut is used or not | |
132 | Int_t fPosMultMin, fPosMultMax; // Positive tracks multiplicity range | |
133 | Bool_t fPosMultFlag; // Shows whether this cut is used or not | |
134 | Int_t fNegMultMin, fNegMultMax; // Negative tracks multiplicity range | |
135 | Bool_t fNegMultFlag; // Shows whether this cut is used or not | |
136 | Int_t fNeutrMultMin, fNeutrMultMax; // Neutral tracks multiplicity range | |
137 | Bool_t fNeutrMultFlag; // Shows whether this cut is used or not | |
138 | Int_t fNV0sMin, fNV0sMax; // Range of # of V0s | |
139 | Bool_t fNV0sFlag; // Shows whether this cut is used or not | |
140 | Int_t fNCascadesMin, fNCascadesMax; // Range of # of cascades | |
141 | Bool_t fNCascadesFlag; // Shows whether this cut is used or not | |
142 | Int_t fNKinksMin, fNKinksMax; // Range of # of kinks | |
143 | Bool_t fNKinksFlag; // Shows whether this cut is used or not | |
c7e89ea3 | 144 | |
63fafb59 | 145 | Int_t fNPMDTracksMin, fNPMDTracksMax; // Range of # of PMD tracks |
146 | Bool_t fNPMDTracksFlag; // Shows whether this cut is used or not | |
147 | Int_t fNFMDTracksMin, fNFMDTracksMax; // Range of # of FMD tracks | |
148 | Bool_t fNFMDTracksFlag; // Shows whether this cut is used or not | |
149 | Int_t fNPHOSClustersMin, fNPHOSClustersMax; // Range of # of PHOS clusters | |
150 | Bool_t fNPHOSClustersFlag; // Shows whether this cut is used or not | |
151 | Int_t fNEMCALClustersMin, fNEMCALClustersMax; // Range of # of EMCAL clusters | |
152 | Bool_t fNEMCALClustersFlag; // Shows whether this cut is used or not | |
153 | Int_t fNJetCandidatesMin, fNJetCandidatesMax; // Range of # of jet candidates | |
154 | Bool_t fNJetCandidatesFlag; // Shows whether this cut is used or not | |
155 | ||
156 | Float_t fTopJetEnergyMin; // top jet energy minimum value | |
157 | Bool_t fTopJetEnergyMinFlag; // Shows whether this cut is used or not | |
158 | Float_t fTopNeutralEnergyMin; // top neutral energy minimum value | |
159 | Bool_t fTopNeutralEnergyMinFlag; // Shows whether this cut is used or not | |
c7e89ea3 | 160 | |
63fafb59 | 161 | Int_t fNHardPhotonCandidatesMin, fNHardPhotonCandidatesMax; // # of hard photons candidates |
162 | Bool_t fNHardPhotonCandidatesFlag; // Shows whether this cut is used or not | |
163 | Int_t fNChargedAbove1GeVMin, fNChargedAbove1GeVMax; // Definition of the range of the # of charged above 1GeV | |
164 | Bool_t fNChargedAbove1GeVFlag; // Shows whether this cut is used or not | |
165 | Int_t fNChargedAbove3GeVMin, fNChargedAbove3GeVMax; // Definition of the range of the # of charged above 3GeV | |
166 | Bool_t fNChargedAbove3GeVFlag; // Shows whether this cut is used or not | |
167 | Int_t fNChargedAbove10GeVMin, fNChargedAbove10GeVMax; // Definition of the range of the # of charged above 10GeV | |
168 | Bool_t fNChargedAbove10GeVFlag; // Shows whether this cut is used or not | |
169 | Int_t fNMuonsAbove1GeVMin, fNMuonsAbove1GeVMax; // Definition of the range of the # of muons above 1GeV | |
170 | Bool_t fNMuonsAbove1GeVFlag; // Shows whether this cut is used or not | |
171 | Int_t fNMuonsAbove3GeVMin, fNMuonsAbove3GeVMax; // Definition of the range of the # of muons above 3GeV | |
172 | Bool_t fNMuonsAbove3GeVFlag; // Shows whether this cut is used or not | |
173 | Int_t fNMuonsAbove10GeVMin, fNMuonsAbove10GeVMax; // Definition of the range of the # of muons above 10GeV | |
174 | Bool_t fNMuonsAbove10GeVFlag; // Shows whether this cut is used or not | |
175 | Int_t fNElectronsAbove1GeVMin, fNElectronsAbove1GeVMax; // Definition of the range of the # of electorns above 1GeV | |
176 | Bool_t fNElectronsAbove1GeVFlag; // Shows whether this cut is used or not | |
177 | Int_t fNElectronsAbove3GeVMin, fNElectronsAbove3GeVMax; // Definition of the range of the # of electorns above 3GeV | |
178 | Bool_t fNElectronsAbove3GeVFlag; // Shows whether this cut is used or not | |
179 | Int_t fNElectronsAbove10GeVMin,fNElectronsAbove10GeVMax; // Definition of the range of the # of electorns above 10GeV | |
180 | Bool_t fNElectronsAbove10GeVFlag; // Shows whether this cut is used or not | |
181 | Int_t fNElectronsMin, fNElectronsMax; // # of electrons range | |
182 | Bool_t fNElectronsFlag; // Shows whether this cut is used or not | |
d3893274 | 183 | Int_t fNFWMuonsMin, fNFWMuonsMax; // # of forward muons range |
184 | Bool_t fNFWMuonsFlag; // Shows whether this cut is used or not | |
63fafb59 | 185 | Int_t fNMuonsMin, fNMuonsMax; // # of muons range |
186 | Bool_t fNMuonsFlag; // Shows whether this cut is used or not | |
187 | Int_t fNPionsMin, fNPionsMax; // # of pions range | |
188 | Bool_t fNPionsFlag; // Shows whether this cut is used or not | |
189 | Int_t fNKaonsMin, fNKaonsMax; // # of kaons range | |
190 | Bool_t fNKaonsFlag; // Shows whether this cut is used or not | |
191 | Int_t fNProtonsMin, fNProtonsMax; // # of protons range | |
192 | Bool_t fNProtonsFlag; // Shows whether this cut is used or not | |
193 | Int_t fNLambdasMin, fNLambdasMax; // # of lambdas range | |
194 | Bool_t fNLambdasFlag; // Shows whether this cut is used or not | |
195 | Int_t fNPhotonsMin, fNPhotonsMax; // # of photons range | |
196 | Bool_t fNPhotonFlag; // Shows whether this cut is used or not | |
197 | Int_t fNPi0sMin, fNPi0sMax; // # of Pi0s range | |
198 | Bool_t fNPi0sFlag; // Shows whether this cut is used or not | |
199 | Int_t fNNeutronsMin, fNNeutronsMax; // # of neutrons range | |
200 | Bool_t fNNeutronsFlag; // Shows whether this cut is used or not | |
201 | Int_t fNKaon0sMin, fNKaon0sMax; // # of K0s range | |
202 | Bool_t fNKaon0sFlag; // Shows whether this cut is used or not | |
203 | Float_t fTotalPMin, fTotalPMax; // Range of the sum of the momentum per event | |
204 | Bool_t fTotalPFlag; // Shows whether this cut is used or not | |
205 | Float_t fMeanPtMin, fMeanPtMax; // Range of mean Pt per event | |
206 | Bool_t fMeanPtFlag; // Shows whether this cut is used or not | |
207 | Float_t fTopPtMin; // Max Pt for each event | |
208 | Bool_t fTopPtMinFlag; // Shows whether this cut is used or not | |
209 | Float_t fTotalNeutralPMin, fTotalNeutralPMax; // Sum of the momentum per event for neutral | |
210 | Bool_t fTotalNeutralPFlag; // Shows whether this cut is used or not | |
211 | Float_t fMeanNeutralPtMin, fMeanNeutralPtMax; // Mean Pt per event for neutral | |
212 | Bool_t fMeanNeutralPtFlag; // Shows whether this cut is used or not | |
213 | Float_t fTopNeutralPtMin; // Minimum value for highest Pt for the event for neutral | |
214 | Bool_t fTopNeutralPtMinFlag; // Shows whether this cut is used or not | |
215 | Float_t fEventPlaneAngleMin, fEventPlaneAngleMax; // event plane info | |
216 | Bool_t fEventPlaneAngleFlag; // Shows whether this cut is used or not | |
217 | Float_t fHBTRadiiMin, fHBTRadiiMax; // HBT info | |
218 | Bool_t fHBTRadiiFlag; // Shows whether this cut is used or not | |
c7e89ea3 | 219 | |
7e73fbbd | 220 | ClassDef(AliEventTagCuts, 2) |
221 | }; | |
c7e89ea3 | 222 | |
223 | #endif |