Line data Source code
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 : /*
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
10 : */
11 :
12 : #include "AliEMCALTriggerTypes.h"
13 :
14 : #include <TObject.h>
15 : #include <TVector2.h>
16 : #include <TClonesArray.h>
17 :
18 : class AliEMCALTriggerData : public TObject
19 : {
20 :
21 : public:
22 : AliEMCALTriggerData();
23 : virtual ~AliEMCALTriggerData();
24 :
25 8 : virtual void SetMode(Int_t i) {fMode = i;}
26 :
27 480 : virtual void SetL0Trigger( Int_t i, Int_t j, Int_t k) { fL0Trigger[i][j] = k; }
28 :
29 16 : virtual void SetL1GammaThreshold(int i, int v) {fL1GammaThreshold[i] = v;}
30 16 : virtual void SetL1JetThreshold( int i, int v) { fL1JetThreshold[i] = v;}
31 0 : virtual void SetL1V0( Int_t* v) {for (int i = 0; i < 2; i++) fL1V0[i] = v[i];}
32 0 : virtual void SetL1FrameMask( Int_t v) { fL1FrameMask = v;}
33 0 : virtual void SetL1TriggerType( Int_t* v) {for (int i = 0; i < 15; i++) fL1TriggerType[i] = v[i];}
34 :
35 0 : virtual void SetL1DataDecoded( Int_t v) { fL1DataDecoded = v;}
36 0 : virtual void SetL1RawData( Int_t v) { fL1RawData = v;}
37 0 : virtual void SetMedian( Int_t v) { fMedian = v;}
38 :
39 0 : virtual void GetL0Trigger( Int_t i, Int_t j, Int_t& k ) const { k = fL0Trigger[i][j];}
40 0 : virtual Int_t GetL0Trigger( Int_t i, Int_t j ) const {return fL0Trigger[i][j];}
41 :
42 64 : virtual Int_t GetL1GammaThreshold(int i) const {return fL1GammaThreshold[i];}
43 64 : virtual Int_t GetL1JetThreshold( int i) const {return fL1JetThreshold[i];}
44 96 : virtual void GetL1V0( Int_t v[]) const {for (int i = 0; i < 2; i++) v[i] = fL1V0[i];}
45 24 : virtual Int_t GetL1FrameMask( ) const {return fL1FrameMask;}
46 0 : virtual void GetL1TriggerType( Int_t v[]) const {for (int i = 0; i < 15; i++) v[i] = fL1TriggerType[i];}
47 :
48 24 : virtual Int_t GetL1DataDecoded( ) const {return fL1DataDecoded;}
49 0 : virtual Int_t GetL1RawData( ) const {return fL1RawData;}
50 24 : virtual Int_t GetMedian( ) const {return fMedian;}
51 :
52 490 : virtual Int_t GetMode() const {return fMode;}
53 :
54 : virtual void Scan() const;
55 : virtual void Reset();
56 :
57 : private:
58 :
59 : AliEMCALTriggerData(const AliEMCALTriggerData& rhs); // NOT implemented
60 : AliEMCALTriggerData& operator=(const AliEMCALTriggerData& rhs); // NOT implemented
61 :
62 : Int_t fMode; // Simulation/Raw
63 :
64 : Int_t fL0Trigger[2][52]; // Triggering TRU
65 :
66 : Int_t fL1GammaThreshold[2]; // L1-g threshold
67 : Int_t fL1JetThreshold[2]; // L1-j threshold
68 :
69 : Int_t fL1V0[2]; // V0 charges
70 : Int_t fL1FrameMask; // Frame mask
71 : Int_t fL1TriggerType[19]; // Trigger type
72 :
73 : Int_t fL1DataDecoded; // Raw data decoded
74 : Int_t fL1RawData; // Raw data
75 : Int_t fMedian; // Median
76 :
77 42 : ClassDef(AliEMCALTriggerData,3)
78 : };
79 :
80 : #endif
|