AliAnalysisTaskTriggerStudy: Added code for trigger overlap (venn-like) and loop...
[u/mrichter/AliRoot.git] / PWG0 / multPbPb / AliAnalysisTaskTriggerStudy.h
1 #ifndef ALIANALYSISTASKTRIGGERSTUDY_H
2 #define ALIANALYSISTASKTRIGGERSTUDY_H
3
4 #include "AliAnalysisTaskSE.h"
5
6 //-------------------------------------------------------------------------
7 //                      AliAnalysisTaskTriggerStudy
8 // 
9 // 
10 //
11 //
12 // Author: Michele Floris, CERN
13 //-------------------------------------------------------------------------
14
15
16 class AliESDEvent;
17 class AliESDtrackCuts;
18 class AliHistoListWrapper;
19 class AliTriggerAnalysis;
20 class AliAnalysisTaskTriggerStudy : public AliAnalysisTaskSE {
21
22 public:
23
24   AliAnalysisTaskTriggerStudy();
25   AliAnalysisTaskTriggerStudy(const char * name);
26   AliAnalysisTaskTriggerStudy(const AliAnalysisTaskTriggerStudy& obj) ;
27   ~AliAnalysisTaskTriggerStudy();
28
29   void SetIsMC(Bool_t flag=kTRUE) { fIsMC = flag;}
30   AliHistoListWrapper * GetHistoList() { return fHistoList;}
31
32   TH1 * GetHistoTracklets   (const char * name, const char * title);
33   void  FillTriggerOverlaps (const char * name, const char * title, Int_t nFastOrOffline, Bool_t v0A, Bool_t v0C, Bool_t OM2, 
34                              Bool_t OM3, Bool_t cMBS2A,Bool_t cMBS2C, Bool_t cMBAC) ;
35
36   virtual void   UserCreateOutputObjects();
37   virtual void   UserExec(Option_t *option);
38   virtual void   Terminate(Option_t *);
39   
40   
41
42 private:
43
44   //
45   AliESDEvent *  fESD;    //! ESD object  AliVEvent*     fEvent;
46   AliHistoListWrapper  * fHistoList; // wrapper for the list, takes care of merging + histo booking and getters  
47   Bool_t fIsMC; // true if processing montecarlo
48   
49   AliTriggerAnalysis * fTriggerAnalysis; // trigger analysis object, to get the offline triggers
50   TString fHistoSuffix; // suffix appended to all histos, set in the user exec.
51
52
53   AliAnalysisTaskTriggerStudy& operator=(const AliAnalysisTaskTriggerStudy& task);
54   
55   ClassDef(AliAnalysisTaskTriggerStudy, 2)
56
57
58 };
59
60 #endif