]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/AliAODVZERO.h
Introduction of base ESD/AOD and AOD VZERO container classes.
[u/mrichter/AliRoot.git] / STEER / AliAODVZERO.h
1 #ifndef ALIAODVZERO_H
2 #define ALIAODVZERO_H
3
4 //-------------------------------------------------------------------------
5 //     Container class for AOD VZERO data
6 //     Author: Cvetan Cheshkov
7 //     cvetan.cheshkov@cern.ch 2/02/2011
8 //-------------------------------------------------------------------------
9
10 #include "AliVVZERO.h"
11
12 class AliAODVZERO : public AliVVZERO 
13 {
14 public:
15   AliAODVZERO();
16   AliAODVZERO(const AliAODVZERO& source);
17   AliAODVZERO(const AliVVZERO& source);
18   AliAODVZERO &operator=(const AliAODVZERO& source);
19
20   virtual ~AliAODVZERO() {};
21
22   void SetMultiplicity(Float_t Multiplicity[64])
23     {for(Int_t i=0;i<64;i++) fMultiplicity[i]=Multiplicity[i];}
24
25   // Getters  
26   virtual Short_t  GetNbPMV0A() const;
27   virtual Short_t  GetNbPMV0C() const;
28   virtual Float_t  GetMTotV0A() const;
29   virtual Float_t  GetMTotV0C() const; 
30   virtual Float_t  GetMRingV0A(Int_t ring) const;
31   virtual Float_t  GetMRingV0C(Int_t ring) const;
32
33   virtual Float_t  GetMultiplicity(Int_t i) const;
34   virtual Float_t  GetMultiplicityV0A(Int_t i) const;
35   virtual Float_t  GetMultiplicityV0C(Int_t i) const;    
36
37   virtual Bool_t   BBTriggerV0A(Int_t i) const;
38   virtual Bool_t   BGTriggerV0A(Int_t i) const;
39   virtual Bool_t   BBTriggerV0C(Int_t i) const;
40   virtual Bool_t   BGTriggerV0C(Int_t i) const;  
41   virtual Bool_t   GetBBFlag(Int_t i) const;
42   virtual Bool_t   GetBGFlag(Int_t i) const;
43
44   virtual Float_t  GetV0ATime() const { return fV0ATime; }
45   virtual Float_t  GetV0CTime() const { return fV0CTime; }
46
47   virtual Decision GetV0ADecision() const { return fV0ADecision; }
48   virtual Decision GetV0CDecision() const { return fV0CDecision; }
49   
50 protected:
51
52   UInt_t  fBBtriggerV0A;     // bit mask for Beam-Beam trigger in V0A
53   UInt_t  fBGtriggerV0A;     // bit mask for Beam-Gas trigger in V0A
54   UInt_t  fBBtriggerV0C;     // bit mask for Beam-Beam trigger in V0C
55   UInt_t  fBGtriggerV0C;     // bit mask for Beam-Gas trigger in V0C
56
57   Float_t fMultiplicity[64]; //  multiplicity for each channel
58
59   Bool_t  fBBFlag[64];       //  BB Flags from Online V0 Electronics
60   Bool_t  fBGFlag[64];       //  BG Flags from Online V0 Electronics
61
62   Float_t fV0ATime;          // Average time in V0A
63   Float_t fV0CTime;          // Average time in V0C
64
65   Decision fV0ADecision;     // V0A final decision based on average time of channels
66   Decision fV0CDecision;     // V0C final decision based on average time of channels
67
68   ClassDef(AliAODVZERO,1)
69 };
70
71 #endif