]>
Commit | Line | Data |
---|---|---|
5fc205b9 | 1 | #ifndef ALIESDVZERO_H |
2 | #define ALIESDVZERO_H | |
dd735cf0 | 3 | |
b734abbe | 4 | //------------------------------------------------------------------------- |
5 | // Container class for ESD VZERO data | |
6 | // Author: Brigitte Cheynis & Cvetan Cheshkov | |
7 | //------------------------------------------------------------------------- | |
dd735cf0 | 8 | |
b734abbe | 9 | #include <AliVVZERO.h> |
10 | ||
11 | class AliESDVZERO : public AliVVZERO | |
dd735cf0 | 12 | { |
13 | public: | |
14 | AliESDVZERO(); | |
5fc205b9 | 15 | AliESDVZERO(const AliESDVZERO&o); |
d0502ab2 | 16 | AliESDVZERO(UInt_t BBtriggerV0A, UInt_t BGtriggerV0A, |
17 | UInt_t BBtriggerV0C, UInt_t BGtriggerV0C, | |
db0db003 | 18 | Float_t *Multiplicity, Float_t *Adc, |
19 | Float_t *Time, Float_t *Width, Bool_t *BBFlag, Bool_t *BGFlag); | |
b734abbe | 20 | void Copy(TObject &obj) const; |
732a24fe | 21 | |
a055ee24 | 22 | virtual ~AliESDVZERO() {}; |
b44c933e | 23 | |
d0502ab2 | 24 | // Setters |
b734abbe | 25 | void SetBBtriggerV0A(UInt_t BBtrigger) {fBBtriggerV0A=BBtrigger;} |
26 | void SetBGtriggerV0A(UInt_t BGtrigger) {fBGtriggerV0A=BGtrigger;} | |
27 | void SetBBtriggerV0C(UInt_t BBtrigger) {fBBtriggerV0C=BBtrigger;} | |
28 | void SetBGtriggerV0C(UInt_t BGtrigger) {fBGtriggerV0C=BGtrigger;} | |
29 | void SetMultiplicity(Float_t Multiplicity[64]) | |
a055ee24 | 30 | {for(Int_t i=0;i<64;i++) fMultiplicity[i]=Multiplicity[i];} |
b734abbe | 31 | void SetADC(Float_t adc[64]) |
28fdf12c | 32 | {for(Int_t i=0;i<64;i++) fAdc[i]=adc[i];} |
b734abbe | 33 | void SetTime(Float_t time[64]) |
28fdf12c | 34 | {for(Int_t i=0;i<64;i++) fTime[i]=time[i];} |
b734abbe | 35 | void SetWidth(Float_t width[64]) |
d0502ab2 | 36 | {for(Int_t i=0;i<64;i++) fWidth[i]=width[i];} |
b734abbe | 37 | void SetBBFlag(Bool_t BBFlag[64]) |
d0502ab2 | 38 | {for(Int_t i=0;i<64;i++) fBBFlag[i]=BBFlag[i];} |
b734abbe | 39 | void SetBGFlag(Bool_t BGFlag[64]) |
d0502ab2 | 40 | {for(Int_t i=0;i<64;i++) fBGFlag[i]=BGFlag[i];} |
b44c933e | 41 | |
42 | void SetV0ATime(Float_t time) {fV0ATime = time;} | |
43 | void SetV0CTime(Float_t time) {fV0CTime = time;} | |
44 | void SetV0ATimeError(Float_t err) {fV0ATimeError = err;} | |
45 | void SetV0CTimeError(Float_t err) {fV0CTimeError = err;} | |
46 | ||
47 | void SetV0ADecision(Decision des) {fV0ADecision = des;} | |
48 | void SetV0CDecision(Decision des) {fV0CDecision = des;} | |
d0502ab2 | 49 | |
a055ee24 | 50 | // Getters |
b734abbe | 51 | virtual Short_t GetNbPMV0A() const; |
52 | virtual Short_t GetNbPMV0C() const; | |
53 | virtual Float_t GetMTotV0A() const; | |
54 | virtual Float_t GetMTotV0C() const; | |
55 | virtual Float_t GetMRingV0A(Int_t ring) const; | |
56 | virtual Float_t GetMRingV0C(Int_t ring) const; | |
57 | ||
58 | virtual Float_t GetMultiplicity(Int_t i) const; | |
59 | virtual Float_t GetMultiplicityV0A(Int_t i) const; | |
60 | virtual Float_t GetMultiplicityV0C(Int_t i) const; | |
61 | virtual Float_t GetAdc(Int_t i) const; | |
62 | virtual Float_t GetAdcV0A(Int_t i) const; | |
63 | virtual Float_t GetAdcV0C(Int_t i) const; | |
64 | virtual Float_t GetTime(Int_t i) const; | |
65 | virtual Float_t GetTimeV0A(Int_t i) const; | |
66 | virtual Float_t GetTimeV0C(Int_t i) const; | |
67 | virtual Float_t GetWidth(Int_t i) const; | |
68 | virtual Float_t GetWidthV0A(Int_t i) const; | |
69 | virtual Float_t GetWidthV0C(Int_t i) const; | |
70 | virtual Bool_t BBTriggerV0A(Int_t i) const; | |
71 | virtual Bool_t BGTriggerV0A(Int_t i) const; | |
72 | virtual Bool_t BBTriggerV0C(Int_t i) const; | |
73 | virtual Bool_t BGTriggerV0C(Int_t i) const; | |
74 | virtual Bool_t GetBBFlag(Int_t i) const; | |
75 | virtual Bool_t GetBGFlag(Int_t i) const; | |
76 | ||
77 | virtual Float_t GetV0ATime() const { return fV0ATime; } | |
78 | virtual Float_t GetV0CTime() const { return fV0CTime; } | |
79 | virtual Float_t GetV0ATimeError() const { return fV0ATimeError; } | |
80 | virtual Float_t GetV0CTimeError() const { return fV0CTimeError; } | |
81 | ||
82 | virtual Decision GetV0ADecision() const { return fV0ADecision; } | |
83 | virtual Decision GetV0CDecision() const { return fV0CDecision; } | |
d0502ab2 | 84 | |
a055ee24 | 85 | AliESDVZERO &operator=(const AliESDVZERO& source); |
dd735cf0 | 86 | |
87 | protected: | |
dd735cf0 | 88 | |
d0502ab2 | 89 | UInt_t fBBtriggerV0A; // bit mask for Beam-Beam trigger in V0A |
90 | UInt_t fBGtriggerV0A; // bit mask for Beam-Gas trigger in V0A | |
91 | UInt_t fBBtriggerV0C; // bit mask for Beam-Beam trigger in V0C | |
92 | UInt_t fBGtriggerV0C; // bit mask for Beam-Gas trigger in V0C | |
a055ee24 | 93 | |
6c6d6114 | 94 | Float_t fMultiplicity[64]; // multiplicity for each channel |
db0db003 | 95 | Float_t fAdc[64]; // adc for each channel |
96 | Float_t fTime[64]; // time for each channel | |
97 | Float_t fWidth[64]; // time width for each channel | |
d0502ab2 | 98 | Bool_t fBBFlag[64]; // BB Flags from Online V0 Electronics |
99 | Bool_t fBGFlag[64]; // BG Flags from Online V0 Electronics | |
b44c933e | 100 | |
101 | Float_t fV0ATime; // Average time in V0A | |
102 | Float_t fV0CTime; // Average time in V0C | |
103 | Float_t fV0ATimeError; // Error in the average time in V0A | |
104 | Float_t fV0CTimeError; // Error in the average time in V0C | |
105 | ||
106 | Decision fV0ADecision; // V0A final decision based on average time of channels | |
107 | Decision fV0CDecision; // V0C final decision based on average time of channels | |
108 | ||
b734abbe | 109 | ClassDef(AliESDVZERO,9) |
dd735cf0 | 110 | }; |
111 | ||
112 | #endif |