1 #ifndef ALIESDCALOTRIGGER_H
2 #define ALIESDCALOTRIGGER_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
11 Author: R. GUERNANE LPSC Grenoble CNRS/IN2P3
18 class AliESDCaloTrigger : public TNamed
22 AliESDCaloTrigger(const AliESDCaloTrigger& ctrig);
23 virtual ~AliESDCaloTrigger();
25 AliESDCaloTrigger& operator=(const AliESDCaloTrigger& ctrig);
27 Bool_t IsEmpty() {return (fNEntries == 0);}
29 virtual void Reset() {fCurrent = -1;}
31 void Allocate(Int_t size);
34 Bool_t Add(Int_t col, Int_t row, Float_t amp, Float_t time, Int_t trgtimes[], Int_t ntrgtimes, Int_t trgts, Int_t trgbits);
36 void SetL1Threshold(Int_t i, Int_t thr) {fL1Threshold[i] = thr;}
37 void SetL1V0(const Int_t* v) {for (int i = 0; i < 2; i++) fL1V0[i] = v[i];}
38 void SetL1FrameMask(Int_t m) {fL1FrameMask = m;}
40 void GetPosition( Int_t& col, Int_t& row ) const;
42 void GetAmplitude( Float_t& amp ) const;
43 void GetTime( Float_t& time ) const;
45 void GetTriggerBits( Int_t& bits ) const;
46 void GetNL0Times( Int_t& ntimes ) const;
47 void GetL0Times( Int_t times[] ) const;
48 Int_t GetEntries( ) const {return fNEntries;}
50 void GetL1TimeSum( Int_t& timesum ) const;
51 Int_t GetL1Threshold( Int_t i ) const {return fL1Threshold[i];}
52 Int_t GetL1V0( Int_t i ) const {return fL1V0[i];}
53 Int_t GetL1FrameMask( ) const {return fL1FrameMask;}
55 virtual Bool_t Next();
57 virtual void Copy(TObject& obj) const;
59 virtual void Print(const Option_t* opt) const;
66 Int_t* fColumn; // [fNEntries]
67 Int_t* fRow; // [fNEntries]
68 Float_t* fAmplitude; // [fNEntries]
69 Float_t* fTime; // [fNEntries]
70 Int_t* fNL0Times; // [fNEntries]
72 Int_t* fL1TimeSum; // [fNEntries]
73 Int_t* fTriggerBits; // [fNEntries]
75 Int_t fL1Threshold[2]; // L1 thresholds from raw data
76 Int_t fL1V0[2]; // L1 threshold components
77 Int_t fL1FrameMask; // Validation flag for L1 data
80 ClassDef(AliESDCaloTrigger, 4)