AliRoot Core  edcc906 (edcc906)
AliESDVZEROfriend.h
Go to the documentation of this file.
1 #ifndef ALIESDVZEROFRIEND_H
2 #define ALIESDVZEROFRIEND_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice */
5 
12 
13 #include "AliVVZEROfriend.h"
14 
16  public :
18  virtual ~AliESDVZEROfriend();
19 
20  AliESDVZEROfriend(const AliESDVZEROfriend& vzerofriend);
21  AliESDVZEROfriend& operator = (const AliESDVZEROfriend& vzerofriend);
22 
23  void Reset();
24 
25 // Getters of various scalers and Minimum Bias flags :
26 
27  ULong64_t GetBBScalers(Int_t channel) const
28  { return fBBScalers[channel]; }
29  ULong64_t GetBGScalers(Int_t channel) const
30  { return fBGScalers[channel]; }
31  UInt_t GetTriggerScalers(Int_t num_scaler) const
32  { return fScalers[num_scaler]; }
33  UInt_t GetBunchNumbersMB(Int_t num_bunch) const
34  { return fBunchNumbers[num_bunch]; }
35  UShort_t GetChargeMB(Int_t channel, Int_t num_bunch) const
36  { return fChargeMB[channel][num_bunch]; }
37  Bool_t GetIntMBFlag(Int_t channel, Int_t num_bunch) const
38  { return fIsIntMB[channel][num_bunch]; }
39  Bool_t GetBBMBFlag(Int_t channel, Int_t num_bunch) const
40  { return fIsBBMB[channel][num_bunch]; }
41  Bool_t GetBGMBFlag(Int_t channel, Int_t num_bunch) const
42  { return fIsBGMB[channel][num_bunch]; }
43 
44 // Getters of ADC signals, ADC pedestals, time information and corresponding flags :
45 
46  Float_t GetADC(Int_t channel) const
47  { return fADC[channel][kNEvOfInt/2]; }
48  Float_t GetPedestal(Int_t channel, Int_t event) const
49  { return fADC[channel][event]; }
50  Bool_t GetIntegratorFlag(Int_t channel, Int_t event) const
51  { return fIsInt[channel][event]; }
52  Bool_t GetBBFlag(Int_t channel, Int_t event) const
53  { return fIsBB[channel][event]; }
54  Bool_t GetBGFlag(Int_t channel, Int_t event) const
55  { return fIsBG[channel][event]; }
56  Float_t GetTime(Int_t channel) const
57  { return fTime[channel]; }
58  Float_t GetWidth(Int_t channel) const
59  { return fWidth[channel]; }
60 
61  // Setters
62  void SetBBScalers(Int_t channel, ULong64_t scalers)
63  { fBBScalers[channel] = scalers; }
64  void SetBGScalers(Int_t channel, ULong64_t scalers)
65  { fBGScalers[channel] = scalers; }
66  void SetTriggerScalers(Int_t num_scaler, UInt_t scaler)
67  { fScalers[num_scaler] = scaler; }
68  void SetBunchNumbersMB(Int_t num_bunch, UInt_t bunch)
69  { fBunchNumbers[num_bunch] = bunch; }
70  void SetChargeMB(Int_t channel,Int_t num_bunch, UShort_t charge)
71  { fChargeMB[channel][num_bunch] = charge; }
72  void SetIntMBFlag(Int_t channel,Int_t num_bunch, Bool_t flag)
73  { fIsIntMB[channel][num_bunch] = flag; }
74  void SetBBMBFlag(Int_t channel,Int_t num_bunch, Bool_t flag)
75  { fIsBBMB[channel][num_bunch] = flag; }
76  void SetBGMBFlag(Int_t channel,Int_t num_bunch, Bool_t flag)
77  { fIsBGMB[channel][num_bunch] = flag; }
78 
79  void SetPedestal(Int_t channel, Int_t event, Float_t adc)
80  { fADC[channel][event] = adc; }
81  void SetIntegratorFlag(Int_t channel, Int_t event, Bool_t flag)
82  { fIsInt[channel][event] = flag; }
83  void SetBBFlag(Int_t channel, Int_t event, Bool_t flag)
84  { fIsBB[channel][event] = flag; }
85  void SetBGFlag(Int_t channel, Int_t event, Bool_t flag)
86  { fIsBG[channel][event] = flag; }
87  void SetTime(Int_t channel, Float_t time)
88  { fTime[channel] = time; }
89  void SetWidth(Int_t channel, Float_t width)
90  { fWidth[channel] = width; }
91 
92  UShort_t GetTriggerInputs() const
93  { return fTrigger; }
94  UShort_t GetTriggerInputsMask() const
95  { return fTriggerMask; }
96  void SetTriggerInputs(UShort_t inputs)
97  { fTrigger = inputs; }
98  void SetTriggerInputsMask(UShort_t mask)
99  { fTriggerMask = mask; }
100 
101  private:
102 
103  ULong64_t fBBScalers[kNChannels]; // 'Beam-Beam' scalers for all channels
104  ULong64_t fBGScalers[kNChannels]; // 'Beam-Gas' scalers for all channels
105  UInt_t fScalers[kNScalers]; // Trigger scalers
106  UInt_t fBunchNumbers[kNBunches]; // Bunch numbers for the previous 10 MB events
107  UShort_t fChargeMB[kNChannels][kNBunches]; // ADC counts for all channels for the previous 10 MB events
108  Bool_t fIsIntMB[kNChannels][kNBunches]; // 'Integrator' flag for all channels for the previous 10 MB events
109  Bool_t fIsBBMB[kNChannels][kNBunches]; // 'Beam-Beam' flag for all channels for the previous 10 MB events
110  Bool_t fIsBGMB[kNChannels][kNBunches]; // 'Beam-Gas' for all channels for the previous 10 MB events
111 
112  Float_t fADC[kNChannels][kNEvOfInt]; // ADC counts for all channels and all events of interest
113  Bool_t fIsInt[kNChannels][kNEvOfInt]; // 'Integrator' flag for all channels
114  Bool_t fIsBB[kNChannels][kNEvOfInt]; // 'Beam-Beam' flag for all channels
115  Bool_t fIsBG[kNChannels][kNEvOfInt]; // 'Beam-Gas' flag for all channels
116  Float_t fTime[kNChannels]; // leading time for all channels - from HPTDC - in nanoseconds
117  Float_t fWidth[kNChannels]; // pulse width for all channels - from HPTDC - in nanoseconds
118 
119  UShort_t fTrigger; // VZERO trigger inputs
120  UShort_t fTriggerMask; // VZERO trigger inputs mask
121 
122  ClassDef(AliESDVZEROfriend, 3) // container class for VZERO DDL raw data
123 };
124 
125 #endif
Bool_t GetIntMBFlag(Int_t channel, Int_t num_bunch) const
UShort_t GetTriggerInputs() const
Float_t fADC[kNChannels][kNEvOfInt]
void SetTime(Int_t channel, Float_t time)
Bool_t fIsInt[kNChannels][kNEvOfInt]
Float_t GetPedestal(Int_t channel, Int_t event) const
void SetBunchNumbersMB(Int_t num_bunch, UInt_t bunch)
Bool_t GetBBMBFlag(Int_t channel, Int_t num_bunch) const
Bool_t GetBGMBFlag(Int_t channel, Int_t num_bunch) const
Bool_t fIsBGMB[kNChannels][kNBunches]
UShort_t GetTriggerInputsMask() const
void SetChargeMB(Int_t channel, Int_t num_bunch, UShort_t charge)
void SetBBScalers(Int_t channel, ULong64_t scalers)
void SetIntMBFlag(Int_t channel, Int_t num_bunch, Bool_t flag)
Float_t fWidth[kNChannels]
Float_t GetADC(Int_t channel) const
UInt_t fScalers[kNScalers]
void SetBGScalers(Int_t channel, ULong64_t scalers)
void SetTriggerInputsMask(UShort_t mask)
void SetPedestal(Int_t channel, Int_t event, Float_t adc)
Float_t GetTime(Int_t channel) const
UShort_t fChargeMB[kNChannels][kNBunches]
AliESDVZEROfriend & operator=(const AliESDVZEROfriend &vzerofriend)
void SetTriggerScalers(Int_t num_scaler, UInt_t scaler)
ULong64_t fBGScalers[kNChannels]
UInt_t GetBunchNumbersMB(Int_t num_bunch) const
Bool_t fIsBB[kNChannels][kNEvOfInt]
Bool_t fIsBBMB[kNChannels][kNBunches]
Bool_t GetBGFlag(Int_t channel, Int_t event) const
void SetTriggerInputs(UShort_t inputs)
ULong64_t fBBScalers[kNChannels]
UShort_t GetChargeMB(Int_t channel, Int_t num_bunch) const
ULong64_t GetBBScalers(Int_t channel) const
UInt_t GetTriggerScalers(Int_t num_scaler) const
Bool_t fIsBG[kNChannels][kNEvOfInt]
Bool_t GetBBFlag(Int_t channel, Int_t event) const
ULong64_t GetBGScalers(Int_t channel) const
UInt_t fBunchNumbers[kNBunches]
void SetIntegratorFlag(Int_t channel, Int_t event, Bool_t flag)
void SetWidth(Int_t channel, Float_t width)
void SetBGFlag(Int_t channel, Int_t event, Bool_t flag)
Float_t fTime[kNChannels]
Bool_t fIsIntMB[kNChannels][kNBunches]
void SetBGMBFlag(Int_t channel, Int_t num_bunch, Bool_t flag)
void SetBBFlag(Int_t channel, Int_t event, Bool_t flag)
Float_t GetWidth(Int_t channel) const
Bool_t GetIntegratorFlag(Int_t channel, Int_t event) const
void SetBBMBFlag(Int_t channel, Int_t num_bunch, Bool_t flag)