]>
Commit | Line | Data |
---|---|---|
00c77045 | 1 | #ifndef ALIEMCALTRIGGERMAKER_H |
2 | #define ALIEMCALTRIGGERMAKER_H | |
3 | ||
f9a1843e | 4 | // $Id: AliEmcalTriggerMaker.h 64593 2013-10-18 10:23:58Z loizides $ |
00c77045 | 5 | |
6 | class TClonesArray; | |
7 | class AliEmcalTriggerSetupInfo; | |
001765f7 | 8 | class AliAODCaloTrigger; |
9 | class AliVVZERO; | |
00c77045 | 10 | |
f9a1843e | 11 | #include "AliEMCALTriggerTypes.h" |
9239b066 | 12 | #include "AliAnalysisTaskEmcal.h" |
00c77045 | 13 | |
9239b066 | 14 | class AliEmcalTriggerMaker : public AliAnalysisTaskEmcal { |
00c77045 | 15 | public: |
16 | AliEmcalTriggerMaker(); | |
17 | AliEmcalTriggerMaker(const char *name); | |
18 | virtual ~AliEmcalTriggerMaker(); | |
19 | ||
20 | void ExecOnce(); | |
21 | Bool_t Run(); | |
001765f7 | 22 | void RunSimpleOfflineTrigger(); |
00c77045 | 23 | |
24 | void SetCaloTriggersOutName(const char *name) { fCaloTriggersOutName = name; } | |
25 | void SetCaloTriggerSetupOutName(const char *name) { fCaloTriggerSetupOutName = name; } | |
26 | ||
001765f7 | 27 | void SetTriggerThresholdJetLow( Int_t a, Int_t b, Int_t c ) { fThresholdConstants[2][0] = a; fThresholdConstants[2][1] = b; fThresholdConstants[2][2] = c; } |
28 | void SetTriggerThresholdJetHigh( Int_t a, Int_t b, Int_t c ) { fThresholdConstants[0][0] = a; fThresholdConstants[0][1] = b; fThresholdConstants[0][2] = c; } | |
29 | ||
30 | void SetV0InName(const char *name) { fV0InName = name; } | |
31 | ||
f9a1843e | 32 | Bool_t IsEJE( Int_t tBits ) { if( tBits & ( 1 << (kTriggerTypeEnd + kL1JetLow) | 1 << (kTriggerTypeEnd + kL1JetHigh) | 1 << (kL1JetLow) | 1 << (kL1JetHigh) )) return kTRUE; else return kFALSE; } |
33 | Bool_t IsEGA( Int_t tBits ) { if( tBits & ( 1 << (kTriggerTypeEnd + kL1GammaLow) | 1 << (kTriggerTypeEnd + kL1GammaHigh) | 1 << (kL1GammaLow) | 1 << (kL1GammaHigh) )) return kTRUE; else return kFALSE; } | |
4e67b745 | 34 | |
00c77045 | 35 | protected: |
36 | TString fCaloTriggersOutName; // name of output track array | |
37 | TString fCaloTriggerSetupOutName; // name of output track array | |
001765f7 | 38 | TString fV0InName; // name of output track array |
00c77045 | 39 | TClonesArray *fCaloTriggersOut; //!trigger array out |
40 | AliEmcalTriggerSetupInfo *fCaloTriggerSetupOut; //!trigger setup | |
001765f7 | 41 | AliAODCaloTrigger *fSimpleOfflineTriggers; //! simple offline trigger |
42 | AliVVZERO *fV0; //! V0 object | |
43 | ||
44 | Double_t fPatchADCSimple[48][64]; //! patch map for simple offline trigger | |
45 | Int_t fThresholdConstants[4][3]; // simple offline trigger thresholds constants | |
00c77045 | 46 | |
f9a1843e | 47 | Int_t fPatchADC[48][64]; //! ADC values map |
48 | Int_t fITrigger; //! trigger counter | |
49 | ||
00c77045 | 50 | private: |
51 | AliEmcalTriggerMaker(const AliEmcalTriggerMaker&); // not implemented | |
52 | AliEmcalTriggerMaker &operator=(const AliEmcalTriggerMaker&); // not implemented | |
53 | ||
001765f7 | 54 | Bool_t NextTrigger( Bool_t &isOfflineSimple ); |
f9a1843e | 55 | AliEmcalTriggerPatchInfo* ProcessPatch( Int_t type, Bool_t isOfflineSimple ); |
001765f7 | 56 | |
d569177d | 57 | ClassDef(AliEmcalTriggerMaker, 4); // Task to make array of EMCAL particle |
00c77045 | 58 | }; |
59 | #endif |