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 */
7 EMCal trigger data container: can be used independently of the data stream (simulation or raw data)
8 for transient storage of trigger data
9 Author: R. GUERNANE LPSC Grenoble CNRS/IN2P3
12 #include "AliEMCALTriggerTypes.h"
16 #include <TClonesArray.h>
18 class AliEMCALTriggerData : public TObject
22 AliEMCALTriggerData();
23 virtual ~AliEMCALTriggerData();
25 virtual void SetMode(Int_t i) {fMode = i;}
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);
31 virtual void SetPatches(TriggerType_t type, Int_t i, const TClonesArray& patches);
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];}
39 virtual void SetL1DataDecoded( Int_t v) { fL1DataDecoded = v;}
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];}
44 virtual void GetPatches(TriggerType_t type, Int_t i, TClonesArray& patches) const;
45 virtual TClonesArray* GetPatches(TriggerType_t type, Int_t i ) const;
47 virtual void GetL1Region( Int_t i, Int_t arr[][64] ) const;
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];}
55 virtual Int_t GetL1DataDecoded( ) const {return fL1DataDecoded;}
57 virtual Int_t GetMode() const {return fMode;}
59 virtual void Scan() const;
64 AliEMCALTriggerData(const AliEMCALTriggerData& rhs); // NOT implemented
65 AliEMCALTriggerData& operator=(const AliEMCALTriggerData& rhs); // NOT implemented
69 Int_t fL0Trigger[2][32]; //
71 TClonesArray* fL0Patches[2]; // array of patches
73 Int_t fL0Region[32][24][4]; // from F-ALTRO data only
75 TClonesArray* fL1GammaPatches[2]; // array of patches
76 TClonesArray* fL1JetPatches[2]; // array of patches
78 Int_t fL1Region[2][48][64]; // STU FastOR
80 Int_t fL1GammaThreshold; //
81 Int_t fL1JetThreshold; //
84 Int_t fL1FrameMask; //
85 Int_t fL1TriggerType[8]; //
89 ClassDef(AliEMCALTriggerData,2)