]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/AliAODHeader.cxx
PDG codes fixed. Now in sync with the new AliAODTrack PIC capabilities.
[u/mrichter/AliRoot.git] / STEER / AliAODHeader.cxx
1 /**************************************************************************
2  * Copyright(c) 1998-2007, 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 //     AOD event base class
20 //     Author: Markus Oldenburg, CERN
21 //-------------------------------------------------------------------------
22
23 #include "AliAODHeader.h"
24
25 ClassImp(AliAODHeader)
26
27 //______________________________________________________________________________
28 AliAODHeader::AliAODHeader() : 
29   TNamed("header",""),
30   fMagneticField(-999.),
31   fMuonMagFieldScale(-999.),
32   fCentrality(-999.),
33   fZDCN1Energy(-999.),
34   fZDCP1Energy(-999.),
35   fZDCN2Energy(-999.),
36   fZDCP2Energy(-999.),
37   fZDCEMEnergy(-999.),
38   fTriggerMask(0),
39   fEventType(0),
40   fOrbitNumber(0),
41   fBunchCrossNumber(0),
42   fRunNumber(-999),  
43   fRefMult(-999),
44   fRefMultPos(-999),
45   fRefMultNeg(-999),
46   fTriggerCluster(0)
47 {
48   // default constructor
49   
50 }
51
52 //______________________________________________________________________________
53 AliAODHeader::AliAODHeader(Int_t nRun, 
54                            UShort_t nBunchX,
55                            UInt_t nOrbit,
56                            Char_t *title) :
57   TNamed("header", title),
58   fMagneticField(-999.),
59   fMuonMagFieldScale(-999.),
60   fCentrality(-999.),
61   fZDCN1Energy(-999.),
62   fZDCP1Energy(-999.),
63   fZDCN2Energy(-999.),
64   fZDCP2Energy(-999.),
65   fZDCEMEnergy(-999.),
66   fTriggerMask(0),
67   fEventType(0),
68   fOrbitNumber(nOrbit),
69   fBunchCrossNumber(nBunchX),
70   fRunNumber(nRun),
71   fRefMult(-999),
72   fRefMultPos(-999),
73   fRefMultNeg(-999),
74   fTriggerCluster(0)
75 {
76   // constructor
77 }
78
79 //______________________________________________________________________________
80 AliAODHeader::AliAODHeader(Int_t nRun, 
81                            UShort_t nBunchX,
82                            UInt_t nOrbit,
83                            Int_t refMult,
84                            Int_t refMultPos,
85                            Int_t refMultNeg,
86                            Double_t magField,
87                            Double_t muonMagFieldScale,
88                            Double_t cent,
89                            Double_t n1Energy,
90                            Double_t p1Energy,
91                            Double_t n2Energy,
92                            Double_t p2Energy,
93                            Double_t emEnergy,
94                            ULong64_t trigMask,
95                            UChar_t trigClus,
96                            UInt_t evttype,
97                            Char_t *title) :
98   TNamed("header",title),
99   fMagneticField(magField),
100   fMuonMagFieldScale(muonMagFieldScale),
101   fCentrality(cent),
102   fZDCN1Energy(n1Energy),
103   fZDCP1Energy(p1Energy),
104   fZDCN2Energy(n2Energy),
105   fZDCP2Energy(p2Energy),
106   fZDCEMEnergy(emEnergy),
107   fTriggerMask(trigMask),
108   fEventType(evttype),
109   fOrbitNumber(nOrbit),
110   fBunchCrossNumber(nBunchX),
111   fRunNumber(nRun),  
112   fRefMult(refMult),
113   fRefMultPos(refMultPos),
114   fRefMultNeg(refMultNeg),
115   fTriggerCluster(trigClus)
116 {
117   // constructor
118 }
119
120 //______________________________________________________________________________
121 AliAODHeader::~AliAODHeader() 
122 {
123   // destructor
124   
125 }
126
127 //______________________________________________________________________________
128 AliAODHeader::AliAODHeader(const AliAODHeader& hdr) :
129   TNamed(hdr),
130   fMagneticField(hdr.fMagneticField),
131   fMuonMagFieldScale(hdr.fMuonMagFieldScale),
132   fCentrality(hdr.fCentrality),
133   fZDCN1Energy(hdr.fZDCN1Energy),
134   fZDCP1Energy(hdr.fZDCP1Energy),
135   fZDCN2Energy(hdr.fZDCN2Energy),
136   fZDCP2Energy(hdr.fZDCP2Energy),
137   fZDCEMEnergy(hdr.fZDCEMEnergy),
138   fTriggerMask(hdr.fTriggerMask),
139   fEventType(hdr.fEventType),
140   fOrbitNumber(hdr.fOrbitNumber),
141   fBunchCrossNumber(hdr.fBunchCrossNumber),
142   fRunNumber(hdr.fRunNumber),  
143   fRefMult(hdr.fRefMult), 
144   fRefMultPos(hdr.fRefMultPos), 
145   fRefMultNeg(hdr.fRefMultNeg),
146   fTriggerCluster(hdr.fTriggerCluster)
147 {
148   // Copy constructor.
149 }
150
151 //______________________________________________________________________________
152 AliAODHeader& AliAODHeader::operator=(const AliAODHeader& hdr)
153 {
154   // Assignment operator
155   if(this!=&hdr) {
156     
157     // TObject
158     TNamed::operator=(hdr);
159     
160     fMagneticField    = hdr.fMagneticField;
161     fMuonMagFieldScale= hdr.fMuonMagFieldScale;
162     fCentrality       = hdr.fCentrality;
163     fZDCN1Energy      = hdr.fZDCN1Energy;
164     fZDCP1Energy      = hdr.fZDCP1Energy;
165     fZDCN2Energy      = hdr.fZDCN2Energy;
166     fZDCP2Energy      = hdr.fZDCP2Energy;
167     fZDCEMEnergy      = hdr.fZDCEMEnergy;
168     fTriggerMask      = hdr.fTriggerMask;
169     fEventType        = hdr.fEventType;
170     fOrbitNumber      = hdr.fOrbitNumber;
171     fBunchCrossNumber = hdr.fBunchCrossNumber;
172     fRunNumber        = hdr.fRunNumber;
173     fRefMult          = hdr.fRefMult;
174     fRefMultPos       = hdr.fRefMultPos;
175     fRefMultNeg       = hdr.fRefMultNeg;
176     fTriggerCluster   = hdr.fTriggerCluster;
177   }
178
179   return *this;
180 }
181
182 //______________________________________________________________________________
183 void AliAODHeader::Print(Option_t* /*option*/) const 
184 {
185   // prints event information
186
187   printf("Run #                   : %d\n", fRunNumber);
188   printf("Bunch Crossing  #       : %d\n", fBunchCrossNumber);
189   printf("Orbit Number #          : %d\n", fOrbitNumber);
190   printf("Trigger mask            : %lld\n", fTriggerMask);
191   printf("Trigger cluster         : %d\n", fTriggerCluster);
192   printf("Event Type              : %d\n", fEventType);
193   printf("Magnetic field          : %f\n", fMagneticField);
194   printf("Muon mag. field scale   : %f\n", fMuonMagFieldScale);
195   
196   printf("Centrality              : %f\n", fCentrality);
197   printf("ZDC N1 Energy           : %f\n", fZDCN1Energy);
198   printf("ZDC P1 Energy           : %f\n", fZDCP1Energy);
199   printf("ZDC N2 Energy           : %f\n", fZDCN2Energy);
200   printf("ZDC P2 Energy           : %f\n", fZDCP2Energy);
201   printf("ZDC EM Energy           : %f\n", fZDCEMEnergy);
202   printf("ref. Multiplicity       : %d\n", fRefMult);
203   printf("ref. Multiplicity (pos) : %d\n", fRefMultPos);
204   printf("ref. Multiplicity (neg) : %d\n", fRefMultNeg);
205
206 }