Update master to aliroot
[u/mrichter/AliRoot.git] / STEER / STEERBase / AliVZDC.h
1 #ifndef ALIVZDC_H
2 #define ALIVZDC_H
3
4 //-------------------------------------------------------------------------
5 //     Base class for ESD and AOD ZDC data
6 //     Author: Chiara Oppedisano
7 //     Chiara.Oppedisano@cern.ch 
8 //-------------------------------------------------------------------------
9
10 #include "TObject.h"
11
12 class AliVZDC : public TObject 
13 {
14 public:
15   AliVZDC() { }
16   AliVZDC(const AliVZDC& source);
17   AliVZDC &operator=(const AliVZDC& source);
18
19   virtual ~AliVZDC() { }
20  
21   enum {
22     kCorrectedTDCFilled = BIT(14),
23     kEnergyCalibratedSignal = BIT(15)
24   };
25
26   virtual Short_t  GetZDCParticipants() const = 0; 
27   virtual Short_t  GetZDCPartSideA()    const = 0; 
28   virtual Short_t  GetZDCPartSideC()    const  = 0;
29   virtual Double_t GetImpactParameter()  const = 0;
30   virtual Double_t GetImpactParamSideA() const = 0;
31   virtual Double_t GetImpactParamSideC() const = 0;
32
33   virtual Double_t GetZNCEnergy() const = 0;
34   virtual Double_t GetZNAEnergy() const = 0;
35   virtual Double_t GetZPCEnergy() const = 0;
36   virtual Double_t GetZPAEnergy() const = 0;
37   virtual Double_t GetZEM1Energy() const = 0; 
38   virtual Double_t GetZEM2Energy() const = 0; 
39     
40   virtual const Double_t *GetZNCTowerEnergy() const = 0; 
41   virtual const Double_t *GetZNATowerEnergy() const = 0; 
42   virtual const Double_t *GetZPCTowerEnergy() const  = 0;
43   virtual const Double_t *GetZPATowerEnergy() const  = 0;
44   virtual const Double_t *GetZNCTowerEnergyLR() const = 0; 
45   virtual const Double_t *GetZNATowerEnergyLR() const = 0; 
46   
47   virtual Bool_t GetZNCentroidInPbPb(Float_t /*beamEne*/, Double_t* /*centrZNC[2]*/, Double_t*
48   /*centrZNA[2]*/) {return kFALSE;}
49   virtual Bool_t GetZNCentroidInpp(Double_t* /*centrZNC[2]*/, Double_t* /*centrZNA[2]*/)  {return kFALSE;}
50
51   virtual Float_t GetZDCTimeSum() const = 0;
52   virtual Float_t GetZDCTimeDiff() const = 0;
53     
54   ClassDef(AliVZDC,1)
55 };
56
57 #endif