1 #ifndef ALIEMCALTRIGGERMAKER_H
2 #define ALIEMCALTRIGGERMAKER_H
7 class AliEmcalTriggerSetupInfo;
8 class AliAODCaloTrigger;
11 #include "AliAnalysisTaskEmcal.h"
13 class AliEmcalTriggerMaker : public AliAnalysisTaskEmcal {
15 AliEmcalTriggerMaker();
16 AliEmcalTriggerMaker(const char *name);
17 virtual ~AliEmcalTriggerMaker();
21 void RunSimpleOfflineTrigger();
23 void SetCaloTriggersOutName(const char *name) { fCaloTriggersOutName = name; }
24 void SetCaloTriggerSetupOutName(const char *name) { fCaloTriggerSetupOutName = name; }
26 void SetTriggerThresholdJetLow( Int_t a, Int_t b, Int_t c ) { fThresholdConstants[2][0] = a; fThresholdConstants[2][1] = b; fThresholdConstants[2][2] = c; }
27 void SetTriggerThresholdJetHigh( Int_t a, Int_t b, Int_t c ) { fThresholdConstants[0][0] = a; fThresholdConstants[0][1] = b; fThresholdConstants[0][2] = c; }
29 void SetV0InName(const char *name) { fV0InName = name; }
31 Int_t IsEGA(Int_t level) {if (level > 1 || level < 0) AliError("EGA: check the requested threshold"); return fEGA[level];}
32 Int_t IsEJE(Int_t level) {if (level > 1 || level < 0) AliError("EJE: check the requested threshold"); return fEJE[level];}
35 TString fCaloTriggersOutName; // name of output track array
36 TString fCaloTriggerSetupOutName; // name of output track array
37 TString fV0InName; // name of output track array
38 TClonesArray *fCaloTriggersOut; //!trigger array out
39 AliEmcalTriggerSetupInfo *fCaloTriggerSetupOut; //!trigger setup
40 AliAODCaloTrigger *fSimpleOfflineTriggers; //! simple offline trigger
41 AliVVZERO *fV0; //! V0 object
43 Double_t fPatchADCSimple[48][64]; //! patch map for simple offline trigger
44 Int_t fThresholdConstants[4][3]; // simple offline trigger thresholds constants
50 AliEmcalTriggerMaker(const AliEmcalTriggerMaker&); // not implemented
51 AliEmcalTriggerMaker &operator=(const AliEmcalTriggerMaker&); // not implemented
53 Bool_t NextTrigger( Bool_t &isOfflineSimple );
55 ClassDef(AliEmcalTriggerMaker, 3); // Task to make array of EMCAL particle