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