Fix for the include path
[u/mrichter/AliRoot.git] / EMCAL / AliEMCALTriggerData.h
CommitLineData
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 7EMCal trigger data container: can be used independently of the data stream (simulation or raw data)
da6062af 8for transient storage of trigger data
916f1e76 9Author: 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
18class AliEMCALTriggerData : public TObject
19{
20
21public:
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
da6062af 39
de39a0ff 40 virtual void GetL0Trigger( Int_t i, Int_t j, Int_t& k ) const { k = fL0Trigger[i][j];}
41 virtual Int_t GetL0Trigger( Int_t i, Int_t j ) const {return fL0Trigger[i][j];}
42
43 virtual void GetPatches(TriggerType_t type, Int_t i, TClonesArray& patches) const;
44 virtual TClonesArray* GetPatches(TriggerType_t type, Int_t i ) const;
916f1e76 45
de39a0ff 46 virtual void GetL1Region( Int_t i, Int_t arr[][64] ) const;
47
da6062af 48 virtual Int_t GetL1GammaThreshold() const {return fL1GammaThreshold;}
49 virtual Int_t GetL1JetThreshold() const {return fL1JetThreshold;}
50 virtual void GetL1V0( Int_t v[]) const {for (int i = 0; i < 2; i++) v[i] = fL1V0[i];}
51 virtual Int_t GetL1FrameMask( ) const {return fL1FrameMask;}
52 virtual void GetL1TriggerType( Int_t v[]) const {for (int i = 0; i < 8; i++) v[i] = fL1TriggerType[i];}
53
de39a0ff 54 virtual Int_t GetMode() const {return fMode;}
55
56 virtual void Scan() const;
57 virtual void Reset();
916f1e76 58
59private:
60
61 AliEMCALTriggerData(const AliEMCALTriggerData& rhs); // NOT implemented
62 AliEMCALTriggerData& operator=(const AliEMCALTriggerData& rhs); // NOT implemented
63
de39a0ff 64 Int_t fMode;
65
66 Int_t fL0Trigger[2][32];
916f1e76 67
de39a0ff 68 TClonesArray* fL0Patches[2]; // array of patches
69
70 Int_t fL0Region[32][24][4]; // from F-ALTRO data only
71
72 TClonesArray* fL1GammaPatches[2]; // array of patches
73 TClonesArray* fL1JetPatches[2]; // array of patches
74
75 Int_t fL1Region[2][48][64]; // STU FastOR
76
77 Int_t fL1GammaThreshold; //
78 Int_t fL1JetThreshold; //
916f1e76 79
da6062af 80 Int_t fL1V0[2]; //
81 Int_t fL1FrameMask; //
82 Int_t fL1TriggerType[8]; //
83
84 ClassDef(AliEMCALTriggerData,2)
916f1e76 85};
86
87#endif