Line data Source code
1 : #ifndef ALIEVENTTAG_H
2 : #define ALIEVENTTAG_H
3 : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 : * See cxx source for full Copyright notice */
5 :
6 :
7 : /* $Id$ */
8 :
9 : //-------------------------------------------------------------------------
10 : // Class AliEventTag
11 : // This is the class to deal with the tags for the event level
12 : //
13 : // Origin: Panos Christakoglou, UOA-CERN, Panos.Christakoglou@cern.ch
14 : //-------------------------------------------------------------------------
15 :
16 : #include "TObject.h"
17 : #include "TString.h"
18 :
19 : //___________________________________________________________________________
20 : class AliEventTag : public TObject {
21 : public:
22 : AliEventTag();
23 : AliEventTag(const AliEventTag & t);
24 : virtual ~AliEventTag();
25 :
26 : AliEventTag &operator=(const AliEventTag &rhs);
27 :
28 : //____________________________________________________//
29 16 : void SetPeriodNumber(UInt_t n) {fPeriodNumber = n;}
30 16 : void SetOrbitNumber(UInt_t n) {fOrbitNumber = n;}
31 16 : void SetBunchCrossNumber(UShort_t n) {fBunchCrossNumber = n;}
32 :
33 : //*T* void SetFiredTriggerClasses(TString names) {fFiredTriggerClasses = names;}
34 16 : void SetEventType(UInt_t ntype) {fEventType = ntype;}
35 16 : void SetPhysicsFlag(UShort_t nflag) {fPhysicsFlag = nflag;}
36 16 : void SetBackgroungFlag(UShort_t nflag) {fBackgroundFlag = nflag;}
37 :
38 : /* void SetGUID(TString Pid); */
39 : /* void SetPath(TString Pid); */
40 : /* void SetMD5(TString Pid); */
41 : /* void SetTURL(TString Pid); */
42 : /* void SetSize(Long64_t i); */
43 16 : void SetNumOfParticipants(Int_t P) {fNumberOfParticipants = P;}
44 0 : void SetNumOfParticipants2(Int_t P2) {fNumberOfParticipants = P2;}
45 0 : void SetImpactParameter(Float_t Pimpact) {fImpactParameter = Pimpact;}
46 32 : void SetVertexX(Float_t Pvx) {fPrimaryVertexX = Pvx;}
47 32 : void SetVertexY(Float_t Pvy) {fPrimaryVertexY = Pvy;}
48 32 : void SetVertexZ(Float_t Pvz) {fPrimaryVertexZ = Pvz;}
49 16 : void SetVertexFlag(Int_t i) {fPrimaryVertexFlag = i;}
50 32 : void SetVertexZError(Float_t f) { fPrimaryVertexZError = f;}
51 16 : void SetTriggerMask(ULong64_t Ptr) {fTriggerMask = Ptr;}
52 0 : void SetTriggerMaskNext50(ULong64_t Ptr) {fTriggerMaskNext50 = Ptr;}
53 16 : void SetTriggerCluster(UChar_t n) {fTriggerCluster = n;}
54 16 : void SetZDCNeutron1Energy(Float_t Pen) {fZDCNeutron1Energy = Pen;}
55 16 : void SetZDCProton1Energy(Float_t Pen) {fZDCProton1Energy = Pen;}
56 16 : void SetZDCNeutron2Energy(Float_t Pen) {fZDCNeutron2Energy = Pen;}
57 16 : void SetZDCProton2Energy(Float_t Pen) {fZDCProton2Energy = Pen;}
58 : void SetZDCEMEnergy(Float_t Pen1, Float_t Pen2)
59 16 : {fZDCEMEnergy[0]=Pen1; fZDCEMEnergy[1]=Pen2;}
60 16 : void SetT0VertexZ(Float_t Pvz) {fT0VertexZ = Pvz;}
61 32 : void SetNumOfTracks(Int_t Ptr) {fNumberOfTracks = Ptr;}
62 32 : void SetNumOfPosTracks(Int_t Ptr) {fNumberOfPositiveTracks = Ptr;}
63 32 : void SetNumOfNegTracks(Int_t Ptr) {fNumberOfNegativeTracks = Ptr;}
64 32 : void SetNumOfNeutrTracks(Int_t Ptr) {fNumberOfNeutralTracks = Ptr;}
65 32 : void SetNumOfV0s(Int_t Ptr) {fNumberOfV0s = Ptr;}
66 32 : void SetNumOfCascades(Int_t Ptr) {fNumberOfCascades = Ptr;}
67 32 : void SetNumOfKinks(Int_t Ptr) {fNumberOfKinks = Ptr;}
68 16 : void SetNumOfPMDTracks(Int_t Ptr) {fNumberOfPMDTracks = Ptr;}
69 0 : void SetNumOfFMDTracks(Int_t Ptr) {fNumberOfFMDTracks = Ptr;}
70 32 : void SetNumOfPHOSClusters(Int_t Ptr) {fNumberOfPHOSClusters = Ptr;}
71 32 : void SetNumOfEMCALClusters(Int_t Ptr) {fNumberOfEMCALClusters = Ptr;}
72 0 : void SetNumOfJetCandidates(Int_t Ptr) {fNumberOfJetCandidates = Ptr;}
73 0 : void SetNumOfHardPhotonsCandidates(Int_t Ptr) {fNumberOfHardPhotonsCandidates = Ptr;}
74 0 : void SetMaxJetEnergy(Float_t f) {fMaxJetEnergy = f;}
75 0 : void SetMaxNeutralEnergy(Float_t f) {fMaxNeutralEnergy = f;}
76 32 : void SetNumOfChargedAbove1GeV(Int_t i) {fNumberOfChargedAbove1GeV = i;}
77 32 : void SetNumOfChargedAbove3GeV(Int_t i) {fNumberOfChargedAbove3GeV = i;}
78 32 : void SetNumOfChargedAbove10GeV(Int_t i) {fNumberOfChargedAbove10GeV = i;}
79 32 : void SetNumOfMuonsAbove1GeV(Int_t i) {fNumberOfMuonsAbove1GeV = i;}
80 32 : void SetNumOfMuonsAbove3GeV(Int_t i) {fNumberOfMuonsAbove3GeV = i;}
81 32 : void SetNumOfMuonsAbove10GeV(Int_t i) {fNumberOfMuonsAbove10GeV = i;}
82 32 : void SetNumOfElectronsAbove1GeV(Int_t i) {fNumberOfElectronsAbove1GeV = i;}
83 32 : void SetNumOfElectronsAbove3GeV(Int_t i) {fNumberOfElectronsAbove3GeV = i;}
84 32 : void SetNumOfElectronsAbove10GeV(Int_t i) {fNumberOfElectronsAbove10GeV = i;}
85 32 : void SetNumOfElectrons(Int_t Ptr) {fNumberOfElectrons = Ptr;}
86 32 : void SetNumOfFWMuons(Int_t Ptr) {fNumberOfFWMuons = Ptr;}
87 16 : void SetNumOfFWMatchedMuons(Int_t Ptr) {fNumberOfFWMatchedMuons = Ptr;}
88 32 : void SetNumOfMuons(Int_t Ptr) {fNumberOfMuons = Ptr;}
89 32 : void SetNumOfPions(Int_t Ptr) {fNumberOfPions = Ptr;}
90 32 : void SetNumOfKaons(Int_t Ptr) {fNumberOfKaons = Ptr;}
91 32 : void SetNumOfProtons(Int_t Ptr) {fNumberOfProtons = Ptr;}
92 16 : void SetNumOfLambdas(Int_t Ptr) {fNumberOfLambdas = Ptr;}
93 32 : void SetNumOfPhotons(Int_t Ptr) {fNumberOfPhotons = Ptr;}
94 32 : void SetNumOfPi0s(Int_t Ptr) {fNumberOfPi0s = Ptr;}
95 32 : void SetNumOfNeutrons(Int_t Ptr) {fNumberOfNeutrons = Ptr;}
96 32 : void SetNumOfKaon0s(Int_t Ptr) {fNumberOfKaon0s = Ptr;}
97 32 : void SetTotalMomentum(Float_t P) {fTotalP = P;}
98 32 : void SetMeanPt(Float_t Pt) {fMeanPt = Pt;}
99 32 : void SetMaxPt(Float_t Pt) {fMaxPt = Pt;}
100 32 : void SetEtaMaxPt(Float_t eta) {fEtaMaxPt = eta;}
101 32 : void SetPhiMaxPt(Float_t phi) {fPhiMaxPt = phi;}
102 0 : void SetNeutralTotalMomentum(Float_t f) {fTotalNeutralP = f;}
103 0 : void SetNeutralMeanPt(Float_t f) {fMeanNeutralPt = f;}
104 0 : void SetNeutralMaxPt(Float_t f) {fMaxNeutralPt = f;}
105 0 : void SetEventPlaneAngle(Float_t f) {fEventPlaneAngle = f;}
106 0 : void SetHBTRadii(Float_t f) {fHBTRadii = f;}
107 :
108 : //First physics
109 16 : void SetNumberOfFiredChipsLayer1(Int_t n) {fNumberOfFiredChipsLayer1 = n;}
110 16 : void SetNumberOfFiredChipsLayer2(Int_t n) {fNumberOfFiredChipsLayer2 = n;}
111 16 : void SetNumberOfSPDTracklets(Int_t n) {fNumberOfSPDTracklets = n;}
112 :
113 16 : void SetMTotV0A(Float_t mult) {fMTotV0A = mult;}
114 16 : void SetMTotV0C(Float_t mult) {fMTotV0C = mult;}
115 16 : void SetNbPMV0A(Short_t npmt) {fNbPMV0A = npmt;}
116 16 : void SetNbPMV0C(Short_t npmt) {fNbPMV0C = npmt;}
117 0 : void SetEventId(Int_t /*id*/) {;}
118 : //____________________________________________________//
119 0 : UInt_t GetPeriodNumber() const {return fPeriodNumber;}
120 0 : UInt_t GetOrbitNumber() const {return fOrbitNumber;}
121 0 : UShort_t GetBunchCrossNumber() const {return fBunchCrossNumber;}
122 :
123 : //*T* TString GetFiredTriggerClasses() const {return fFiredTriggerClasses;}
124 : TString GetFiredTriggerClasses(TString actclass) const; //*T* {return fFiredTriggerClasses;}
125 0 : UInt_t GetEventType() const {return fEventType;}
126 0 : UShort_t GetPhysicsFlag() const {return fPhysicsFlag;}
127 0 : UShort_t GetBackgroundFlag() const {return fBackgroundFlag;}
128 :
129 : /* const char *GetGUID() const {return ((AliFileTag *) fFileRef.GetObject())->GetGUID();} */
130 : /* const char *GetPath() const {return ((AliFileTag *) fFileRef.GetObject())->GetPath();} */
131 : /* const char *GetMD5() const {return ((AliFileTag *) fFileRef.GetObject())->GetMD5();} */
132 : /* const char *GetTURL() const {return ((AliFileTag *) fFileRef.GetObject())->GetTURL();} */
133 : /* Long64_t GetSize() const {return ((AliFileTag *) fFileRef.GetObject())->GetSize();} */
134 0 : Int_t GetNumOfParticipants() const {return fNumberOfParticipants;}
135 0 : Int_t GetNumOfParticipants2() const {return fNumberOfParticipants2;}
136 0 : Float_t GetImpactParameter() const {return fImpactParameter;}
137 0 : Float_t GetVertexX() const {return fPrimaryVertexX;}
138 0 : Float_t GetVertexY() const {return fPrimaryVertexY;}
139 0 : Float_t GetVertexZ() const {return fPrimaryVertexZ;}
140 0 : Int_t GetVertexFlag() const {return fPrimaryVertexFlag;}
141 0 : Float_t GetVertexZError() const {return fPrimaryVertexZError;}
142 0 : ULong64_t GetTriggerMask() const {return fTriggerMask;}
143 0 : ULong64_t GetTriggerMaskNext50() const {return fTriggerMaskNext50;}
144 0 : UChar_t GetTriggerCluster() const {return fTriggerCluster;}
145 0 : Float_t GetZDCNeutron1Energy() const {return fZDCNeutron1Energy;}
146 0 : Float_t GetZDCProton1Energy() const {return fZDCProton1Energy;}
147 0 : Float_t GetZDCNeutron2Energy() const {return fZDCNeutron2Energy;}
148 0 : Float_t GetZDCProton2Energy() const {return fZDCProton2Energy;}
149 0 : Float_t GetZDCEMEnergy(Int_t i) const {return fZDCEMEnergy[i];}
150 0 : Float_t GetT0VertexZ() const {return fT0VertexZ;}
151 0 : Int_t GetNumOfTracks() const {return fNumberOfTracks;}
152 0 : Int_t GetNumOfPosTracks() const {return fNumberOfPositiveTracks;}
153 0 : Int_t GetNumOfNegTracks() const {return fNumberOfNegativeTracks;}
154 0 : Int_t GetNumOfNeutrTracks() const {return fNumberOfNeutralTracks;}
155 0 : Int_t GetNumOfV0s() const {return fNumberOfV0s;}
156 0 : Int_t GetNumOfCascades() const {return fNumberOfCascades;}
157 0 : Int_t GetNumOfKinks() const {return fNumberOfKinks;}
158 0 : Int_t GetNumOfPMDTracks() const {return fNumberOfPMDTracks;}
159 0 : Int_t GetNumOfFMDTracks() const {return fNumberOfFMDTracks;}
160 0 : Int_t GetNumOfPHOSClusters() const {return fNumberOfPHOSClusters;}
161 0 : Int_t GetNumOfEMCALClusters() const {return fNumberOfEMCALClusters;}
162 0 : Int_t GetNumOfJetCandidates() const {return fNumberOfJetCandidates;}
163 0 : Int_t GetNumOfHardPhotonsCandidates() const {return fNumberOfHardPhotonsCandidates;}
164 0 : Float_t GetMaxJetEnergy() const {return fMaxJetEnergy;}
165 0 : Float_t GetMaxNeutralEnergy() const {return fMaxNeutralEnergy;}
166 0 : Int_t GetNumOfChargedAbove1GeV() const {return fNumberOfChargedAbove1GeV;}
167 0 : Int_t GetNumOfChargedAbove3GeV() const {return fNumberOfChargedAbove3GeV;}
168 0 : Int_t GetNumOfChargedAbove10GeV() const {return fNumberOfChargedAbove10GeV;}
169 0 : Int_t GetNumOfMuonsAbove1GeV() const {return fNumberOfMuonsAbove1GeV;}
170 0 : Int_t GetNumOfMuonsAbove3GeV() const {return fNumberOfMuonsAbove3GeV;}
171 0 : Int_t GetNumOfMuonsAbove10GeV() const {return fNumberOfMuonsAbove10GeV;}
172 0 : Int_t GetNumOfElectronsAbove1GeV() const {return fNumberOfElectronsAbove1GeV;}
173 0 : Int_t GetNumOfElectronsAbove3GeV() const {return fNumberOfElectronsAbove3GeV;}
174 0 : Int_t GetNumOfElectronsAbove10GeV() const {return fNumberOfElectronsAbove10GeV;}
175 0 : Int_t GetNumOfElectrons() const {return fNumberOfElectrons;}
176 0 : Int_t GetNumOfFWMuons() const {return fNumberOfFWMuons;}
177 0 : Int_t GetNumOfFWMatchedMuons() const {return fNumberOfFWMatchedMuons;}
178 0 : Int_t GetNumOfMuons() const {return fNumberOfMuons;}
179 0 : Int_t GetNumOfPions() const {return fNumberOfPions;}
180 0 : Int_t GetNumOfKaons() const {return fNumberOfKaons;}
181 0 : Int_t GetNumOfProtons() const {return fNumberOfProtons;}
182 0 : Int_t GetNumOfLambdas() const {return fNumberOfLambdas;}
183 0 : Int_t GetNumOfPhotons() const {return fNumberOfPhotons;}
184 0 : Int_t GetNumOfPi0s() const {return fNumberOfPi0s;}
185 0 : Int_t GetNumOfNeutrons() const {return fNumberOfNeutrons;}
186 0 : Int_t GetNumOfKaon0s() const {return fNumberOfKaon0s;}
187 0 : Float_t GetTotalMomentum() const {return fTotalP;}
188 0 : Float_t GetMeanPt() const {return fMeanPt;}
189 0 : Float_t GetMaxPt() const {return fMaxPt;}
190 0 : Float_t GetEtaMaxPt() const {return fEtaMaxPt;}
191 0 : Float_t GetPhiMaxPt() const {return fPhiMaxPt;}
192 0 : Float_t GetNeutralTotalMomentum() const {return fTotalNeutralP;}
193 0 : Float_t GetNeutralMeanPt() const {return fMeanNeutralPt;}
194 0 : Float_t GetNeutralMaxPt() const {return fMaxNeutralPt;}
195 0 : Float_t GetEventPlaneAngle() const {return fEventPlaneAngle;}
196 0 : Float_t GetHBTRadii() const {return fHBTRadii;}
197 :
198 : //First physics
199 0 : Int_t GetNumberOfFiredChipsLayer1() const {return fNumberOfFiredChipsLayer1;}
200 0 : Int_t GetNumberOfFiredChipsLayer2() const {return fNumberOfFiredChipsLayer2;}
201 0 : Int_t GetNumberOfSPDTracklets() const {return fNumberOfSPDTracklets;}
202 :
203 0 : Float_t GetMTotV0A() const {return fMTotV0A;}
204 0 : Float_t GetMTotV0C() const {return fMTotV0C;}
205 0 : Short_t GetNbPMV0A() const {return fNbPMV0A;}
206 0 : Short_t GetNbPMV0C() const {return fNbPMV0C;}
207 :
208 : //____________________________________________________//
209 : private:
210 : UInt_t fPeriodNumber; //The period number
211 : UInt_t fOrbitNumber; //The orbit number
212 : UShort_t fBunchCrossNumber; //The BC number
213 : //*T* TString fFiredTriggerClasses; //List of the fired trigger class names
214 : UInt_t fEventType; //event type == 7 ==> PHYSICS_EVENT
215 : UShort_t fPhysicsFlag; //1 - flagged as correct physics event
216 : UShort_t fBackgroundFlag; //1 - flagged by the background rejection procedure
217 :
218 : /* TString fGUID; //The unique identifier of the file */
219 : /* TString fPath; //The file's path (local storage) */
220 : /* Long64_t fsize; //the size of the file */
221 : /* TString fmd5; //another file identifier */
222 : /* TString fturl; //the file's url */
223 : Int_t fNumberOfParticipants; //Number of participants - side C
224 : Int_t fNumberOfParticipants2; //Number of participants - side A
225 : Float_t fImpactParameter; //The impact parameter
226 : Int_t fPrimaryVertexFlag; //Primary vertex flag: 0->not found, 1->found
227 : Float_t fPrimaryVertexX; //Primary vertex - X coordinate
228 : Float_t fPrimaryVertexY; //Primary vertex - Y coordinate
229 : Float_t fPrimaryVertexZ; //Primary vertex - Z coordinate
230 : Float_t fPrimaryVertexZError; //Primary vertex - Z coordinate - error
231 : ULong64_t fTriggerMask; //Information from trigger (trigger mask)
232 : ULong64_t fTriggerMaskNext50; //Information from trigger (trigger mask)
233 : UChar_t fTriggerCluster; // Trigger cluster (mask)
234 : Float_t fZDCNeutron1Energy; //ZDC info - neutron
235 : Float_t fZDCProton1Energy; //ZDC info - proton
236 : Float_t fZDCNeutron2Energy; //ZDC info - neutron
237 : Float_t fZDCProton2Energy; //ZDC info - proton
238 : Float_t fZDCEMEnergy[2]; //ZDC info - em
239 : Float_t fT0VertexZ; //T0 info
240 : Int_t fNumberOfTracks; //Multiplicity
241 : Int_t fNumberOfPositiveTracks; //Multiplicity of positive tracks
242 : Int_t fNumberOfNegativeTracks; //Multiplicity of negative tracks
243 : Int_t fNumberOfNeutralTracks; //Multiplicity of neutral tracks
244 : Int_t fNumberOfV0s; //Number of V0s
245 : Int_t fNumberOfCascades; //Number of cascades
246 : Int_t fNumberOfKinks; //Number of kinks
247 : Int_t fNumberOfPMDTracks; //PMD tracks
248 : Int_t fNumberOfFMDTracks; //FMD tracks
249 : Int_t fNumberOfPHOSClusters; //PHOS clusters
250 : Int_t fNumberOfEMCALClusters; //EMCAL clusters
251 : Int_t fNumberOfJetCandidates; //Jet candidates
252 : Float_t fMaxJetEnergy; //jet energy info
253 : Int_t fNumberOfHardPhotonsCandidates; //Hard photons candidates
254 : Float_t fMaxNeutralEnergy; //neutral energy info
255 : Int_t fNumberOfChargedAbove1GeV; //Number of charged above 1 GeV/c
256 : Int_t fNumberOfChargedAbove3GeV; //Number of charged above 3 GeV/c
257 : Int_t fNumberOfChargedAbove10GeV; //Number of charged above 10 GeV/c
258 : Int_t fNumberOfMuonsAbove1GeV; //Number of muons above 1 GeV/c
259 : Int_t fNumberOfMuonsAbove3GeV; //Number of muons above 3 GeV/c
260 : Int_t fNumberOfMuonsAbove10GeV; //Number of muons above 10 GeV/c
261 : Int_t fNumberOfElectronsAbove1GeV; //Number of electrons above 1 GeV/c
262 : Int_t fNumberOfElectronsAbove3GeV; //Number of electrons above 3 GeV/c
263 : Int_t fNumberOfElectronsAbove10GeV; //Number of electrons above 10 GeV/c
264 : Int_t fNumberOfElectrons; //Number of electrons
265 : Int_t fNumberOfFWMuons; //Number of forward muons
266 : Int_t fNumberOfFWMatchedMuons; //Number of forward matched muons
267 : Int_t fNumberOfMuons; //Number of muons
268 : Int_t fNumberOfPions; //Number of pions
269 : Int_t fNumberOfKaons; //Number of kaons
270 : Int_t fNumberOfProtons; //Number of protons
271 : Int_t fNumberOfLambdas; //Number of lambdas
272 : Int_t fNumberOfPhotons; //Number of photons
273 : Int_t fNumberOfPi0s; //Number of pi0
274 : Int_t fNumberOfNeutrons; //Number of neutrons
275 : Int_t fNumberOfKaon0s; //Number of Ks
276 : Float_t fTotalP; //Sum of the momentum per event
277 : Float_t fMeanPt; //Mean Pt per event
278 : Float_t fMaxPt; //Max Pt for each event
279 : Float_t fEtaMaxPt; //Eta of the particle with max pt (leading particle)
280 : Float_t fPhiMaxPt; //Phi of the particle with max pt (leading particle)
281 : Float_t fTotalNeutralP; //Sum of the momentum per event for neutral
282 : Float_t fMeanNeutralPt; //Mean Pt per event for neutral
283 : Float_t fMaxNeutralPt; //Max Pt for each event for neutral
284 : Float_t fEventPlaneAngle; //event plane info
285 : Float_t fHBTRadii; //HBT info
286 :
287 : //First physics
288 : Int_t fNumberOfFiredChipsLayer1; //number of fired chips - layer 1
289 : Int_t fNumberOfFiredChipsLayer2; //number of fired chips - layer 2
290 : Int_t fNumberOfSPDTracklets; //number of SPD tracklets
291 :
292 : Float_t fMTotV0A; //Total multiplicity in V0 A side
293 : Float_t fMTotV0C; //Total multiplicity in V0 C side
294 : Short_t fNbPMV0A; //Total number of fired channels in V0 A side
295 : Short_t fNbPMV0C; //Total number of fired channels in V0 C side
296 :
297 264 : ClassDef(AliEventTag,18) //(ClassName, ClassVersion)
298 : };
299 : //___________________________________________________________________________
300 :
301 :
302 : #endif
|