]> git.uio.no Git - u/mrichter/AliRoot.git/blob - EMCAL/EMCALbase/AliEMCALTriggerRawDigit.h
ACORDE module
[u/mrichter/AliRoot.git] / EMCAL / EMCALbase / AliEMCALTriggerRawDigit.h
1 #ifndef ALIEMCALTRIGGERRAWDIGIT_H
2 #define ALIEMCALTRIGGERRAWDIGIT_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /*
7  
8  
9  Author: R. GUERNANE LPSC Grenoble CNRS/IN2P3
10 */
11
12 #include "AliEMCALRawDigit.h" 
13 #include "AliEMCALTriggerTypes.h" 
14 #include "AliLog.h"
15
16 class AliEMCALTriggerRawDigit : public AliEMCALRawDigit 
17 {
18 public:
19         
20         AliEMCALTriggerRawDigit();
21         AliEMCALTriggerRawDigit(Int_t id, Int_t timeSamples[], Int_t nSamples);
22         
23         virtual ~AliEMCALTriggerRawDigit();
24         
25         void    SetTriggerBit(const int type, const Int_t mode) {fTriggerBits = (fTriggerBits | (1 << (type + kTriggerTypeEnd * mode)));}
26         
27         Bool_t  SetL0Time(   Int_t i);
28         
29         Int_t   GetTriggerBit(const TriggerType_t type, const Int_t mode) const;
30
31         Int_t   GetTriggerBits() const {return fTriggerBits;}
32         
33         Bool_t  GetL0Time(const Int_t i, Int_t& time) const;
34         Bool_t  GetL0Times(Int_t times[]            ) const;
35         Int_t   GetNL0Times(                        ) const {return fNL0Times;}
36         
37         Int_t   GetL0TimeSum(const Int_t time) const;
38         
39         void    SetL1TimeSum(Int_t ts) {if (fL1TimeSum >= 0) AliWarning("You're overwriting digit time sum! Please check"); fL1TimeSum = ts;}
40         Int_t   GetL1TimeSum(        ) const {return fL1TimeSum;}
41         
42         virtual void Print(const Option_t* opt) const;
43         
44 private: 
45  
46         AliEMCALTriggerRawDigit(const AliEMCALTriggerRawDigit &cd);            // Not implemented
47         AliEMCALTriggerRawDigit &operator=(const AliEMCALTriggerRawDigit &cd); // Not implemented
48
49         Int_t   fTriggerBits; // Trigger bits
50         Int_t   fNL0Times;    // N L0 times
51         Int_t   fL0Times[10]; // L0 times
52         
53         Int_t   fL1TimeSum;   // L1 time sum
54         
55         ClassDef(AliEMCALTriggerRawDigit,1)
56 };
57 #endif
58