]>
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); | |
73 | void SetNMuonRange(Int_t low, Int_t high); | |
74 | void SetNPionRange(Int_t low, Int_t high); | |
75 | void SetNKaonRange(Int_t low, Int_t high); | |
76 | void SetNProtonRange(Int_t low, Int_t high); | |
77 | void SetNLambdaRange(Int_t low, Int_t high); | |
78 | void SetNPhotonRange(Int_t low, Int_t high); | |
79 | void SetNPi0Range(Int_t low, Int_t high); | |
80 | void SetNNeutronRange(Int_t low, Int_t high); | |
81 | void SetNKaon0Range(Int_t low, Int_t high); | |
82 | void SetTotalPRange(Float_t low, Float_t high); | |
83 | void SetMeanPtRange(Float_t low, Float_t high); | |
84 | void SetTopPtMin(Float_t low); | |
85 | void SetTotalNeutralPRange(Float_t low, Float_t high); | |
86 | void SetMeanNeutralPtPRange(Float_t low, Float_t high); | |
87 | void SetTopNeutralPtMin(Float_t low); | |
63fafb59 | 88 | void SetEventPlaneAngleRange(Float_t low, Float_t high); |
915d9c13 | 89 | void SetHBTRadiiRange(Float_t low, Float_t high); |
c7e89ea3 | 90 | |
91 | Bool_t IsAccepted(AliEventTag *EvTag) const; | |
92 | ||
7e73fbbd | 93 | //____________________________________________________// |
c7e89ea3 | 94 | private: |
63fafb59 | 95 | Int_t fNParticipantsMin, fNParticipantsMax; // # participants range |
96 | Bool_t fNParticipantsFlag; // Shows whether this cut is used or not | |
97 | Float_t fImpactParamMin, fImpactParamMax; // Impact parameter range | |
98 | Bool_t fImpactParamFlag; // Shows whether this cut is used or not | |
99 | ||
100 | Float_t fVxMin, fVxMax; // Definition of the range of the Vx | |
101 | Bool_t fVxFlag; // Shows whether this cut is used or not | |
102 | Float_t fVyMin, fVyMax; // Definition of the range of the Vy | |
103 | Bool_t fVyFlag; // Shows whether this cut is used or not | |
104 | Float_t fVzMin, fVzMax; // Definition of the range of the Vz | |
105 | Bool_t fVzFlag; // Shows whether this cut is used or not | |
106 | Int_t fPrimaryVertexFlag; // Primary vertex flag: 0->not found, 1->found | |
107 | Bool_t fPVFlag; // Shows whether this cut is used or not | |
108 | Float_t fPrimaryVertexZErrorMin, fPrimaryVertexZErrorMax; // Range of the primary vertex z error | |
109 | Bool_t fPVzErrorFlag; // Shows whether this cut is used or not | |
110 | ||
111 | ULong64_t fTriggerMask; // trigger mask definition | |
112 | Bool_t fTriggerMaskFlag; // Shows whether this cut is used or not | |
113 | UChar_t fTriggerCluster; // trigger cluster definition | |
114 | Bool_t fTriggerClusterFlag; // Shows whether this cut is used or not | |
c7e89ea3 | 115 | |
63fafb59 | 116 | Float_t fZDCNeutron1EnergyMin, fZDCNeutron1EnergyMax; // ZDC min,max - neutron |
117 | Bool_t fZDCNeutron1EnergyFlag; // Shows whether this cut is used or not | |
118 | Float_t fZDCProton1EnergyMin, fZDCProton1EnergyMax; // ZDC min,max - proton | |
119 | Bool_t fZDCProton1EnergyFlag; // Shows whether this cut is used or not | |
120 | Float_t fZDCNeutron2EnergyMin, fZDCNeutron2EnergyMax; // ZDC min,max - neutron | |
121 | Bool_t fZDCNeutron2EnergyFlag; // Shows whether this cut is used or not | |
122 | Float_t fZDCProton2EnergyMin, fZDCProton2EnergyMax; // ZDC min,max - proton | |
123 | Bool_t fZDCProton2EnergyFlag; // Shows whether this cut is used or not | |
124 | Float_t fZDCEMEnergyMin, fZDCEMEnergyMax; // ZDC min,max - em | |
125 | Bool_t fZDCEMEnergyFlag; // Shows whether this cut is used or not | |
126 | Float_t fT0VertexZMin, fT0VertexZMax; // T0 min, max | |
127 | Bool_t fT0VertexZFlag; // Shows whether this cut is used or not | |
128 | ||
129 | Int_t fMultMin, fMultMax; // Definition of the range of the multiplicity | |
130 | Bool_t fMultFlag; // Shows whether this cut is used or not | |
131 | Int_t fPosMultMin, fPosMultMax; // Positive tracks multiplicity range | |
132 | Bool_t fPosMultFlag; // Shows whether this cut is used or not | |
133 | Int_t fNegMultMin, fNegMultMax; // Negative tracks multiplicity range | |
134 | Bool_t fNegMultFlag; // Shows whether this cut is used or not | |
135 | Int_t fNeutrMultMin, fNeutrMultMax; // Neutral tracks multiplicity range | |
136 | Bool_t fNeutrMultFlag; // Shows whether this cut is used or not | |
137 | Int_t fNV0sMin, fNV0sMax; // Range of # of V0s | |
138 | Bool_t fNV0sFlag; // Shows whether this cut is used or not | |
139 | Int_t fNCascadesMin, fNCascadesMax; // Range of # of cascades | |
140 | Bool_t fNCascadesFlag; // Shows whether this cut is used or not | |
141 | Int_t fNKinksMin, fNKinksMax; // Range of # of kinks | |
142 | Bool_t fNKinksFlag; // Shows whether this cut is used or not | |
c7e89ea3 | 143 | |
63fafb59 | 144 | Int_t fNPMDTracksMin, fNPMDTracksMax; // Range of # of PMD tracks |
145 | Bool_t fNPMDTracksFlag; // Shows whether this cut is used or not | |
146 | Int_t fNFMDTracksMin, fNFMDTracksMax; // Range of # of FMD tracks | |
147 | Bool_t fNFMDTracksFlag; // Shows whether this cut is used or not | |
148 | Int_t fNPHOSClustersMin, fNPHOSClustersMax; // Range of # of PHOS clusters | |
149 | Bool_t fNPHOSClustersFlag; // Shows whether this cut is used or not | |
150 | Int_t fNEMCALClustersMin, fNEMCALClustersMax; // Range of # of EMCAL clusters | |
151 | Bool_t fNEMCALClustersFlag; // Shows whether this cut is used or not | |
152 | Int_t fNJetCandidatesMin, fNJetCandidatesMax; // Range of # of jet candidates | |
153 | Bool_t fNJetCandidatesFlag; // Shows whether this cut is used or not | |
154 | ||
155 | Float_t fTopJetEnergyMin; // top jet energy minimum value | |
156 | Bool_t fTopJetEnergyMinFlag; // Shows whether this cut is used or not | |
157 | Float_t fTopNeutralEnergyMin; // top neutral energy minimum value | |
158 | Bool_t fTopNeutralEnergyMinFlag; // Shows whether this cut is used or not | |
c7e89ea3 | 159 | |
63fafb59 | 160 | Int_t fNHardPhotonCandidatesMin, fNHardPhotonCandidatesMax; // # of hard photons candidates |
161 | Bool_t fNHardPhotonCandidatesFlag; // Shows whether this cut is used or not | |
162 | Int_t fNChargedAbove1GeVMin, fNChargedAbove1GeVMax; // Definition of the range of the # of charged above 1GeV | |
163 | Bool_t fNChargedAbove1GeVFlag; // Shows whether this cut is used or not | |
164 | Int_t fNChargedAbove3GeVMin, fNChargedAbove3GeVMax; // Definition of the range of the # of charged above 3GeV | |
165 | Bool_t fNChargedAbove3GeVFlag; // Shows whether this cut is used or not | |
166 | Int_t fNChargedAbove10GeVMin, fNChargedAbove10GeVMax; // Definition of the range of the # of charged above 10GeV | |
167 | Bool_t fNChargedAbove10GeVFlag; // Shows whether this cut is used or not | |
168 | Int_t fNMuonsAbove1GeVMin, fNMuonsAbove1GeVMax; // Definition of the range of the # of muons above 1GeV | |
169 | Bool_t fNMuonsAbove1GeVFlag; // Shows whether this cut is used or not | |
170 | Int_t fNMuonsAbove3GeVMin, fNMuonsAbove3GeVMax; // Definition of the range of the # of muons above 3GeV | |
171 | Bool_t fNMuonsAbove3GeVFlag; // Shows whether this cut is used or not | |
172 | Int_t fNMuonsAbove10GeVMin, fNMuonsAbove10GeVMax; // Definition of the range of the # of muons above 10GeV | |
173 | Bool_t fNMuonsAbove10GeVFlag; // Shows whether this cut is used or not | |
174 | Int_t fNElectronsAbove1GeVMin, fNElectronsAbove1GeVMax; // Definition of the range of the # of electorns above 1GeV | |
175 | Bool_t fNElectronsAbove1GeVFlag; // Shows whether this cut is used or not | |
176 | Int_t fNElectronsAbove3GeVMin, fNElectronsAbove3GeVMax; // Definition of the range of the # of electorns above 3GeV | |
177 | Bool_t fNElectronsAbove3GeVFlag; // Shows whether this cut is used or not | |
178 | Int_t fNElectronsAbove10GeVMin,fNElectronsAbove10GeVMax; // Definition of the range of the # of electorns above 10GeV | |
179 | Bool_t fNElectronsAbove10GeVFlag; // Shows whether this cut is used or not | |
180 | Int_t fNElectronsMin, fNElectronsMax; // # of electrons range | |
181 | Bool_t fNElectronsFlag; // Shows whether this cut is used or not | |
182 | Int_t fNMuonsMin, fNMuonsMax; // # of muons range | |
183 | Bool_t fNMuonsFlag; // Shows whether this cut is used or not | |
184 | Int_t fNPionsMin, fNPionsMax; // # of pions range | |
185 | Bool_t fNPionsFlag; // Shows whether this cut is used or not | |
186 | Int_t fNKaonsMin, fNKaonsMax; // # of kaons range | |
187 | Bool_t fNKaonsFlag; // Shows whether this cut is used or not | |
188 | Int_t fNProtonsMin, fNProtonsMax; // # of protons range | |
189 | Bool_t fNProtonsFlag; // Shows whether this cut is used or not | |
190 | Int_t fNLambdasMin, fNLambdasMax; // # of lambdas range | |
191 | Bool_t fNLambdasFlag; // Shows whether this cut is used or not | |
192 | Int_t fNPhotonsMin, fNPhotonsMax; // # of photons range | |
193 | Bool_t fNPhotonFlag; // Shows whether this cut is used or not | |
194 | Int_t fNPi0sMin, fNPi0sMax; // # of Pi0s range | |
195 | Bool_t fNPi0sFlag; // Shows whether this cut is used or not | |
196 | Int_t fNNeutronsMin, fNNeutronsMax; // # of neutrons range | |
197 | Bool_t fNNeutronsFlag; // Shows whether this cut is used or not | |
198 | Int_t fNKaon0sMin, fNKaon0sMax; // # of K0s range | |
199 | Bool_t fNKaon0sFlag; // Shows whether this cut is used or not | |
200 | Float_t fTotalPMin, fTotalPMax; // Range of the sum of the momentum per event | |
201 | Bool_t fTotalPFlag; // Shows whether this cut is used or not | |
202 | Float_t fMeanPtMin, fMeanPtMax; // Range of mean Pt per event | |
203 | Bool_t fMeanPtFlag; // Shows whether this cut is used or not | |
204 | Float_t fTopPtMin; // Max Pt for each event | |
205 | Bool_t fTopPtMinFlag; // Shows whether this cut is used or not | |
206 | Float_t fTotalNeutralPMin, fTotalNeutralPMax; // Sum of the momentum per event for neutral | |
207 | Bool_t fTotalNeutralPFlag; // Shows whether this cut is used or not | |
208 | Float_t fMeanNeutralPtMin, fMeanNeutralPtMax; // Mean Pt per event for neutral | |
209 | Bool_t fMeanNeutralPtFlag; // Shows whether this cut is used or not | |
210 | Float_t fTopNeutralPtMin; // Minimum value for highest Pt for the event for neutral | |
211 | Bool_t fTopNeutralPtMinFlag; // Shows whether this cut is used or not | |
212 | Float_t fEventPlaneAngleMin, fEventPlaneAngleMax; // event plane info | |
213 | Bool_t fEventPlaneAngleFlag; // Shows whether this cut is used or not | |
214 | Float_t fHBTRadiiMin, fHBTRadiiMax; // HBT info | |
215 | Bool_t fHBTRadiiFlag; // Shows whether this cut is used or not | |
c7e89ea3 | 216 | |
7e73fbbd | 217 | ClassDef(AliEventTagCuts, 2) |
218 | }; | |
c7e89ea3 | 219 | |
220 | #endif |