dNdPt analysis
[u/mrichter/AliRoot.git] / PWG0 / dNdPt / AlidNdPtTask.h
1 #ifndef ALIDNDPTTASK_H
2 #define ALIDNDPTTASK_H
3
4 //------------------------------------------------------------------------------
5 // Task for dNdPt analysis.
6 // 
7 // Author: J.Otwinowski 04/11/2008 
8 //------------------------------------------------------------------------------
9
10 class AliESDEvent;
11 class AliMCEvent;
12 class AlidNdPtEventCuts;
13 class AlidNdPtAcceptanceCuts;
14 class AliESDtrackCuts;
15 class AlidNdPt;
16 class AlidNdPtAnalysis;
17 class AlidNdPtCorrection;
18 class AliMagFMaps;
19 class TList;
20
21 #include "dNdPt/AlidNdPtHelper.h"
22 #include "AliAnalysisTask.h"
23
24 class AlidNdPtTask : public AliAnalysisTask {
25  public:
26   AlidNdPtTask(const char *name = "AlidNdPtTask");
27   virtual ~AlidNdPtTask();
28   
29   virtual void   ConnectInputData(Option_t *);
30   virtual void   CreateOutputObjects();
31   virtual void   Exec(Option_t *option);
32   virtual void   Terminate(Option_t *);
33   virtual Bool_t Notify();
34
35   Bool_t AddAnalysisObject(AlidNdPt *pObj);
36   void SetUseMCInfo(Bool_t info)           { fUseMCInfo = info; }
37
38  private:
39
40   AliESDEvent *fESD;    //! ESD event
41   AliMCEvent *fMC;      //! MC event
42   TList* fOutput;       //! list send on output slot 0
43   TIterator *fPitList;  //! iterator over the output objetcs  
44   TList *fCompList;     // list of comparison objects
45
46   Bool_t fUseMCInfo;           // use MC information
47
48   AlidNdPtTask(const AlidNdPtTask&); // not implemented
49   AlidNdPtTask& operator=(const AlidNdPtTask&); // not implemented
50   
51   ClassDef(AlidNdPtTask, 1); // example of analysis
52 };
53
54 #endif