]>
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 | //____________________________________________________// |
c7e89ea3 | 27 | void SetParticipantsRange(Int_t i1, Int_t i2); |
28 | void SetImpactParamRange(Float_t r1, Float_t r2); | |
c7e89ea3 | 29 | void SetPrimaryVertexXRange(Float_t r1, Float_t r2); |
30 | void SetPrimaryVertexYRange(Float_t r1, Float_t r2); | |
31 | void SetPrimaryVertexZRange(Float_t r1, Float_t r2); | |
c7e89ea3 | 32 | void SetPrimaryVertexFlag(Int_t i); |
33 | ||
7e73fbbd | 34 | void SetPrimaryVertexZErrorRange(Float_t r1, Float_t r2) {fPrimaryVertexZErrorMin = r1; fPrimaryVertexZErrorMax = r2; fPVzErrorFlag = kTRUE;} |
35 | void SetTriggerMask(ULong64_t trmask) {fTriggerMask = trmask; fTriggerMaskFlag = kTRUE;} | |
36 | void SetTriggerCluster(UChar_t trcluster) {fTriggerCluster = trcluster;fTriggerClusterFlag = kTRUE;} | |
37 | ||
32a5cab4 | 38 | void SetZDCNeutr1Range(Float_t r1, Float_t r2); |
39 | void SetZDCProt1Range(Float_t r1, Float_t r2); | |
c7e89ea3 | 40 | void SetZDCEMRange(Float_t r1, Float_t r2); |
32a5cab4 | 41 | void SetZDCNeutr2Range(Float_t r1, Float_t r2); |
42 | void SetZDCProt2Range(Float_t r1, Float_t r2); | |
c7e89ea3 | 43 | void SetT0VertexZRange(Float_t r1, Float_t r2); |
c7e89ea3 | 44 | void SetMultiplicityRange(Int_t n1, Int_t n2); |
45 | void SetPosMultiplicityRange(Int_t n1, Int_t n2); | |
46 | void SetNegMultiplicityRange(Int_t n1, Int_t n2); | |
47 | void SetNeutrMultiplicityRange(Int_t n1, Int_t n2); | |
48 | void SetV0sRange(Int_t n1, Int_t n2); | |
49 | void SetCascadesRange(Int_t n1, Int_t n2); | |
50 | void SetKinksRange(Int_t n1, Int_t n2); | |
51 | ||
7e73fbbd | 52 | void SetNumOfPMDTracksRange(Int_t n1, Int_t n2) {fPMDTracksMin = n1; fPMDTracksMax = n2; fPMDTracksFlag = kTRUE;} |
53 | void SetNumOfFMDTracksRange(Int_t n1, Int_t n2) {fFMDTracksMin = n1; fFMDTracksMax = n2; fFMDTracksFlag = kTRUE;} | |
54 | void SetNumOfPHOSClustersRange(Int_t n1, Int_t n2) {fPHOSClustersMin = n1; fPHOSClustersMax = n2; fPHOSClustersFlag = kTRUE;} | |
55 | void SetNumOfEMCALClustersRange(Int_t n1, Int_t n2) {fEMCALClustersMin = n1; fEMCALClustersMax = n2; fEMCALClustersFlag = kTRUE;} | |
56 | void SetNumOfJetCandidatesRange(Int_t n1, Int_t n2) {fJetCandidatesMin = n1; fJetCandidatesMax = n2; fJetCandidatesFlag = kTRUE;} | |
57 | ||
c7e89ea3 | 58 | void SetMaxJetEnergy(Float_t r1); |
59 | void SetMaxNeutralEnergy(Float_t r1); | |
60 | void SetHardPhotonsRange(Int_t i1, Int_t i2); | |
c7e89ea3 | 61 | void SetNChargedAbove1GeVRange(Int_t i1, Int_t i2); |
62 | void SetNChargedAbove3GeVRange(Int_t i1, Int_t i2); | |
63 | void SetNChargedAbove10GeVRange(Int_t i1, Int_t i2); | |
64 | void SetNMuonsAbove1GeVRange(Int_t i1, Int_t i2); | |
65 | void SetNMuonsAbove3GeVRange(Int_t i1, Int_t i2); | |
66 | void SetNMuonsAbove10GeVRange(Int_t i1, Int_t i2); | |
67 | void SetNElectronsAbove1GeVRange(Int_t i1, Int_t i2); | |
68 | void SetNElectronsAbove3GeVRange(Int_t i1, Int_t i2); | |
69 | void SetNElectronsAbove10GeVRange(Int_t i1, Int_t i2); | |
c7e89ea3 | 70 | void SetNElectronRange(Int_t n1, Int_t n2); |
71 | void SetNMuonRange(Int_t n1, Int_t n2); | |
72 | void SetNPionRange(Int_t n1, Int_t n2); | |
73 | void SetNKaonRange(Int_t n1, Int_t n2); | |
74 | void SetNProtonRange(Int_t n1, Int_t n2); | |
75 | void SetNLambdaRange(Int_t n1, Int_t n2); | |
76 | void SetNPhotonRange(Int_t n1, Int_t n2); | |
77 | void SetNPi0Range(Int_t n1, Int_t n2); | |
78 | void SetNNeutronRange(Int_t n1, Int_t n2); | |
7e73fbbd | 79 | void SetNKaon0Range(Int_t n1, Int_t n2); |
c7e89ea3 | 80 | void SetTotalPRange(Float_t r1, Float_t r2); |
81 | void SetMeanPtRange(Float_t r1, Float_t r2); | |
82 | void SetMaxPt(Float_t r1); | |
83 | void SetTotalNeutralPRange(Float_t r1, Float_t r2); | |
84 | void SetMeanNeutralPtPRange(Float_t r1, Float_t r2); | |
85 | void SetMaxNeutralPt(Float_t r1); | |
86 | void SetEvPlaneAngleRange(Float_t r1, Float_t r2); | |
87 | void SetHBTRadiiRange(Float_t r1, Float_t r2); | |
88 | ||
89 | Bool_t IsAccepted(AliEventTag *EvTag) const; | |
90 | ||
7e73fbbd | 91 | //____________________________________________________// |
c7e89ea3 | 92 | private: |
93 | Float_t fVxMin, fVxMax; //Definition of the range of the Vx | |
94 | Bool_t fVxFlag; //Shows whether this cut is used or not | |
95 | Float_t fVyMin, fVyMax; //Definition of the range of the Vy | |
96 | Bool_t fVyFlag; //Shows whether this cut is used or not | |
97 | Float_t fVzMin, fVzMax; //Definition of the range of the Vz | |
98 | Bool_t fVzFlag; //Shows whether this cut is used or not | |
99 | Int_t fParticipantsMin, fParticipantMax; //# participants range | |
100 | Bool_t fParticipantsFlag;//Shows whether this cut is used or not | |
101 | Float_t fImpactParamMin, fImpactParamMax; //Impact parameter range | |
102 | Bool_t fImpactParamFlag; //Shows whether this cut is used or not | |
103 | Int_t fPrimaryVertexFlag; //Primary vertex flag: 0->not found, 1->found | |
104 | Bool_t fPVFlag; //Shows whether this cut is used or not | |
7e73fbbd | 105 | |
106 | Float_t fPrimaryVertexZErrorMin, fPrimaryVertexZErrorMax; //Range of the primary vertex z error | |
107 | Bool_t fPVzErrorFlag; //Shows whether this cut is used or not | |
108 | ULong64_t fTriggerMask; //trigger mask definition | |
109 | Bool_t fTriggerMaskFlag; //Shows whether this cut is used or not | |
110 | UChar_t fTriggerCluster; //trigger cluster definition | |
111 | Bool_t fTriggerClusterFlag; //Shows whether this cut is used or not | |
c7e89ea3 | 112 | |
32a5cab4 | 113 | Float_t fZDCNeutron1EnergyMin, fZDCNeutron1EnergyMax; //ZDC min,max - neutron |
114 | Bool_t fZDCNeutron1EnergyFlag;//Shows whether this cut is used or not | |
115 | Float_t fZDCProton1EnergyMin, fZDCProton1EnergyMax; //ZDC min,max - proton | |
116 | Bool_t fZDCProton1EnergyFlag;//Shows whether this cut is used or not | |
117 | Float_t fZDCNeutron2EnergyMin, fZDCNeutron2EnergyMax; //ZDC min,max - neutron | |
118 | Bool_t fZDCNeutron2EnergyFlag;//Shows whether this cut is used or not | |
119 | Float_t fZDCProton2EnergyMin, fZDCProton2EnergyMax; //ZDC min,max - proton | |
120 | Bool_t fZDCProton2EnergyFlag;//Shows whether this cut is used or not | |
c7e89ea3 | 121 | Float_t fZDCEMEnergyMin, fZDCEMEnergyMax; //ZDC min,max - em |
122 | Bool_t fZDCEMEnergyFlag;//Shows whether this cut is used or not | |
123 | Float_t fT0VertexZMin, fT0VertexZMax; //T0 min, max | |
7e73fbbd | 124 | Bool_t fT0VertexZFlag;//Shows whether this cut is used or not |
c7e89ea3 | 125 | Int_t fMultMin, fMultMax; //Definition of the range of the multiplicity |
126 | Bool_t fMultFlag;//Shows whether this cut is used or not | |
127 | Int_t fMultPosMin, fMultPosMax; //Positive tracks multiplicity range | |
128 | Bool_t fMultPosFlag;//Shows whether this cut is used or not | |
129 | Int_t fMultNegMin, fMultNegMax; //Negative tracks multiplicity range | |
130 | Bool_t fMultNegFlag;//Shows whether this cut is used or not | |
131 | Int_t fMultNeutrMin, fMultNeutrMax; //Neutral tracks multiplicity range | |
132 | Bool_t fMultNeutrFlag;//Shows whether this cut is used or not | |
133 | Int_t fV0sMin, fV0sMax; //Range of V0s | |
134 | Bool_t fV0sFlag;//Shows whether this cut is used or not | |
135 | Int_t fCascadesMin, fCascadesMax; //Range of cascades | |
136 | Bool_t fCascadesFlag;//Shows whether this cut is used or not | |
137 | Int_t fkinksMin, fkinksMax; //Range of kinks | |
138 | Bool_t fkinksFlag;//Shows whether this cut is used or not | |
139 | ||
7e73fbbd | 140 | Int_t fPMDTracksMin, fPMDTracksMax; //Range of PMD tracks |
141 | Bool_t fPMDTracksFlag;//Shows whether this cut is used or not | |
142 | Int_t fFMDTracksMin, fFMDTracksMax; //Range of FMD tracks | |
143 | Bool_t fFMDTracksFlag;//Shows whether this cut is used or not | |
144 | Int_t fPHOSClustersMin, fPHOSClustersMax; //Range of PHOS clusters | |
145 | Bool_t fPHOSClustersFlag;//Shows whether this cut is used or not | |
146 | Int_t fEMCALClustersMin, fEMCALClustersMax; //Range of EMCAL clusters | |
147 | Bool_t fEMCALClustersFlag;//Shows whether this cut is used or not | |
148 | Int_t fJetCandidatesMin, fJetCandidatesMax; //Range of jet candidates | |
149 | Bool_t fJetCandidatesFlag;//Shows whether this cut is used or not | |
150 | ||
c7e89ea3 | 151 | Float_t fMaxJetEnergy; //max jet energy info |
152 | Bool_t fMaxJetEnergyFlag;//Shows whether this cut is used or not | |
153 | ||
154 | Int_t fNHardPhotonsCandidatesMin, fNHardPhotonsCandidatesMax; //Hard photons candidates | |
155 | Bool_t fNHardPhotonsCandidatesFlag;//Shows whether this cut is used or not | |
156 | Float_t fMaxNeutralEnergy; //max neutral energy info | |
7e73fbbd | 157 | Bool_t fMaxNeutralFlag;//Shows whether this cut is used or not |
c7e89ea3 | 158 | Int_t fChargedAbove1GeVMin, fChargedAbove1GeVMax;//Definition of the range of the number of charged above 1GeV |
159 | Bool_t fChargedAbove1GeVFlag;//Shows whether this cut is used or not | |
160 | Int_t fChargedAbove3GeVMin, fChargedAbove3GeVMax;//Definition of the range of the number of charged above 3GeV | |
161 | Bool_t fChargedAbove3GeVFlag;//Shows whether this cut is used or not | |
162 | Int_t fChargedAbove10GeVMin, fChargedAbove10GeVMax;//Definition of the range of the number of charged above 10GeV | |
163 | Bool_t fChargedAbove10GeVFlag;//Shows whether this cut is used or not | |
164 | Int_t fMuonsAbove1GeVMin, fMuonsAbove1GeVMax;//Definition of the range of the number of muons above 1GeV | |
165 | Bool_t fMuonsAbove1GeVFlag;//Shows whether this cut is used or not | |
166 | Int_t fMuonsAbove3GeVMin, fMuonsAbove3GeVMax;//Definition of the range of the number of muons above 3GeV | |
167 | Bool_t fMuonsAbove3GeVFlag;//Shows whether this cut is used or not | |
168 | Int_t fMuonsAbove10GeVMin, fMuonsAbove10GeVMax; //Definition of the range of the number of muons above 10GeV | |
169 | Bool_t fMuonsAbove10GeVFlag;//Shows whether this cut is used or not | |
170 | Int_t fElectronsAbove1GeVMin, fElectronsAbove1GeVMax;//Definition of the range of the number of electorns above 1GeV | |
171 | Bool_t fElectronsAbove1GeVFlag;//Shows whether this cut is used or not | |
172 | Int_t fElectronsAbove3GeVMin, fElectronsAbove3GeVMax;//Definition of the range of the number of electorns above 3GeV | |
173 | Bool_t fElectronsAbove3GeVFlag;//Shows whether this cut is used or not | |
174 | Int_t fElectronsAbove10GeVMin,fElectronsAbove10GeVMax;//Definition of the range of the number of electorns above 10GeV | |
7e73fbbd | 175 | Bool_t fElectronsAbove10GeVFlag;//Shows whether this cut is used or not |
c7e89ea3 | 176 | Int_t fElectronsMin, fElectronsMax; //Number of electrons range |
177 | Bool_t fElectronsFlag;//Shows whether this cut is used or not | |
178 | Int_t fMuonsMin, fMuonsMax; //Number of muons range | |
179 | Bool_t fMuonsFlag;//Shows whether this cut is used or not | |
180 | Int_t fPionsMin, fPionsMax; //Number of pions range | |
181 | Bool_t fPionsFlag;//Shows whether this cut is used or not | |
182 | Int_t fKaonsMin, fKaonsMax; //Number of kaons range | |
183 | Bool_t fKaonsFlag;//Shows whether this cut is used or not | |
184 | Int_t fProtonsMin, fProtonsMax; //Number of protons range | |
185 | Bool_t fProtonsFlag;//Shows whether this cut is used or not | |
186 | Int_t fLambdasMin, fLambdasMax; //Number of lambdas range | |
187 | Bool_t fLambdasFlag;//Shows whether this cut is used or not | |
188 | Int_t fPhotonsMin, fPhotonsMax; //Number of photons range | |
189 | Bool_t fPhotonFlag;//Shows whether this cut is used or not | |
190 | Int_t fPi0sMin, fPi0sMax; //Number of Pi0s range | |
191 | Bool_t fPi0sFlag;//Shows whether this cut is used or not | |
192 | Int_t fNeutronsMin, fNeutronsMax; //Number of neutrons range | |
193 | Bool_t fNeutronsFlag;//Shows whether this cut is used or not | |
194 | Int_t fKaon0sMin, fKaon0sMax; //Number of K0s range | |
7e73fbbd | 195 | Bool_t fKaon0sFlag;//Shows whether this cut is used or not |
c7e89ea3 | 196 | Float_t fTotalPMin, fTotalPMax; //Range of the sum of the momentum per event |
197 | Bool_t fTotalPFlag;//Shows whether this cut is used or not | |
198 | Float_t fMeanPtMin, fMeanPtMax; //Range of mean Pt per event | |
199 | Bool_t fMeanPtFlag;//Shows whether this cut is used or not | |
200 | Float_t fMaxPt; //Max Pt for each event | |
201 | Bool_t fMaxPtFlag;//Shows whether this cut is used or not | |
202 | Float_t fTotalNeutralPMin, fTotalNeutralPMax; //Sum of the momentum per event for neutral | |
203 | Bool_t fTotalNeutralPFlag;//Shows whether this cut is used or not | |
204 | Float_t fMeanNeutralPtMin, fMeanNeutralPtMax; //Mean Pt per event for neutral | |
205 | Bool_t fMeanNeutralPtFlag;//Shows whether this cut is used or not | |
206 | Float_t fMaxNeutralPt; //Max Pt for each event for neutral | |
207 | Bool_t fMaxNeutralPtFlag;//Shows whether this cut is used or not | |
208 | Float_t fEventPlaneAngleMin, fEventPlaneAngleMax; //event plane info | |
209 | Bool_t fEventPlaneAngleFlag;//Shows whether this cut is used or not | |
210 | Float_t fHBTRadiiMin, fHBTRadiiMax; //HBT info | |
211 | Bool_t fHBTRadiiFlag;//Shows whether this cut is used or not | |
212 | ||
7e73fbbd | 213 | ClassDef(AliEventTagCuts, 2) |
214 | }; | |
c7e89ea3 | 215 | |
216 | #endif |