]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/RESONANCES/AliRsnAnalysisTask2ndStep.h
Package revised - New AnalysisTask's - Added more functions
[u/mrichter/AliRoot.git] / PWG2 / RESONANCES / AliRsnAnalysisTask2ndStep.h
1 //
2 // Class AliRsnAnalysisTask2ndStep
3 //
4 // AnalysisTask which collects an input of RSN events
5 // and produces histograms.
6 //
7 // authors: Martin Vala (martin.vala@cern.ch)
8 //          Alberto Pulvirenti (alberto.pulvirenti@ct.infn.it)
9 //
10 #ifndef ALIRSNANALYSISTASK2NDSTEP_H
11 #define ALIRSNANALYSISTASK2NDSTEP_H
12
13 #include "AliRsnDaughter.h"
14 #include "AliAnalysisTaskSE.h"
15
16 class TObjArray;
17
18 class AliAODEvent;
19 class AliAODInputHandler;
20 class AliAnalysisManager;
21
22 class AliRsnEvent;
23 class AliRsnEventBuffer;
24 class AliRsnPairMgr;
25
26 class AliRsnAnalysisTask2ndStep : public AliAnalysisTaskSE
27 {
28   public:
29     AliRsnAnalysisTask2ndStep(const char *name = "AliRsnAnalysisTask2ndStep");
30     virtual ~AliRsnAnalysisTask2ndStep() {/* Does nothing*/}
31
32     virtual void   UserCreateOutputObjects();
33     virtual void   UserExec(Option_t *option);
34     virtual void   Terminate(Option_t *option);
35
36     void AddPairMgr(AliRsnPairMgr *pairmgr);
37     void CreateHandlers(AliAnalysisManager *am);
38     void SetAnalysisMgr(AliAnalysisManager* theValue) { fAnalysisMgr = theValue; }
39     AliAnalysisManager* GetAnalysisMgr() const { return fAnalysisMgr; }
40     void ProcessEventAnalysis(AliRsnEvent *curEvent);
41     void PostEventProcess();
42
43   private:
44   
45     AliRsnAnalysisTask2ndStep(const AliRsnAnalysisTask2ndStep& copy) :
46         AliAnalysisTaskSE(copy),fOutList(0x0),fPairMgrs(0x0),fEventBuffer(0x0),
47         fRsnHandlerAOD(0x0),fAnalysisMgr(0x0) {}
48     AliRsnAnalysisTask2ndStep& operator= (const AliRsnAnalysisTask2ndStep&) {return *this;}
49   
50     TList                       *fOutList;         // list of output histograms
51     TObjArray                   *fPairMgrs;        // array if pair managers used
52     AliRsnEventBuffer           *fEventBuffer;     // event buffer
53
54     AliAODInputHandler          *fRsnHandlerAOD;   // AOD event handler
55     AliAnalysisManager          *fAnalysisMgr;     // pointer to current AnalysisMgr
56
57     ClassDef(AliRsnAnalysisTask2ndStep, 1)
58 };
59
60 #endif