AliRoot Core  edcc906 (edcc906)
AliESDADfriend.h
Go to the documentation of this file.
1 #ifndef ALIESDADFRIEND_H
2 #define ALIESDADFRIEND_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 <TObject.h>
14 
15 class AliESDADfriend: public TObject {
16  public :
18  virtual ~AliESDADfriend();
19 
20  AliESDADfriend(const AliESDADfriend& adfriend);
21  AliESDADfriend& operator = (const AliESDADfriend& adfriend);
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 
34 
35 // Getters of ADC signals, ADC pedestals, time information and corresponding flags :
36 
37  Float_t GetADC(Int_t channel) const
38  { return fADC[channel][kNEvOfInt/2]; }
39  Float_t GetPedestal(Int_t channel, Int_t event) const
40  { return fADC[channel][event]; }
41  Bool_t GetIntegratorFlag(Int_t channel, Int_t event) const
42  { return fIsInt[channel][event]; }
43  Bool_t GetBBFlag(Int_t channel, Int_t event) const
44  { return fIsBB[channel][event]; }
45  Bool_t GetBGFlag(Int_t channel, Int_t event) const
46  { return fIsBG[channel][event]; }
47  Float_t GetTime(Int_t channel) const
48  { return fTime[channel]; }
49  Float_t GetWidth(Int_t channel) const
50  { return fWidth[channel]; }
51 
52  // Setters
53  void SetBBScalers(Int_t channel, ULong64_t scalers)
54  { fBBScalers[channel] = scalers; }
55  void SetBGScalers(Int_t channel, ULong64_t scalers)
56  { fBGScalers[channel] = scalers; }
57  void SetTriggerScalers(Int_t num_scaler, UInt_t scaler)
58  { fScalers[num_scaler] = scaler; }
59 
60  void SetPedestal(Int_t channel, Int_t event, Float_t adc)
61  { fADC[channel][event] = adc; }
62  void SetIntegratorFlag(Int_t channel, Int_t event, Bool_t flag)
63  { fIsInt[channel][event] = flag; }
64  void SetBBFlag(Int_t channel, Int_t event, Bool_t flag)
65  { fIsBB[channel][event] = flag; }
66  void SetBGFlag(Int_t channel, Int_t event, Bool_t flag)
67  { fIsBG[channel][event] = flag; }
68  void SetTime(Int_t channel, Float_t time)
69  { fTime[channel] = time; }
70  void SetWidth(Int_t channel, Float_t width)
71  { fWidth[channel] = width; }
72 
73  UShort_t GetTriggerInputs() const
74  { return fTrigger; }
75  UShort_t GetTriggerInputsMask() const
76  { return fTriggerMask; }
77  void SetTriggerInputs(UShort_t inputs)
78  { fTrigger = inputs; }
79  void SetTriggerInputsMask(UShort_t mask)
80  { fTriggerMask = mask; }
81 
83  kNChannels = 16, // number of electronic channels in AD (FEE numbering)
84  kNEvOfInt = 21, // number of events of interest
85  kNScalers = 16, // number of scalers
86  };
87 
88  private:
89 
90  ULong64_t fBBScalers[kNChannels]; // 'Beam-Beam' scalers for all channels
91  ULong64_t fBGScalers[kNChannels]; // 'Beam-Gas' scalers for all channels
92  UInt_t fScalers[kNScalers]; // Trigger scalers
93 
94  Float_t fADC[kNChannels][kNEvOfInt]; // ADC counts for all channels and all events of interest
95  Bool_t fIsInt[kNChannels][kNEvOfInt]; // 'Integrator' flag for all channels
96  Bool_t fIsBB[kNChannels][kNEvOfInt]; // 'Beam-Beam' flag for all channels
97  Bool_t fIsBG[kNChannels][kNEvOfInt]; // 'Beam-Gas' flag for all channels
98  Float_t fTime[kNChannels]; // leading time for all channels - from HPTDC - in nanoseconds
99  Float_t fWidth[kNChannels]; // pulse width for all channels - from HPTDC - in nanoseconds
100 
101  UShort_t fTrigger; // AD trigger inputs
102  UShort_t fTriggerMask; // AD trigger inputs mask
103 
104  ClassDef(AliESDADfriend, 2) // container class for AD DDL raw data
105 };
106 
107 #endif
Float_t fTime[kNChannels]
void SetPedestal(Int_t channel, Int_t event, Float_t adc)
Float_t fADC[kNChannels][kNEvOfInt]
ULong64_t fBGScalers[kNChannels]
UShort_t GetTriggerInputsMask() const
ULong64_t fBBScalers[kNChannels]
void SetBBScalers(Int_t channel, ULong64_t scalers)
Float_t GetPedestal(Int_t channel, Int_t event) const
void SetTriggerInputsMask(UShort_t mask)
UShort_t GetTriggerInputs() const
Float_t GetWidth(Int_t channel) const
void SetBBFlag(Int_t channel, Int_t event, Bool_t flag)
void SetWidth(Int_t channel, Float_t width)
Bool_t GetBBFlag(Int_t channel, Int_t event) const
UInt_t fScalers[kNScalers]
void SetBGScalers(Int_t channel, ULong64_t scalers)
UInt_t GetTriggerScalers(Int_t num_scaler) const
Float_t GetADC(Int_t channel) const
ULong64_t GetBGScalers(Int_t channel) const
void SetTriggerInputs(UShort_t inputs)
Float_t fWidth[kNChannels]
Bool_t GetIntegratorFlag(Int_t channel, Int_t event) const
Bool_t fIsBG[kNChannels][kNEvOfInt]
UShort_t fTriggerMask
AliESDADfriend & operator=(const AliESDADfriend &adfriend)
void SetTime(Int_t channel, Float_t time)
ULong64_t GetBBScalers(Int_t channel) const
void SetIntegratorFlag(Int_t channel, Int_t event, Bool_t flag)
Bool_t fIsInt[kNChannels][kNEvOfInt]
Float_t GetTime(Int_t channel) const
void SetTriggerScalers(Int_t num_scaler, UInt_t scaler)
void SetBGFlag(Int_t channel, Int_t event, Bool_t flag)
Bool_t GetBGFlag(Int_t channel, Int_t event) const
Bool_t fIsBB[kNChannels][kNEvOfInt]
virtual ~AliESDADfriend()