]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/AliAODCentrality.h
Coverity fix (Haavard)
[u/mrichter/AliRoot.git] / STEER / AliAODCentrality.h
1 #ifndef AliAODCentrality_H
2 #define AliAODCentrality_H
3 /* Copyright(c) 1998-2007, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6
7 //-------------------------------------------------------------------------
8 //     AOD centrality class
9 //     Author: Alberica Toia, CERN, Alberica.Toia@cern.ch
10 //-------------------------------------------------------------------------
11
12 #include <TNamed.h>
13
14 class AliAODCentrality : public TNamed {
15   
16  public :
17   
18   AliAODCentrality();
19   virtual ~AliAODCentrality();
20   AliAODCentrality(const AliAODCentrality& cnt); 
21   AliAODCentrality& operator=(const AliAODCentrality& cnt);
22   
23   void SetxVertex           (Double_t x) {fxVertex       = x; }
24   void SetyVertex           (Double_t x) {fyVertex       = x; }
25   void SetzVertex           (Double_t x) {fzVertex       = x; }
26   void SetVertexer3d        (Bool_t   x) {fVertexer3d    = x; }
27   void SetbMC               (Double_t x) {fbMC = x; } 
28   void SetNpartTargMC       (Int_t    x) {fNpartTargMC = x; }
29   void SetNpartProjMC       (Int_t    x) {fNpartProjMC = x; }
30   void SetNNColl            (Int_t    x) {fNNColl = x; }     
31   void SetNNwColl           (Int_t    x) {fNNwColl = x; }    
32   void SetNwNColl           (Int_t    x) {fNwNColl = x; }    
33   void SetNwNwColl          (Int_t    x) {fNwNwColl = x; }   
34   void SetNTracklets        (Int_t    x) {fNTracklets = x; } 
35   void SetNSingleClusters   (Int_t    x) {fNSingleClusters = x; }
36   void SetNClusters         (Int_t x0, Int_t x1, Int_t x2, Int_t x3, Int_t x4, Int_t x5) {
37     fNClusters[0] = x0; 
38     fNClusters[1] = x1; 
39     fNClusters[2] = x2; 
40     fNClusters[3] = x3; 
41     fNClusters[4] = x4; 
42     fNClusters[5] = x5; 
43   }   
44   void SetNChips            (Int_t x0, Int_t x1) {
45     fNChips[0] = x0;       
46     fNChips[1] = x1; 
47   }      
48   void SetbZDC              (Double_t x) {fbZDC = x; }           
49   void SetNpartZDC          (Int_t    x) {fNpartZDC = x; }       
50   void SetbZDCA             (Double_t x) {fbZDCA = x; }          
51   void SetNpartZDCA         (Int_t    x) {fNpartZDCA = x; }      
52   void SetbZDCC             (Double_t x) {fbZDCC = x; }          
53   void SetNpartZDCC         (Int_t    x) {fNpartZDCC = x; }      
54   void SetESDFlag         (UInt_t   x) {fESDFlag = x; } 
55   void SetZNCEnergy       (Float_t  x) {fZNCEnergy = x; }
56   void SetZPCEnergy       (Float_t  x) {fZPCEnergy = x; }
57   void SetZNAEnergy       (Float_t  x) {fZNAEnergy = x; }
58   void SetZPAEnergy       (Float_t  x) {fZPAEnergy = x; }
59   void SetZEM1Energy      (Float_t  x) {fZEM1Energy = x; }
60   void SetZEM2Energy      (Float_t  x) {fZEM2Energy = x; }
61   void SetZNCtower          (Float_t x0, Float_t x1, Float_t x2, Float_t x3, Float_t x4) {
62     fZNCtower[0] = x0; fZNCtower[1] = x1; fZNCtower[2] = x2; fZNCtower[3] = x3; fZNCtower[4] = x4; 
63   }   
64   void SetZPCtower          (Float_t x0, Float_t x1, Float_t x2, Float_t x3, Float_t x4) {
65     fZPCtower[0] = x0; fZPCtower[1] = x1; fZPCtower[2] = x2; fZPCtower[3] = x3; fZPCtower[4] = x4; 
66   }   
67   void SetZNAtower          (Float_t x0, Float_t x1, Float_t x2, Float_t x3, Float_t x4) {
68     fZNAtower[0] = x0; fZNAtower[1] = x1; fZNAtower[2] = x2; fZNAtower[3] = x3; fZNAtower[4] = x4; 
69   }   
70   void SetZPAtower          (Float_t x0, Float_t x1, Float_t x2, Float_t x3, Float_t x4) {
71     fZPAtower[0] = x0; fZPAtower[1] = x1; fZPAtower[2] = x2; fZPAtower[3] = x3; fZPAtower[4] = x4; 
72   }   
73   void SetCentrZNC          (Float_t x0, Float_t x1) {
74     fCentrZNC[0] = x0; fCentrZNC[1] = x1; 
75   }   
76   void SetCentrZNA          (Float_t x0, Float_t x1) {
77     fCentrZNA[0] = x0; fCentrZNA[1] = x1; 
78   }   
79   void SetNTracks           (Int_t    x) {fNTracks = x; }    
80   void SetNPmdTracks        (Int_t    x) {fNPmdTracks = x; } 
81   void SetMultV0A           (Double_t x) {fMultV0A = x; }    
82   void SetMultV0C           (Double_t x) {fMultV0C = x; }    
83   void SetMultFMDA          (Float_t  x) {fMultFMDA = x; }    
84   void SetMultFMDC          (Float_t  x) {fMultFMDC = x; }
85   
86   Double_t   GetxVertex           () const {return fxVertex      ; }
87   Double_t   GetyVertex           () const {return fyVertex      ; }
88   Double_t   GetzVertex           () const {return fzVertex      ; }
89   Bool_t     GetVertexer3d        () const {return fVertexer3d   ; }
90   Double_t   GetbMC               () const {return  fbMC          ;}               
91   Int_t      GetNpartTargMC       () const {return  fNpartTargMC  ;}               
92   Int_t      GetNpartProjMC       () const {return  fNpartProjMC  ;}               
93   Int_t      GetNNColl            () const {return  fNNColl       ;}               
94   Int_t      GetNNwColl           () const {return  fNNwColl      ;}               
95   Int_t      GetNwNColl           () const {return  fNwNColl      ;}               
96   Int_t      GetNwNwColl          () const {return  fNwNwColl     ;}               
97   Int_t      GetNTracklets        () const {return  fNTracklets   ;}               
98   Int_t      GetNSingleClusters   () const {return  fNSingleClusters;}               
99   Int_t      GetNClusters0        () const {return  fNClusters[0];}               
100   Int_t      GetNClusters1        () const {return  fNClusters[1];}               
101   Int_t      GetNClusters2        () const {return  fNClusters[2];}               
102   Int_t      GetNClusters3        () const {return  fNClusters[3];}               
103   Int_t      GetNClusters4        () const {return  fNClusters[4];}               
104   Int_t      GetNClusters5        () const {return  fNClusters[5];}              
105   Int_t      GetNChip0            () const {return  fNChips[0];}               
106   Int_t      GetNChip1            () const {return  fNChips[1];}               
107   Double_t   GetbZDC              () const {return  fbZDC         ;}               
108   Int_t      GetNpartZDC          () const {return  fNpartZDC     ;}               
109   Double_t   GetbZDCA             () const {return  fbZDCA        ;}               
110   Int_t      GetNpartZDCA         () const {return  fNpartZDCA    ;}               
111   Double_t   GetbZDCC             () const {return  fbZDCC        ;}               
112   Int_t      GetNpartZDCC         () const {return  fNpartZDCC    ;}               
113   UInt_t     GetESDFlag           () const {return  fESDFlag      ;}               
114   Float_t    GetZNCEnergy         () const {return  fZNCEnergy    ;}               
115   Float_t    GetZPCEnergy         () const {return  fZPCEnergy    ;}               
116   Float_t    GetZNAEnergy         () const {return  fZNAEnergy    ;}               
117   Float_t    GetZPAEnergy         () const {return  fZPAEnergy    ;}               
118   Float_t    GetZEM1Energy        () const {return  fZEM1Energy   ;}               
119   Float_t    GetZEM2Energy        () const {return  fZEM2Energy   ;}               
120   Float_t    GetZNCtower0         () const {return  fZNCtower[0]  ;}               
121   Float_t    GetZNCtower1         () const {return  fZNCtower[1]  ;}               
122   Float_t    GetZNCtower2         () const {return  fZNCtower[2]  ;}               
123   Float_t    GetZNCtower3         () const {return  fZNCtower[3]  ;}               
124   Float_t    GetZNCtower4         () const {return  fZNCtower[4]  ;}               
125   Float_t    GetZPCtower0         () const {return  fZPCtower[0]  ;}               
126   Float_t    GetZPCtower1         () const {return  fZPCtower[1]  ;}               
127   Float_t    GetZPCtower2         () const {return  fZPCtower[2]  ;}               
128   Float_t    GetZPCtower3         () const {return  fZPCtower[3]  ;}               
129   Float_t    GetZPCtower4         () const {return  fZPCtower[4]  ;}               
130   Float_t    GetZNAtower0         () const {return  fZNAtower[0]  ;}               
131   Float_t    GetZNAtower1         () const {return  fZNAtower[1]  ;}               
132   Float_t    GetZNAtower2         () const {return  fZNAtower[2]  ;}               
133   Float_t    GetZNAtower3         () const {return  fZNAtower[3]  ;}               
134   Float_t    GetZNAtower4         () const {return  fZNAtower[4]  ;}               
135   Float_t    GetZPAtower0         () const {return  fZPAtower[0]  ;}               
136   Float_t    GetZPAtower1         () const {return  fZPAtower[1]  ;}               
137   Float_t    GetZPAtower2         () const {return  fZPAtower[2]  ;}               
138   Float_t    GetZPAtower3         () const {return  fZPAtower[3]  ;}               
139   Float_t    GetZPAtower4         () const {return  fZPAtower[4]  ;}               
140   Float_t    GetCentrZNC0         () const {return  fCentrZNC[0]  ;}               
141   Float_t    GetCentrZNC1         () const {return  fCentrZNC[1]  ;}               
142   Float_t    GetCentrZNA0         () const {return  fCentrZNA[0]  ;}               
143   Float_t    GetCentrZNA1         () const {return  fCentrZNA[1]  ;}               
144   Int_t      GetNTracks           () const {return  fNTracks      ;}               
145   Int_t      GetNPmdTracks        () const {return  fNPmdTracks   ;}               
146   Double_t   GetMultV0A           () const {return  fMultV0A      ;}               
147   Double_t   GetMultV0C           () const {return  fMultV0C      ;}               
148   Float_t    GetMultFMDA          () const {return  fMultFMDA     ;}               
149   Float_t    GetMultFMDC          () const {return  fMultFMDC     ;}               
150   
151   void         Print(Option_t* option = "") const;
152   const char*  GetOutputFileName() const {return TNamed::GetName();}
153   void         SetOutputFileName(const char* fname) {TNamed::SetName(fname);}
154
155   
156  private:
157   Double_t fxVertex;            //  X vertex from ITS
158   Double_t fyVertex;            //  Y vertex from ITS
159   Double_t fzVertex;            //  Z vertex from ITS
160   Bool_t   fVertexer3d;         //  Is vertex from 3d vertexer?
161   //
162   Double_t fbMC;                // impact parameter from MC
163   Int_t    fNpartTargMC;        // no. of participants for target nucleus from MC
164   Int_t    fNpartProjMC;        // no. of participants for project nucleus from MC
165   Int_t    fNNColl;             // Number of N-N collisions
166   Int_t    fNNwColl;            // Number of N-Nwounded collisions
167   Int_t    fNwNColl;            // Number of Nwounded-N collisons
168   Int_t    fNwNwColl;           // Number of Nwounded-Nwounded collisions
169   //
170   Int_t    fNTracklets;         //  no. tracklets
171   Int_t    fNSingleClusters;    //  no. single clusters
172   Int_t    fNClusters[6];       //  no. clusters on 6 ITS layers
173   Int_t    fNChips[2];          //  no. chips on 2 SPD layers
174   //
175   Double_t fbZDC;               // impact parameter from ZDC reco
176   Int_t    fNpartZDC;           // no. of participants from ZDC reco
177   Double_t fbZDCA;              // impact parameter from ZDC reco side A
178   Int_t    fNpartZDCA;          // no. of part. from ZDC reco side A
179   Double_t fbZDCC;              // impact parameter from ZDC reco side C
180   Int_t    fNpartZDCC;          // no. of part. from ZDC reco side C
181   //
182   UInt_t   fESDFlag;            //  ZDC ESD flags
183   Float_t  fZNCEnergy;          //  ZNC Energy
184   Float_t  fZPCEnergy;          //  ZPC Energy
185   Float_t  fZNAEnergy;          //  ZNA Energy
186   Float_t  fZPAEnergy;          //  ZPA Energy
187   Float_t  fZEM1Energy;         //  ZEM1 Energy
188   Float_t  fZEM2Energy;         //  ZEM2 Energy
189   Float_t  fZNCtower[5];        //  ZNC 5 tower signals
190   Float_t  fZPCtower[5];        //  ZPC 5 tower signals
191   Float_t  fZNAtower[5];        //  ZNA 5 tower signals
192   Float_t  fZPAtower[5];        //  ZPA 5 tower signals
193   Float_t  fCentrZNC[2];        //  centroid over ZNC
194   Float_t  fCentrZNA[2];        //  centroid over ZNA
195   
196   Int_t    fNTracks;            //  no. tracks
197   Int_t    fNPmdTracks;         //  no. PMD tracks
198   Double_t fMultV0A;            //  multiplicity from V0 reco side A
199   Double_t fMultV0C;            //  multiplicity from V0 reco side C
200   Float_t  fMultFMDA;      //  multiplicity from FMD on detector A
201   Float_t  fMultFMDC;      //  multiplicity from FMD on detector C
202   
203   ClassDef(AliAODCentrality, 1);
204 };
205
206
207 #endif