]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/AliEventTag.cxx
Updates in GRP Preprocessor (Ernesto)
[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     fAliceEventId(0),
32     fGUID(0),
33     fPath(0),
34     fsize(0),
35     fmd5(0),
36     fturl(0),
37     fNumberOfParticipants(-10),
38     fImpactParameter(-10.0),
39     fPrimaryVertexFlag(-1),
40     fPrimaryVertexX(-100.0),
41     fPrimaryVertexY(-100.0),
42     fPrimaryVertexZ(-100.0),
43     fPrimaryVertexZError(-100.0),
44     fTriggerMask(0),
45     fTriggerCluster(0),
46     fZDCNeutron1Energy(-10.0),
47     fZDCProton1Energy(-10.0),
48     fZDCNeutron2Energy(-10.0),
49     fZDCProton2Energy(-10.0),
50     fT0VertexZ(-10.0),
51     fNumberOfTracks(-10),
52     fNumberOfPositiveTracks(-10),
53     fNumberOfNegativeTracks(-10),
54     fNumberOfNeutralTracks(-10),  
55     fNumberOfV0s(-10),
56     fNumberOfCascades(-10),
57     fNumberOfKinks(-10),
58     fNumberOfPMDTracks(-10),
59     fNumberOfFMDTracks(-10),
60     fNumberOfPHOSClusters(-10),
61     fNumberOfEMCALClusters(-10),
62     fNumberOfJetCandidates(-10),
63     fMaxJetEnergy(-100.0),
64     fNumberOfHardPhotonsCandidates(-10),
65     fMaxNeutralEnergy(-100.0),
66     fNumberOfChargedAbove1GeV(-10),
67     fNumberOfChargedAbove3GeV(-10),
68     fNumberOfChargedAbove10GeV(-10),
69     fNumberOfMuonsAbove1GeV(-10),
70     fNumberOfMuonsAbove3GeV(-10),
71     fNumberOfMuonsAbove10GeV(-10),
72     fNumberOfElectronsAbove1GeV(-10),
73     fNumberOfElectronsAbove3GeV(-10),
74     fNumberOfElectronsAbove10GeV(-10),
75     fNumberOfElectrons(-10),
76     fNumberOfMuons(-10),
77     fNumberOfPions(-10),
78     fNumberOfKaons(-10),
79     fNumberOfProtons(-10),
80     fNumberOfLambdas(-10),
81     fNumberOfPhotons(-10),
82     fNumberOfPi0s(-10),
83     fNumberOfNeutrons(-10),
84     fNumberOfKaon0s(-10),
85     fTotalP(-10.0),
86     fMeanPt(-10.0),
87     fMaxPt(-10.0),
88     fTotalNeutralP(-10.0),
89     fMeanNeutralPt(-10.0),
90     fMaxNeutralPt(-10.0),
91     fEventPlaneAngle(-10.0),
92     fHBTRadii(-10.0)
93 {
94   // AliEventTag default constructor
95   for(Int_t i=0; i<2; i++)     fZDCEMEnergy[i] = -10.0;
96
97 }
98
99
100 //___________________________________________________________________________
101 AliEventTag::AliEventTag(const AliEventTag & evTag) :
102   TObject(evTag),
103   fAliceEventId(evTag.fAliceEventId),
104   fGUID(evTag.fGUID),
105   fPath(evTag.fPath),
106   fsize(evTag.fsize),
107   fmd5(evTag.fmd5),
108   fturl(evTag.fturl),
109   fNumberOfParticipants(evTag.fNumberOfParticipants),
110   fImpactParameter(evTag.fImpactParameter),
111   fPrimaryVertexFlag(evTag.fPrimaryVertexFlag),
112   fPrimaryVertexX(evTag.fPrimaryVertexX),
113   fPrimaryVertexY(evTag.fPrimaryVertexY),
114   fPrimaryVertexZ(evTag.fPrimaryVertexZ),
115   fPrimaryVertexZError(evTag.fPrimaryVertexZError),
116   fTriggerMask(evTag.fTriggerMask),
117   fTriggerCluster(evTag.fTriggerCluster),
118   fZDCNeutron1Energy(evTag.fZDCNeutron1Energy),
119   fZDCProton1Energy(evTag.fZDCProton1Energy),
120   fZDCNeutron2Energy(evTag.fZDCNeutron2Energy),
121   fZDCProton2Energy(evTag.fZDCProton2Energy),
122   fT0VertexZ(evTag.fT0VertexZ),
123   fNumberOfTracks(evTag.fNumberOfTracks),
124   fNumberOfPositiveTracks(evTag.fNumberOfPositiveTracks),
125   fNumberOfNegativeTracks(evTag.fNumberOfNegativeTracks),
126   fNumberOfNeutralTracks(evTag.fNumberOfNeutralTracks),  
127   fNumberOfV0s(evTag.fNumberOfV0s),
128   fNumberOfCascades(evTag.fNumberOfCascades),
129   fNumberOfKinks(evTag.fNumberOfKinks),
130   fNumberOfPMDTracks(evTag.fNumberOfPMDTracks),
131   fNumberOfFMDTracks(evTag.fNumberOfFMDTracks),
132   fNumberOfPHOSClusters(evTag.fNumberOfPHOSClusters),
133   fNumberOfEMCALClusters(evTag.fNumberOfEMCALClusters),
134   fNumberOfJetCandidates(evTag.fNumberOfJetCandidates),
135   fMaxJetEnergy(evTag.fMaxJetEnergy),
136   fNumberOfHardPhotonsCandidates(evTag.fNumberOfHardPhotonsCandidates),
137   fMaxNeutralEnergy(evTag.fMaxNeutralEnergy),
138   fNumberOfChargedAbove1GeV(evTag.fNumberOfChargedAbove1GeV),
139   fNumberOfChargedAbove3GeV(evTag.fNumberOfChargedAbove3GeV),
140   fNumberOfChargedAbove10GeV(evTag.fNumberOfChargedAbove10GeV),
141   fNumberOfMuonsAbove1GeV(evTag.fNumberOfMuonsAbove1GeV),
142   fNumberOfMuonsAbove3GeV(evTag.fNumberOfMuonsAbove3GeV),
143   fNumberOfMuonsAbove10GeV(evTag.fNumberOfMuonsAbove10GeV),
144   fNumberOfElectronsAbove1GeV(evTag.fNumberOfElectronsAbove1GeV),
145   fNumberOfElectronsAbove3GeV(evTag.fNumberOfElectronsAbove3GeV),
146   fNumberOfElectronsAbove10GeV(evTag.fNumberOfElectronsAbove10GeV),
147   fNumberOfElectrons(evTag.fNumberOfElectrons),
148   fNumberOfMuons(evTag.fNumberOfMuons),
149   fNumberOfPions(evTag.fNumberOfPions),
150   fNumberOfKaons(evTag.fNumberOfKaons),
151   fNumberOfProtons(evTag.fNumberOfProtons),
152   fNumberOfLambdas(evTag.fNumberOfLambdas),
153   fNumberOfPhotons(evTag.fNumberOfPhotons),
154   fNumberOfPi0s(evTag.fNumberOfPi0s),
155   fNumberOfNeutrons(evTag.fNumberOfNeutrons),
156   fNumberOfKaon0s(evTag.fNumberOfKaon0s),
157   fTotalP(evTag.fTotalP),
158   fMeanPt(evTag.fMeanPt),
159   fMaxPt(evTag.fMaxPt),
160   fTotalNeutralP(evTag.fTotalNeutralP),
161   fMeanNeutralPt(evTag.fMeanNeutralPt),
162   fMaxNeutralPt(evTag.fMaxNeutralPt),
163   fEventPlaneAngle(evTag.fEventPlaneAngle),
164   fHBTRadii(evTag.fHBTRadii)
165  {
166   // EventTag copy constructor
167   for(Int_t i=0; i<2; i++)     fZDCEMEnergy[i] = evTag.fZDCEMEnergy[i];
168 }
169
170 //___________________________________________________________________________
171 AliEventTag & AliEventTag::operator=(const AliEventTag &evTag) {
172   // EventTag assignment operator
173   if (this != &evTag) {
174     TObject::operator=(evTag);
175     
176     SetEventId(evTag.GetEventId());
177     SetGUID(evTag.GetGUID());
178     SetPath(evTag.GetPath());
179     SetMD5(evTag.GetMD5());
180     SetTURL(evTag.GetTURL());
181     SetSize(evTag.GetSize());
182     SetNumOfParticipants(evTag.GetNumOfParticipants());
183     SetImpactParameter(evTag.GetImpactParameter());
184     SetVertexX(evTag.GetVertexX());
185     SetVertexY(evTag.GetVertexY());
186     SetVertexZ(evTag.GetVertexZ());
187     SetVertexFlag(evTag.GetVertexFlag());
188     SetVertexZError(evTag.GetVertexZError());
189     SetTriggerMask(evTag.GetTriggerMask());
190     SetTriggerCluster(evTag.GetTriggerCluster());
191     SetZDCNeutron1Energy(evTag.GetZDCNeutron1Energy());
192     SetZDCProton1Energy(evTag.GetZDCProton1Energy());
193     SetZDCNeutron2Energy(evTag.GetZDCNeutron2Energy());
194     SetZDCProton2Energy(evTag.GetZDCProton2Energy());
195     SetZDCEMEnergy(evTag.GetZDCEMEnergy(0),evTag.GetZDCEMEnergy(1));
196     SetT0VertexZ(evTag.GetT0VertexZ());
197     SetNumOfTracks(evTag.GetNumOfTracks());
198     SetNumOfPosTracks(evTag.GetNumOfPosTracks());
199     SetNumOfNegTracks(evTag.GetNumOfNegTracks());
200     SetNumOfNeutrTracks(evTag.GetNumOfNeutrTracks());
201     SetNumOfV0s(evTag.GetNumOfV0s());
202     SetNumOfCascades(evTag.GetNumOfCascades());
203     SetNumOfKinks(evTag.GetNumOfKinks());
204     SetNumOfPMDTracks(evTag.GetNumOfPMDTracks());
205     SetNumOfFMDTracks(evTag.GetNumOfFMDTracks());
206     SetNumOfPHOSClusters(evTag.GetNumOfPHOSClusters());
207     SetNumOfEMCALClusters(evTag.GetNumOfEMCALClusters());
208     SetNumOfJetCandidates(evTag.GetNumOfJetCandidates());
209     SetNumOfHardPhotonsCandidates(evTag.GetNumOfHardPhotonsCandidates());
210     SetMaxJetEnergy(evTag.GetMaxJetEnergy());
211     SetMaxNeutralEnergy(evTag.GetMaxNeutralEnergy());
212     SetNumOfChargedAbove1GeV(evTag.GetNumOfChargedAbove1GeV());
213     SetNumOfChargedAbove3GeV(evTag.GetNumOfChargedAbove3GeV());
214     SetNumOfChargedAbove10GeV(evTag.GetNumOfChargedAbove10GeV());
215     SetNumOfMuonsAbove1GeV(evTag.GetNumOfMuonsAbove1GeV());
216     SetNumOfMuonsAbove3GeV(evTag.GetNumOfMuonsAbove3GeV());
217     SetNumOfMuonsAbove10GeV(evTag.GetNumOfMuonsAbove10GeV());
218     SetNumOfElectronsAbove1GeV(evTag.GetNumOfElectronsAbove1GeV());
219     SetNumOfElectronsAbove3GeV(evTag.GetNumOfElectronsAbove3GeV());
220     SetNumOfElectronsAbove10GeV(evTag.GetNumOfElectronsAbove10GeV());
221     SetNumOfElectrons(evTag.GetNumOfElectrons());
222     SetNumOfMuons(evTag.GetNumOfMuons());
223     SetNumOfPions(evTag.GetNumOfPions());
224     SetNumOfKaons(evTag.GetNumOfKaons());
225     SetNumOfProtons(evTag.GetNumOfProtons());
226     SetNumOfLambdas(evTag.GetNumOfLambdas());
227     SetNumOfPhotons(evTag.GetNumOfPhotons());
228     SetNumOfPi0s(evTag.GetNumOfPi0s());
229     SetNumOfNeutrons(evTag.GetNumOfNeutrons());
230     SetNumOfKaon0s(evTag.GetNumOfKaon0s());
231     SetTotalMomentum(evTag.GetTotalMomentum());
232     SetMeanPt(evTag.GetMeanPt());
233     SetMaxPt(evTag.GetMaxPt());
234     SetNeutralTotalMomentum(evTag.GetNeutralTotalMomentum());
235     SetNeutralMeanPt(evTag.GetNeutralMeanPt());
236     SetNeutralMaxPt(evTag.GetNeutralMaxPt());
237     SetEventPlaneAngle(evTag.GetEventPlaneAngle());
238     SetHBTRadii(evTag.GetHBTRadii());
239   }
240   return *this;
241 }
242
243 //___________________________________________________________________________
244 AliEventTag::~AliEventTag() {
245   // AliEventTag destructor
246 }