]>
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;} |
804b828a | 40 | virtual void SetL1RawData( Int_t v) { fL1RawData = v;} |
41 | ||
de39a0ff | 42 | virtual void GetL0Trigger( Int_t i, Int_t j, Int_t& k ) const { k = fL0Trigger[i][j];} |
43 | virtual Int_t GetL0Trigger( Int_t i, Int_t j ) const {return fL0Trigger[i][j];} | |
44 | ||
45 | virtual void GetPatches(TriggerType_t type, Int_t i, TClonesArray& patches) const; | |
46 | virtual TClonesArray* GetPatches(TriggerType_t type, Int_t i ) const; | |
916f1e76 | 47 | |
de39a0ff | 48 | virtual void GetL1Region( Int_t i, Int_t arr[][64] ) const; |
49 | ||
da6062af | 50 | virtual Int_t GetL1GammaThreshold() const {return fL1GammaThreshold;} |
51 | virtual Int_t GetL1JetThreshold() const {return fL1JetThreshold;} | |
52 | virtual void GetL1V0( Int_t v[]) const {for (int i = 0; i < 2; i++) v[i] = fL1V0[i];} | |
53 | virtual Int_t GetL1FrameMask( ) const {return fL1FrameMask;} | |
54 | virtual void GetL1TriggerType( Int_t v[]) const {for (int i = 0; i < 8; i++) v[i] = fL1TriggerType[i];} | |
55 | ||
521ea43e | 56 | virtual Int_t GetL1DataDecoded( ) const {return fL1DataDecoded;} |
804b828a | 57 | virtual Int_t GetL1RawData( ) const {return fL1RawData;} |
58 | ||
de39a0ff | 59 | virtual Int_t GetMode() const {return fMode;} |
60 | ||
61 | virtual void Scan() const; | |
62 | virtual void Reset(); | |
916f1e76 | 63 | |
64 | private: | |
65 | ||
66 | AliEMCALTriggerData(const AliEMCALTriggerData& rhs); // NOT implemented | |
67 | AliEMCALTriggerData& operator=(const AliEMCALTriggerData& rhs); // NOT implemented | |
68 | ||
79b05051 | 69 | Int_t fMode; // Simulation/Raw |
de39a0ff | 70 | |
79b05051 | 71 | Int_t fL0Trigger[2][32]; // Triggering TRU |
916f1e76 | 72 | |
de39a0ff | 73 | TClonesArray* fL0Patches[2]; // array of patches |
74 | ||
75 | Int_t fL0Region[32][24][4]; // from F-ALTRO data only | |
76 | ||
77 | TClonesArray* fL1GammaPatches[2]; // array of patches | |
78 | TClonesArray* fL1JetPatches[2]; // array of patches | |
79 | ||
80 | Int_t fL1Region[2][48][64]; // STU FastOR | |
81 | ||
79b05051 | 82 | Int_t fL1GammaThreshold; // L1-g threshold |
83 | Int_t fL1JetThreshold; // L1-j threshold | |
916f1e76 | 84 | |
79b05051 | 85 | Int_t fL1V0[2]; // V0 charges |
86 | Int_t fL1FrameMask; // Frame mask | |
87 | Int_t fL1TriggerType[8]; // Trigger type | |
da6062af | 88 | |
79b05051 | 89 | Int_t fL1DataDecoded; // Raw data decoded |
804b828a | 90 | Int_t fL1RawData; // Raw data |
91 | ||
da6062af | 92 | ClassDef(AliEMCALTriggerData,2) |
916f1e76 | 93 | }; |
94 | ||
95 | #endif |