2c756bd6bb5d3f5d0d4ab0bb096798a15b39dbb7
[u/mrichter/AliRoot.git] / STEER / AliEventTag.h
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   void SetEventId(Int_t Pid) {fAliceEventId = Pid;}
30   void SetGUID(TString Pid) {fGUID = Pid;}
31   void SetPath(TString Pid) {fPath = Pid;}
32   void SetMD5(TString Pid) {fmd5 = Pid;}
33   void SetTURL(TString Pid) {fturl = Pid;}
34   void SetSize(Long64_t i) {fsize = i;}
35   void SetNumOfParticipants(Int_t P) {fNumberOfParticipants = P;}
36   void SetNumOfParticipants2(Int_t P2) {fNumberOfParticipants = P2;}
37   void SetImpactParameter(Float_t Pimpact) {fImpactParameter = Pimpact;}
38   void SetVertexX(Float_t Pvx) {fPrimaryVertexX = Pvx;}
39   void SetVertexY(Float_t Pvy) {fPrimaryVertexY = Pvy;}
40   void SetVertexZ(Float_t Pvz) {fPrimaryVertexZ = Pvz;}
41   void SetVertexFlag(Int_t i) {fPrimaryVertexFlag = i;}
42   void SetVertexZError(Float_t f) { fPrimaryVertexZError = f;}
43   void SetTriggerMask(ULong64_t Ptr) {fTriggerMask = Ptr;}
44   void SetTriggerCluster(UChar_t n) {fTriggerCluster = n;}
45   void SetZDCNeutron1Energy(Float_t Pen) {fZDCNeutron1Energy = Pen;}
46   void SetZDCProton1Energy(Float_t Pen) {fZDCProton1Energy = Pen;}
47   void SetZDCNeutron2Energy(Float_t Pen) {fZDCNeutron2Energy = Pen;}
48   void SetZDCProton2Energy(Float_t Pen) {fZDCProton2Energy = Pen;}
49   void SetZDCEMEnergy(Float_t Pen1, Float_t Pen2) 
50        {fZDCEMEnergy[0]=Pen1; fZDCEMEnergy[1]=Pen2;}
51   void SetT0VertexZ(Float_t Pvz) {fT0VertexZ = Pvz;}
52   void SetNumOfTracks(Int_t Ptr) {fNumberOfTracks = Ptr;}
53   void SetNumOfPosTracks(Int_t Ptr) {fNumberOfPositiveTracks = Ptr;}
54   void SetNumOfNegTracks(Int_t Ptr) {fNumberOfNegativeTracks = Ptr;}
55   void SetNumOfNeutrTracks(Int_t Ptr) {fNumberOfNeutralTracks = Ptr;}
56   void SetNumOfV0s(Int_t Ptr) {fNumberOfV0s = Ptr;}
57   void SetNumOfCascades(Int_t Ptr) {fNumberOfCascades = Ptr;}
58   void SetNumOfKinks(Int_t Ptr) {fNumberOfKinks = Ptr;}
59   void SetNumOfPMDTracks(Int_t Ptr) {fNumberOfPMDTracks = Ptr;}
60   void SetNumOfFMDTracks(Int_t Ptr) {fNumberOfFMDTracks = Ptr;}
61   void SetNumOfPHOSClusters(Int_t Ptr) {fNumberOfPHOSClusters = Ptr;}
62   void SetNumOfEMCALClusters(Int_t Ptr) {fNumberOfEMCALClusters = Ptr;}
63   void SetNumOfJetCandidates(Int_t Ptr) {fNumberOfJetCandidates = Ptr;}
64   void SetNumOfHardPhotonsCandidates(Int_t Ptr) {fNumberOfHardPhotonsCandidates = Ptr;}
65   void SetMaxJetEnergy(Float_t f) {fMaxJetEnergy = f;}
66   void SetMaxNeutralEnergy(Float_t f) {fMaxNeutralEnergy = f;}
67   void SetNumOfChargedAbove1GeV(Int_t i) {fNumberOfChargedAbove1GeV = i;}
68   void SetNumOfChargedAbove3GeV(Int_t i) {fNumberOfChargedAbove3GeV = i;}
69   void SetNumOfChargedAbove10GeV(Int_t i) {fNumberOfChargedAbove10GeV = i;}
70   void SetNumOfMuonsAbove1GeV(Int_t i) {fNumberOfMuonsAbove1GeV = i;}
71   void SetNumOfMuonsAbove3GeV(Int_t i) {fNumberOfMuonsAbove3GeV = i;}
72   void SetNumOfMuonsAbove10GeV(Int_t i) {fNumberOfMuonsAbove10GeV = i;}
73   void SetNumOfElectronsAbove1GeV(Int_t i) {fNumberOfElectronsAbove1GeV = i;}
74   void SetNumOfElectronsAbove3GeV(Int_t i) {fNumberOfElectronsAbove3GeV = i;}
75   void SetNumOfElectronsAbove10GeV(Int_t i) {fNumberOfElectronsAbove10GeV = i;}
76   void SetNumOfElectrons(Int_t Ptr) {fNumberOfElectrons = Ptr;}
77   void SetNumOfFWMuons(Int_t Ptr) {fNumberOfFWMuons = Ptr;}
78   void SetNumOfMuons(Int_t Ptr) {fNumberOfMuons = Ptr;}
79   void SetNumOfPions(Int_t Ptr) {fNumberOfPions = Ptr;}
80   void SetNumOfKaons(Int_t Ptr) {fNumberOfKaons = Ptr;}
81   void SetNumOfProtons(Int_t Ptr) {fNumberOfProtons = Ptr;}
82   void SetNumOfLambdas(Int_t Ptr) {fNumberOfLambdas = Ptr;}
83   void SetNumOfPhotons(Int_t Ptr) {fNumberOfPhotons = Ptr;}
84   void SetNumOfPi0s(Int_t Ptr) {fNumberOfPi0s = Ptr;}
85   void SetNumOfNeutrons(Int_t Ptr) {fNumberOfNeutrons = Ptr;}
86   void SetNumOfKaon0s(Int_t Ptr) {fNumberOfKaon0s = Ptr;}
87   void SetTotalMomentum(Float_t P) {fTotalP = P;}
88   void SetMeanPt(Float_t Pt) {fMeanPt = Pt;}
89   void SetMaxPt(Float_t Pt) {fMaxPt = Pt;}
90   void SetNeutralTotalMomentum(Float_t f) {fTotalNeutralP = f;}
91   void SetNeutralMeanPt(Float_t f) {fMeanNeutralPt = f;}
92   void SetNeutralMaxPt(Float_t f) {fMaxNeutralPt = f;}
93   void SetEventPlaneAngle(Float_t f) {fEventPlaneAngle = f;}
94   void SetHBTRadii(Float_t f) {fHBTRadii = f;}
95
96   //____________________________________________________//
97   Int_t       GetEventId() const {return fAliceEventId;}
98   const char *GetGUID() const {return fGUID.Data();}
99   const char *GetPath() const {return fPath.Data();}
100   const char *GetMD5() const {return fmd5.Data();}
101   const char *GetTURL() const {return fturl.Data();}
102   Long64_t    GetSize() const {return fsize;}
103   Int_t       GetNumOfParticipants() const {return fNumberOfParticipants;}
104   Int_t       GetNumOfParticipants2() const {return fNumberOfParticipants2;}
105   Float_t     GetImpactParameter() const {return fImpactParameter;}
106   Float_t     GetVertexX() const {return fPrimaryVertexX;}
107   Float_t     GetVertexY() const {return fPrimaryVertexY;}
108   Float_t     GetVertexZ() const {return fPrimaryVertexZ;}
109   Int_t       GetVertexFlag() const {return fPrimaryVertexFlag;}
110   Float_t     GetVertexZError() const {return fPrimaryVertexZError;}
111   ULong64_t   GetTriggerMask() const {return fTriggerMask;}
112   UChar_t     GetTriggerCluster() const {return fTriggerCluster;}
113   Float_t     GetZDCNeutron1Energy() const {return fZDCNeutron1Energy;}
114   Float_t     GetZDCProton1Energy() const {return fZDCProton1Energy;}
115   Float_t     GetZDCNeutron2Energy() const {return fZDCNeutron2Energy;}
116   Float_t     GetZDCProton2Energy() const {return fZDCProton2Energy;}
117   Float_t     GetZDCEMEnergy(Int_t i) const {return fZDCEMEnergy[i];}
118   Float_t     GetT0VertexZ() const {return fT0VertexZ;}
119   Int_t       GetNumOfTracks() const {return fNumberOfTracks;}
120   Int_t       GetNumOfPosTracks() const {return fNumberOfPositiveTracks;}
121   Int_t       GetNumOfNegTracks() const {return fNumberOfNegativeTracks;}
122   Int_t       GetNumOfNeutrTracks() const {return fNumberOfNeutralTracks;}
123   Int_t       GetNumOfV0s() const {return fNumberOfV0s;}
124   Int_t       GetNumOfCascades() const {return fNumberOfCascades;}
125   Int_t       GetNumOfKinks() const {return fNumberOfKinks;}
126   Int_t       GetNumOfPMDTracks() const {return fNumberOfPMDTracks;}
127   Int_t       GetNumOfFMDTracks() const {return fNumberOfFMDTracks;}
128   Int_t       GetNumOfPHOSClusters() const {return fNumberOfPHOSClusters;}
129   Int_t       GetNumOfEMCALClusters() const {return fNumberOfEMCALClusters;}
130   Int_t       GetNumOfJetCandidates() const {return fNumberOfJetCandidates;}
131   Int_t       GetNumOfHardPhotonsCandidates() const {return fNumberOfHardPhotonsCandidates;}
132   Float_t     GetMaxJetEnergy() const {return fMaxJetEnergy;}
133   Float_t     GetMaxNeutralEnergy() const {return fMaxNeutralEnergy;}
134   Int_t       GetNumOfChargedAbove1GeV() const {return fNumberOfChargedAbove1GeV;}
135   Int_t       GetNumOfChargedAbove3GeV() const {return fNumberOfChargedAbove3GeV;}
136   Int_t       GetNumOfChargedAbove10GeV() const {return fNumberOfChargedAbove10GeV;}
137   Int_t       GetNumOfMuonsAbove1GeV() const {return fNumberOfMuonsAbove1GeV;}
138   Int_t       GetNumOfMuonsAbove3GeV() const {return fNumberOfMuonsAbove3GeV;}
139   Int_t       GetNumOfMuonsAbove10GeV() const {return fNumberOfMuonsAbove10GeV;}
140   Int_t       GetNumOfElectronsAbove1GeV() const {return fNumberOfElectronsAbove1GeV;}
141   Int_t       GetNumOfElectronsAbove3GeV() const {return fNumberOfElectronsAbove3GeV;}
142   Int_t       GetNumOfElectronsAbove10GeV() const {return fNumberOfElectronsAbove10GeV;}
143   Int_t       GetNumOfElectrons() const {return fNumberOfElectrons;}
144   Int_t       GetNumOfFWMuons() const {return fNumberOfFWMuons;}
145   Int_t       GetNumOfMuons() const {return fNumberOfMuons;}
146   Int_t       GetNumOfPions() const {return fNumberOfPions;}
147   Int_t       GetNumOfKaons() const {return fNumberOfKaons;}
148   Int_t       GetNumOfProtons() const {return fNumberOfProtons;}
149   Int_t       GetNumOfLambdas() const {return fNumberOfLambdas;}
150   Int_t       GetNumOfPhotons() const {return fNumberOfPhotons;}
151   Int_t       GetNumOfPi0s() const {return fNumberOfPi0s;}
152   Int_t       GetNumOfNeutrons() const {return fNumberOfNeutrons;}
153   Int_t       GetNumOfKaon0s() const {return fNumberOfKaon0s;}
154   Float_t     GetTotalMomentum() const {return fTotalP;}
155   Float_t     GetMeanPt() const {return fMeanPt;}
156   Float_t     GetMaxPt() const {return fMaxPt;}
157   Float_t     GetNeutralTotalMomentum() const {return fTotalNeutralP;}
158   Float_t     GetNeutralMeanPt() const {return fMeanNeutralPt;}
159   Float_t     GetNeutralMaxPt() const {return fMaxNeutralPt;}
160   Float_t     GetEventPlaneAngle() const {return fEventPlaneAngle;}
161   Float_t     GetHBTRadii() const {return fHBTRadii;}
162
163   //____________________________________________________//
164  private:
165   Int_t     fAliceEventId;                  //The event id
166   TString   fGUID;                          //The unique identifier of the file
167   TString   fPath;                          //The file's path (local storage)
168   Long64_t  fsize;                          //the size of the file
169   TString   fmd5;                           //another file identifier
170   TString   fturl;                          //the file's url
171   Int_t     fNumberOfParticipants;          //Number of participants - side C
172   Int_t     fNumberOfParticipants2;         //Number of participants - side A
173   Float_t   fImpactParameter;               //The impact parameter
174   Int_t     fPrimaryVertexFlag;             //Primary vertex flag: 0->not found, 1->found
175   Float_t   fPrimaryVertexX;                //Primary vertex - X coordinate
176   Float_t   fPrimaryVertexY;                //Primary vertex - Y coordinate
177   Float_t   fPrimaryVertexZ;                //Primary vertex - Z coordinate
178   Float_t   fPrimaryVertexZError;           //Primary vertex - Z coordinate - error
179   ULong64_t fTriggerMask;                   //Information from trigger (trigger mask)
180   UChar_t   fTriggerCluster;                // Trigger cluster (mask)
181   Float_t   fZDCNeutron1Energy;             //ZDC info - neutron
182   Float_t   fZDCProton1Energy;              //ZDC info - proton
183   Float_t   fZDCNeutron2Energy;             //ZDC info - neutron
184   Float_t   fZDCProton2Energy;              //ZDC info - proton
185   Float_t   fZDCEMEnergy[2];                //ZDC info - em
186   Float_t   fT0VertexZ;                     //T0 info
187   Int_t     fNumberOfTracks;                //Multiplicity
188   Int_t     fNumberOfPositiveTracks;        //Multiplicity of positive tracks
189   Int_t     fNumberOfNegativeTracks;        //Multiplicity of negative tracks
190   Int_t     fNumberOfNeutralTracks;         //Multiplicity of neutral tracks
191   Int_t     fNumberOfV0s;                   //Number of V0s
192   Int_t     fNumberOfCascades;              //Number of cascades
193   Int_t     fNumberOfKinks;                 //Number of kinks
194   Int_t     fNumberOfPMDTracks;             //PMD tracks
195   Int_t     fNumberOfFMDTracks;             //FMD tracks
196   Int_t     fNumberOfPHOSClusters;          //PHOS clusters
197   Int_t     fNumberOfEMCALClusters;         //EMCAL clusters
198   Int_t     fNumberOfJetCandidates;         //Jet candidates
199   Float_t   fMaxJetEnergy;                  //jet energy info
200   Int_t     fNumberOfHardPhotonsCandidates; //Hard photons candidates
201   Float_t   fMaxNeutralEnergy;              //neutral energy info
202   Int_t     fNumberOfChargedAbove1GeV;      //Number of charged above 1 GeV/c
203   Int_t     fNumberOfChargedAbove3GeV;      //Number of charged above 3 GeV/c
204   Int_t     fNumberOfChargedAbove10GeV;     //Number of charged above 10 GeV/c
205   Int_t     fNumberOfMuonsAbove1GeV;        //Number of muons above 1 GeV/c
206   Int_t     fNumberOfMuonsAbove3GeV;        //Number of muons above 3 GeV/c
207   Int_t     fNumberOfMuonsAbove10GeV;       //Number of muons above 10 GeV/c
208   Int_t     fNumberOfElectronsAbove1GeV;    //Number of electrons above 1 GeV/c
209   Int_t     fNumberOfElectronsAbove3GeV;    //Number of electrons above 3 GeV/c
210   Int_t     fNumberOfElectronsAbove10GeV;   //Number of electrons above 10 GeV/c
211   Int_t     fNumberOfElectrons;             //Number of electrons
212   Int_t     fNumberOfFWMuons;               //Number of forward muons
213   Int_t     fNumberOfMuons;                 //Number of muons
214   Int_t     fNumberOfPions;                 //Number of pions
215   Int_t     fNumberOfKaons;                 //Number of kaons
216   Int_t     fNumberOfProtons;               //Number of protons
217   Int_t     fNumberOfLambdas;               //Number of lambdas
218   Int_t     fNumberOfPhotons;               //Number of photons
219   Int_t     fNumberOfPi0s;                  //Number of pi0
220   Int_t     fNumberOfNeutrons;              //Number of neutrons
221   Int_t     fNumberOfKaon0s;                //Number of Ks
222   Float_t   fTotalP;                        //Sum of the momentum per event
223   Float_t   fMeanPt;                        //Mean Pt per event
224   Float_t   fMaxPt;                         //Max Pt for each event
225   Float_t   fTotalNeutralP;                 //Sum of the momentum per event for neutral
226   Float_t   fMeanNeutralPt;                 //Mean Pt per event for neutral
227   Float_t   fMaxNeutralPt;                  //Max Pt for each event for neutral
228   Float_t   fEventPlaneAngle;               //event plane info
229   Float_t   fHBTRadii;                      //HBT info
230   
231   ClassDef(AliEventTag,10)  //(ClassName, ClassVersion)
232     };
233 //___________________________________________________________________________
234
235
236 #endif