Trigger bit mask and multiplicity per PMT in the VZERO ESD. Related changes and class...
[u/mrichter/AliRoot.git] / STEER / AliESDVZERO.h
CommitLineData
dd735cf0 1#ifndef AliESDVZERO_H
2#define AliESDVZERO_H
3
4#include <TObject.h>
5
6class AliESDVZERO : public TObject
7{
8public:
9 AliESDVZERO();
10 AliESDVZERO(const AliESDVZERO&);
a055ee24 11 AliESDVZERO(UInt_t BBtriggerV0A, UInt_t BGtriggerV0A,
12 UInt_t BBtriggerV0C, UInt_t BGtriggerV0C,
13 Short_t *Multiplicity);
732a24fe 14
a055ee24 15 virtual ~AliESDVZERO() {};
dd735cf0 16
a055ee24 17 virtual void SetBBtriggerV0A(UInt_t BBtrigger) {fBBtriggerV0A=BBtrigger;}
18 virtual void SetBGtriggerV0A(UInt_t BGtrigger) {fBGtriggerV0A=BGtrigger;}
19 virtual void SetBBtriggerV0C(UInt_t BBtrigger) {fBBtriggerV0C=BBtrigger;}
20 virtual void SetBGtriggerV0C(UInt_t BGtrigger) {fBGtriggerV0C=BGtrigger;}
21 virtual void SetMultiplicity(Short_t Multiplicity[64])
22 {for(Int_t i=0;i<64;i++) fMultiplicity[i]=Multiplicity[i];}
dd735cf0 23
a055ee24 24 // Getters
25 Short_t GetNbPMV0A();
26 Short_t GetNbPMV0C();
27 Int_t GetMTotV0A();
28 Int_t GetMTotV0C();
29 Int_t* GetMRingV0A();
30 Int_t* GetMRingV0C();
31 Int_t GetMRingV0A(Int_t ring);
32 Int_t GetMRingV0C(Int_t ring);
33
34 Int_t GetMultiplicity(Int_t i);
35 Bool_t BBTriggerV0A(Int_t i);
36 Bool_t BGTriggerV0A(Int_t i);
37 Bool_t BBTriggerV0C(Int_t i);
38 Bool_t BGTriggerV0C(Int_t i);
39
40 Bool_t OutOfRange(Int_t i, const char *s, Int_t upper) const;
41 AliESDVZERO &operator=(const AliESDVZERO& source);
dd735cf0 42
43protected:
dd735cf0 44
a055ee24 45 UInt_t fBBtriggerV0A; // bit mask for Beam-Beam trigger in V0A
46 UInt_t fBGtriggerV0A; // bit mask for Beam-Gas trigger in V0A
47 UInt_t fBBtriggerV0C; // bit mask for Beam-Beam trigger in V0C
48 UInt_t fBGtriggerV0C; // bit mask for Beam-Gas trigger in V0C
49
50 UShort_t fMultiplicity[64]; // multiplicity per PMT
cd888a89 51
a055ee24 52 ClassDef(AliESDVZERO,3)
dd735cf0 53};
54
55#endif