]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/AliEventTag.cxx
Possibility to create AOD+AODVertexingHF in the same train, starting from ESD (A...
[u/mrichter/AliRoot.git] / STEER / AliEventTag.cxx
1 /**************************************************************************
2  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3  *                                                                        *
4  * Author: The ALICE Off-line Project.                                    *
5  * Contributors are mentioned in the code where appropriate.              *
6  *                                                                        *
7  * Permission to use, copy, modify and distribute this software and its   *
8  * documentation strictly for non-commercial purposes is hereby granted   *
9  * without fee, provided that the above copyright notice appears in all   *
10  * copies and that both the copyright notice and this permission notice   *
11  * appear in the supporting documentation. The authors make no claims     *
12  * about the suitability of this software for any purpose. It is          *
13  * provided "as is" without express or implied warranty.                  *
14  **************************************************************************/
15
16 /* $Id$ */
17
18 //-----------------------------------------------------------------
19 //           Implementation of the EventTag class
20 //   This is the class to deal with the tags in the event level
21 //   Origin: Panos Christakoglou, UOA-CERN, Panos.Christakoglou@cern.ch
22 //-----------------------------------------------------------------
23
24 #include "AliEventTag.h"
25
26 ClassImp(AliEventTag)
27
28 //______________________________________________________________________________
29   AliEventTag::AliEventTag() : 
30     TObject(),
31     fPeriodNumber(0),
32     fOrbitNumber(0),
33     fBunchCrossNumber(0),
34     fFiredTriggerClasses(),
35     fEventType(0),
36     fGUID(0),
37     fPath(0),
38     fsize(0),
39     fmd5(0),
40     fturl(0),
41     fNumberOfParticipants(-10),
42     fNumberOfParticipants2(-10),
43     fImpactParameter(-10.0),
44     fPrimaryVertexFlag(-1),
45     fPrimaryVertexX(-100.0),
46     fPrimaryVertexY(-100.0),
47     fPrimaryVertexZ(-100.0),
48     fPrimaryVertexZError(-100.0),
49     fTriggerMask(0),
50     fTriggerCluster(0),
51     fZDCNeutron1Energy(-10.0),
52     fZDCProton1Energy(-10.0),
53     fZDCNeutron2Energy(-10.0),
54     fZDCProton2Energy(-10.0),
55     fT0VertexZ(-10.0),
56     fNumberOfTracks(-10),
57     fNumberOfPositiveTracks(-10),
58     fNumberOfNegativeTracks(-10),
59     fNumberOfNeutralTracks(-10),  
60     fNumberOfV0s(-10),
61     fNumberOfCascades(-10),
62     fNumberOfKinks(-10),
63     fNumberOfPMDTracks(-10),
64     fNumberOfFMDTracks(-10),
65     fNumberOfPHOSClusters(-10),
66     fNumberOfEMCALClusters(-10),
67     fNumberOfJetCandidates(-10),
68     fMaxJetEnergy(-100.0),
69     fNumberOfHardPhotonsCandidates(-10),
70     fMaxNeutralEnergy(-100.0),
71     fNumberOfChargedAbove1GeV(-10),
72     fNumberOfChargedAbove3GeV(-10),
73     fNumberOfChargedAbove10GeV(-10),
74     fNumberOfMuonsAbove1GeV(-10),
75     fNumberOfMuonsAbove3GeV(-10),
76     fNumberOfMuonsAbove10GeV(-10),
77     fNumberOfElectronsAbove1GeV(-10),
78     fNumberOfElectronsAbove3GeV(-10),
79     fNumberOfElectronsAbove10GeV(-10),
80     fNumberOfElectrons(-10),
81     fNumberOfFWMuons(-10),
82     fNumberOfMuons(-10),
83     fNumberOfPions(-10),
84     fNumberOfKaons(-10),
85     fNumberOfProtons(-10),
86     fNumberOfLambdas(-10),
87     fNumberOfPhotons(-10),
88     fNumberOfPi0s(-10),
89     fNumberOfNeutrons(-10),
90     fNumberOfKaon0s(-10),
91     fTotalP(-10.0),
92     fMeanPt(-10.0),
93     fMaxPt(-10.0),
94     fTotalNeutralP(-10.0),
95     fMeanNeutralPt(-10.0),
96     fMaxNeutralPt(-10.0),
97     fEventPlaneAngle(-10.0),
98     fHBTRadii(-10.0),
99     fNumberOfFiredChipsLayer1(0),
100     fNumberOfFiredChipsLayer2(0),
101     fNumberOfSPDTracklets(0),
102     fMTotV0A(0),
103     fMTotV0C(0),
104     fNbPMV0A(0),
105     fNbPMV0C(0)
106 {
107   // AliEventTag default constructor
108   for(Int_t i=0; i<2; i++)     fZDCEMEnergy[i] = -10.0;
109 }
110
111
112 //___________________________________________________________________________
113 AliEventTag::AliEventTag(const AliEventTag & evTag) :
114   TObject(evTag),
115   fPeriodNumber(evTag.fPeriodNumber),
116   fOrbitNumber(evTag.fOrbitNumber),
117   fBunchCrossNumber(evTag.fBunchCrossNumber),
118   fFiredTriggerClasses(evTag.fFiredTriggerClasses),
119   fEventType(evTag.fEventType),
120   fGUID(evTag.fGUID),
121   fPath(evTag.fPath),
122   fsize(evTag.fsize),
123   fmd5(evTag.fmd5),
124   fturl(evTag.fturl),
125   fNumberOfParticipants(evTag.fNumberOfParticipants),
126   fNumberOfParticipants2(evTag.fNumberOfParticipants2),
127   fImpactParameter(evTag.fImpactParameter),
128   fPrimaryVertexFlag(evTag.fPrimaryVertexFlag),
129   fPrimaryVertexX(evTag.fPrimaryVertexX),
130   fPrimaryVertexY(evTag.fPrimaryVertexY),
131   fPrimaryVertexZ(evTag.fPrimaryVertexZ),
132   fPrimaryVertexZError(evTag.fPrimaryVertexZError),
133   fTriggerMask(evTag.fTriggerMask),
134   fTriggerCluster(evTag.fTriggerCluster),
135   fZDCNeutron1Energy(evTag.fZDCNeutron1Energy),
136   fZDCProton1Energy(evTag.fZDCProton1Energy),
137   fZDCNeutron2Energy(evTag.fZDCNeutron2Energy),
138   fZDCProton2Energy(evTag.fZDCProton2Energy),
139   fT0VertexZ(evTag.fT0VertexZ),
140   fNumberOfTracks(evTag.fNumberOfTracks),
141   fNumberOfPositiveTracks(evTag.fNumberOfPositiveTracks),
142   fNumberOfNegativeTracks(evTag.fNumberOfNegativeTracks),
143   fNumberOfNeutralTracks(evTag.fNumberOfNeutralTracks),  
144   fNumberOfV0s(evTag.fNumberOfV0s),
145   fNumberOfCascades(evTag.fNumberOfCascades),
146   fNumberOfKinks(evTag.fNumberOfKinks),
147   fNumberOfPMDTracks(evTag.fNumberOfPMDTracks),
148   fNumberOfFMDTracks(evTag.fNumberOfFMDTracks),
149   fNumberOfPHOSClusters(evTag.fNumberOfPHOSClusters),
150   fNumberOfEMCALClusters(evTag.fNumberOfEMCALClusters),
151   fNumberOfJetCandidates(evTag.fNumberOfJetCandidates),
152   fMaxJetEnergy(evTag.fMaxJetEnergy),
153   fNumberOfHardPhotonsCandidates(evTag.fNumberOfHardPhotonsCandidates),
154   fMaxNeutralEnergy(evTag.fMaxNeutralEnergy),
155   fNumberOfChargedAbove1GeV(evTag.fNumberOfChargedAbove1GeV),
156   fNumberOfChargedAbove3GeV(evTag.fNumberOfChargedAbove3GeV),
157   fNumberOfChargedAbove10GeV(evTag.fNumberOfChargedAbove10GeV),
158   fNumberOfMuonsAbove1GeV(evTag.fNumberOfMuonsAbove1GeV),
159   fNumberOfMuonsAbove3GeV(evTag.fNumberOfMuonsAbove3GeV),
160   fNumberOfMuonsAbove10GeV(evTag.fNumberOfMuonsAbove10GeV),
161   fNumberOfElectronsAbove1GeV(evTag.fNumberOfElectronsAbove1GeV),
162   fNumberOfElectronsAbove3GeV(evTag.fNumberOfElectronsAbove3GeV),
163   fNumberOfElectronsAbove10GeV(evTag.fNumberOfElectronsAbove10GeV),
164   fNumberOfElectrons(evTag.fNumberOfElectrons),
165   fNumberOfFWMuons(evTag.fNumberOfFWMuons),
166   fNumberOfMuons(evTag.fNumberOfMuons),
167   fNumberOfPions(evTag.fNumberOfPions),
168   fNumberOfKaons(evTag.fNumberOfKaons),
169   fNumberOfProtons(evTag.fNumberOfProtons),
170   fNumberOfLambdas(evTag.fNumberOfLambdas),
171   fNumberOfPhotons(evTag.fNumberOfPhotons),
172   fNumberOfPi0s(evTag.fNumberOfPi0s),
173   fNumberOfNeutrons(evTag.fNumberOfNeutrons),
174   fNumberOfKaon0s(evTag.fNumberOfKaon0s),
175   fTotalP(evTag.fTotalP),
176   fMeanPt(evTag.fMeanPt),
177   fMaxPt(evTag.fMaxPt),
178   fTotalNeutralP(evTag.fTotalNeutralP),
179   fMeanNeutralPt(evTag.fMeanNeutralPt),
180   fMaxNeutralPt(evTag.fMaxNeutralPt),
181   fEventPlaneAngle(evTag.fEventPlaneAngle),
182   fHBTRadii(evTag.fHBTRadii),
183   fNumberOfFiredChipsLayer1(evTag.fNumberOfFiredChipsLayer1),
184   fNumberOfFiredChipsLayer2(evTag.fNumberOfFiredChipsLayer2),
185   fNumberOfSPDTracklets(evTag.fNumberOfSPDTracklets),
186   fMTotV0A(evTag.fMTotV0A),
187   fMTotV0C(evTag.fMTotV0C),
188   fNbPMV0A(evTag.fNbPMV0A),
189   fNbPMV0C(evTag.fNbPMV0C)
190  {
191   // EventTag copy constructor
192   for(Int_t i=0; i<2; i++)     fZDCEMEnergy[i] = evTag.fZDCEMEnergy[i];
193 }
194
195 //___________________________________________________________________________
196 AliEventTag & AliEventTag::operator=(const AliEventTag &evTag) {
197   // EventTag assignment operator
198   if (this != &evTag) {
199     TObject::operator=(evTag);
200     
201     SetPeriodNumber(evTag.GetPeriodNumber());
202     SetOrbitNumber(evTag.GetOrbitNumber());
203     SetBunchCrossNumber(evTag.GetBunchCrossNumber());
204     SetFiredTriggerClasses(evTag.GetFiredTriggerClasses());
205     SetEventType(evTag.GetEventType());
206     SetGUID(evTag.GetGUID());
207     SetPath(evTag.GetPath());
208     SetMD5(evTag.GetMD5());
209     SetTURL(evTag.GetTURL());
210     SetSize(evTag.GetSize());
211     SetNumOfParticipants(evTag.GetNumOfParticipants());
212     SetImpactParameter(evTag.GetImpactParameter());
213     SetVertexX(evTag.GetVertexX());
214     SetVertexY(evTag.GetVertexY());
215     SetVertexZ(evTag.GetVertexZ());
216     SetVertexFlag(evTag.GetVertexFlag());
217     SetVertexZError(evTag.GetVertexZError());
218     SetTriggerMask(evTag.GetTriggerMask());
219     SetTriggerCluster(evTag.GetTriggerCluster());
220     SetZDCNeutron1Energy(evTag.GetZDCNeutron1Energy());
221     SetZDCProton1Energy(evTag.GetZDCProton1Energy());
222     SetZDCNeutron2Energy(evTag.GetZDCNeutron2Energy());
223     SetZDCProton2Energy(evTag.GetZDCProton2Energy());
224     SetZDCEMEnergy(evTag.GetZDCEMEnergy(0),evTag.GetZDCEMEnergy(1));
225     SetT0VertexZ(evTag.GetT0VertexZ());
226     SetNumOfTracks(evTag.GetNumOfTracks());
227     SetNumOfPosTracks(evTag.GetNumOfPosTracks());
228     SetNumOfNegTracks(evTag.GetNumOfNegTracks());
229     SetNumOfNeutrTracks(evTag.GetNumOfNeutrTracks());
230     SetNumOfV0s(evTag.GetNumOfV0s());
231     SetNumOfCascades(evTag.GetNumOfCascades());
232     SetNumOfKinks(evTag.GetNumOfKinks());
233     SetNumOfPMDTracks(evTag.GetNumOfPMDTracks());
234     SetNumOfFMDTracks(evTag.GetNumOfFMDTracks());
235     SetNumOfPHOSClusters(evTag.GetNumOfPHOSClusters());
236     SetNumOfEMCALClusters(evTag.GetNumOfEMCALClusters());
237     SetNumOfJetCandidates(evTag.GetNumOfJetCandidates());
238     SetNumOfHardPhotonsCandidates(evTag.GetNumOfHardPhotonsCandidates());
239     SetMaxJetEnergy(evTag.GetMaxJetEnergy());
240     SetMaxNeutralEnergy(evTag.GetMaxNeutralEnergy());
241     SetNumOfChargedAbove1GeV(evTag.GetNumOfChargedAbove1GeV());
242     SetNumOfChargedAbove3GeV(evTag.GetNumOfChargedAbove3GeV());
243     SetNumOfChargedAbove10GeV(evTag.GetNumOfChargedAbove10GeV());
244     SetNumOfMuonsAbove1GeV(evTag.GetNumOfMuonsAbove1GeV());
245     SetNumOfMuonsAbove3GeV(evTag.GetNumOfMuonsAbove3GeV());
246     SetNumOfMuonsAbove10GeV(evTag.GetNumOfMuonsAbove10GeV());
247     SetNumOfElectronsAbove1GeV(evTag.GetNumOfElectronsAbove1GeV());
248     SetNumOfElectronsAbove3GeV(evTag.GetNumOfElectronsAbove3GeV());
249     SetNumOfElectronsAbove10GeV(evTag.GetNumOfElectronsAbove10GeV());
250     SetNumOfElectrons(evTag.GetNumOfElectrons());
251     SetNumOfFWMuons(evTag.GetNumOfFWMuons());
252     SetNumOfMuons(evTag.GetNumOfMuons());
253     SetNumOfPions(evTag.GetNumOfPions());
254     SetNumOfKaons(evTag.GetNumOfKaons());
255     SetNumOfProtons(evTag.GetNumOfProtons());
256     SetNumOfLambdas(evTag.GetNumOfLambdas());
257     SetNumOfPhotons(evTag.GetNumOfPhotons());
258     SetNumOfPi0s(evTag.GetNumOfPi0s());
259     SetNumOfNeutrons(evTag.GetNumOfNeutrons());
260     SetNumOfKaon0s(evTag.GetNumOfKaon0s());
261     SetTotalMomentum(evTag.GetTotalMomentum());
262     SetMeanPt(evTag.GetMeanPt());
263     SetMaxPt(evTag.GetMaxPt());
264     SetNeutralTotalMomentum(evTag.GetNeutralTotalMomentum());
265     SetNeutralMeanPt(evTag.GetNeutralMeanPt());
266     SetNeutralMaxPt(evTag.GetNeutralMaxPt());
267     SetEventPlaneAngle(evTag.GetEventPlaneAngle());
268     SetHBTRadii(evTag.GetHBTRadii());
269     SetNumberOfFiredChipsLayer1(evTag.GetNumberOfFiredChipsLayer1());
270     SetNumberOfFiredChipsLayer2(evTag.GetNumberOfFiredChipsLayer2());
271     SetNumberOfSPDTracklets(evTag.GetNumberOfSPDTracklets());
272     SetMTotV0A(evTag.GetMTotV0A());
273     SetMTotV0C(evTag.GetMTotV0C());
274     SetNbPMV0A(evTag.GetNbPMV0A());
275     SetNbPMV0C(evTag.GetNbPMV0C());
276   }
277   return *this;
278 }
279
280 //___________________________________________________________________________
281 AliEventTag::~AliEventTag() {
282   // AliEventTag destructor
283 }