AliRoot Core  3dc7879 (3dc7879)
AliVVZERO.h
Go to the documentation of this file.
1 #ifndef ALIVVZERO_H
2 #define ALIVVZERO_H
3 
4 //-------------------------------------------------------------------------
5 // Base class for ESD and AOD VZERO data
6 // Author: Cvetan Cheshkov
7 // cvetan.cheshkov@cern.ch 2/02/2011
8 //-------------------------------------------------------------------------
9 
10 #include "TObject.h"
11 #include "TMath.h"
12 
13 class AliVVZERO : public TObject
14 {
15 public:
16  AliVVZERO() { }
17  AliVVZERO(const AliVVZERO& source);
18  AliVVZERO &operator=(const AliVVZERO& source);
19 
20  virtual ~AliVVZERO() { }
21 
22  enum {
24  kTriggerBitsFilled = BIT(15),
25  kDecisionFilled = BIT(16),
26  kOnlineBitsFilled = BIT(17),
28  kRobustMeanTime = BIT(19),
31  };
32  enum Decision { kV0Invalid = -1, kV0Empty = 0, kV0BB, kV0BG, kV0Fake };
33  enum TriggerBits {
35  kBBAorBBC = 1,
37  kBGA = 3,
39  kBGC = 5,
44  kMTAandMTC = 10,
45  kMTAorMTC = 11,
46  kBBA = 12,
47  kBBC = 13,
48  kBGAorBGC = 14,
50  };
51 
52  virtual Short_t GetNbPMV0A() const = 0;
53  virtual Short_t GetNbPMV0C() const = 0;
54  virtual Float_t GetMTotV0A() const = 0;
55  virtual Float_t GetMTotV0C() const = 0;
56  virtual Float_t GetMRingV0A(Int_t ring) const = 0;
57  virtual Float_t GetMRingV0C(Int_t ring) const = 0;
58 
59  virtual Float_t GetMultiplicity(Int_t i) const = 0;
60  virtual Float_t GetMultiplicityV0A(Int_t i) const = 0;
61  virtual Float_t GetMultiplicityV0C(Int_t i) const = 0;
62 
63  virtual Bool_t BBTriggerV0A(Int_t i) const = 0;
64  virtual Bool_t BGTriggerV0A(Int_t i) const = 0;
65  virtual Bool_t BBTriggerV0C(Int_t i) const = 0;
66  virtual Bool_t BGTriggerV0C(Int_t i) const = 0;
67  virtual Bool_t GetBBFlag(Int_t i) const = 0;
68  virtual Bool_t GetBGFlag(Int_t i) const = 0;
69 
70  virtual Float_t GetV0ATime() const = 0;
71  virtual Float_t GetV0CTime() const = 0;
72 
73  virtual Decision GetV0ADecision() const = 0;
74  virtual Decision GetV0CDecision() const = 0;
75 
76  virtual UShort_t GetTriggerChargeA() const = 0;
77  virtual UShort_t GetTriggerChargeC() const = 0;
78  virtual UShort_t GetTriggerBits() const = 0;
79 
80  virtual Bool_t GetPFBBFlag(Int_t channel, Int_t clock) const = 0;
81  virtual Bool_t GetPFBGFlag(Int_t channel, Int_t clock) const = 0;
82 
83  static Float_t GetVZEROAvgPhi(Int_t channel)
84  { return TMath::Pi() / 8 + TMath::Pi() / 4 * (channel%8); }
85  static Float_t GetVZEROEtaMin(Int_t channel);
86  static Float_t GetVZEROEtaMax(Int_t channel);
87 
88 protected:
89 
90  Bool_t OutOfRange(Int_t i, const char *s, Int_t upper) const;
91 
92  ClassDef(AliVVZERO,3)
93 };
94 
95 #endif
AliVVZERO()
Definition: AliVVZERO.h:16
virtual Float_t GetMRingV0C(Int_t ring) const =0
virtual Bool_t GetBGFlag(Int_t i) const =0
virtual Short_t GetNbPMV0C() const =0
virtual Bool_t BBTriggerV0C(Int_t i) const =0
virtual UShort_t GetTriggerChargeA() const =0
Bool_t OutOfRange(Int_t i, const char *s, Int_t upper) const
Definition: AliVVZERO.cxx:44
static Float_t GetVZEROAvgPhi(Int_t channel)
Definition: AliVVZERO.h:83
virtual Bool_t GetPFBGFlag(Int_t channel, Int_t clock) const =0
virtual Decision GetV0ADecision() const =0
static Float_t GetVZEROEtaMax(Int_t channel)
Definition: AliVVZERO.cxx:65
virtual Bool_t GetPFBBFlag(Int_t channel, Int_t clock) const =0
virtual Bool_t BBTriggerV0A(Int_t i) const =0
virtual Float_t GetV0CTime() const =0
virtual Decision GetV0CDecision() const =0
virtual Short_t GetNbPMV0A() const =0
virtual Float_t GetMultiplicity(Int_t i) const =0
virtual UShort_t GetTriggerBits() const =0
virtual Float_t GetMTotV0C() const =0
virtual Float_t GetMRingV0A(Int_t ring) const =0
virtual Bool_t BGTriggerV0C(Int_t i) const =0
virtual UShort_t GetTriggerChargeC() const =0
virtual Bool_t GetBBFlag(Int_t i) const =0
virtual Bool_t BGTriggerV0A(Int_t i) const =0
static Float_t GetVZEROEtaMin(Int_t channel)
Definition: AliVVZERO.cxx:56
virtual Float_t GetMultiplicityV0C(Int_t i) const =0
virtual Float_t GetMTotV0A() const =0
virtual ~AliVVZERO()
Definition: AliVVZERO.h:20
virtual Float_t GetMultiplicityV0A(Int_t i) const =0
virtual Float_t GetV0ATime() const =0
AliVVZERO & operator=(const AliVVZERO &source)
Definition: AliVVZERO.cxx:32