]>
Commit | Line | Data |
---|---|---|
916f1e76 | 1 | #ifndef ALIEMCALTRIGGERDATA_H |
2 | #define ALIEMCALTRIGGERDATA_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* | |
de39a0ff | 7 | EMCal trigger data container: can be used independently of the data stream (simulation or raw data) |
da6062af | 8 | for transient storage of trigger data |
916f1e76 | 9 | Author: R. GUERNANE LPSC Grenoble CNRS/IN2P3 |
10 | */ | |
11 | ||
de39a0ff | 12 | #include "AliEMCALTriggerTypes.h" |
13 | ||
916f1e76 | 14 | #include <TObject.h> |
15 | #include <TVector2.h> | |
916f1e76 | 16 | #include <TClonesArray.h> |
17 | ||
18 | class AliEMCALTriggerData : public TObject | |
19 | { | |
20 | ||
21 | public: | |
22 | AliEMCALTriggerData(); | |
23 | virtual ~AliEMCALTriggerData(); | |
de39a0ff | 24 | |
25 | virtual void SetMode(Int_t i) {fMode = i;} | |
916f1e76 | 26 | |
de39a0ff | 27 | virtual void SetL0Trigger( Int_t i, Int_t j, Int_t k) { fL0Trigger[i][j] = k; } |
28 | virtual void SetL0Region( Int_t i, const Int_t**& region); | |
29 | virtual void SetL1Region( Int_t i, Int_t**& region); | |
916f1e76 | 30 | |
de39a0ff | 31 | virtual void SetPatches(TriggerType_t type, Int_t i, const TClonesArray& patches); |
32 | ||
da6062af | 33 | virtual void SetL1GammaThreshold(Int_t v) {fL1GammaThreshold = v;} |
34 | virtual void SetL1JetThreshold( Int_t v) { fL1JetThreshold = v;} | |
35 | virtual void SetL1V0( Int_t* v) {for (int i = 0; i < 2; i++) fL1V0[i] = v[i];} | |
36 | virtual void SetL1FrameMask( Int_t v) { fL1FrameMask = v;} | |
37 | virtual void SetL1TriggerType( Int_t* v) {for (int i = 0; i < 8; i++) fL1TriggerType[i] = v[i];} | |
916f1e76 | 38 | |
521ea43e | 39 | virtual void SetL1DataDecoded( Int_t v) { fL1DataDecoded = v;} |
da6062af | 40 | |
de39a0ff | 41 | virtual void GetL0Trigger( Int_t i, Int_t j, Int_t& k ) const { k = fL0Trigger[i][j];} |
42 | virtual Int_t GetL0Trigger( Int_t i, Int_t j ) const {return fL0Trigger[i][j];} | |
43 | ||
44 | virtual void GetPatches(TriggerType_t type, Int_t i, TClonesArray& patches) const; | |
45 | virtual TClonesArray* GetPatches(TriggerType_t type, Int_t i ) const; | |
916f1e76 | 46 | |
de39a0ff | 47 | virtual void GetL1Region( Int_t i, Int_t arr[][64] ) const; |
48 | ||
da6062af | 49 | virtual Int_t GetL1GammaThreshold() const {return fL1GammaThreshold;} |
50 | virtual Int_t GetL1JetThreshold() const {return fL1JetThreshold;} | |
51 | virtual void GetL1V0( Int_t v[]) const {for (int i = 0; i < 2; i++) v[i] = fL1V0[i];} | |
52 | virtual Int_t GetL1FrameMask( ) const {return fL1FrameMask;} | |
53 | virtual void GetL1TriggerType( Int_t v[]) const {for (int i = 0; i < 8; i++) v[i] = fL1TriggerType[i];} | |
54 | ||
521ea43e | 55 | virtual Int_t GetL1DataDecoded( ) const {return fL1DataDecoded;} |
56 | ||
de39a0ff | 57 | virtual Int_t GetMode() const {return fMode;} |
58 | ||
59 | virtual void Scan() const; | |
60 | virtual void Reset(); | |
916f1e76 | 61 | |
62 | private: | |
63 | ||
64 | AliEMCALTriggerData(const AliEMCALTriggerData& rhs); // NOT implemented | |
65 | AliEMCALTriggerData& operator=(const AliEMCALTriggerData& rhs); // NOT implemented | |
66 | ||
521ea43e | 67 | Int_t fMode; // |
de39a0ff | 68 | |
521ea43e | 69 | Int_t fL0Trigger[2][32]; // |
916f1e76 | 70 | |
de39a0ff | 71 | TClonesArray* fL0Patches[2]; // array of patches |
72 | ||
73 | Int_t fL0Region[32][24][4]; // from F-ALTRO data only | |
74 | ||
75 | TClonesArray* fL1GammaPatches[2]; // array of patches | |
76 | TClonesArray* fL1JetPatches[2]; // array of patches | |
77 | ||
78 | Int_t fL1Region[2][48][64]; // STU FastOR | |
79 | ||
80 | Int_t fL1GammaThreshold; // | |
81 | Int_t fL1JetThreshold; // | |
916f1e76 | 82 | |
da6062af | 83 | Int_t fL1V0[2]; // |
84 | Int_t fL1FrameMask; // | |
85 | Int_t fL1TriggerType[8]; // | |
86 | ||
521ea43e | 87 | Int_t fL1DataDecoded; |
88 | ||
da6062af | 89 | ClassDef(AliEMCALTriggerData,2) |
916f1e76 | 90 | }; |
91 | ||
92 | #endif |