]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG1/TPC/AliPerformanceTask.h
extentions by Jochen Thaeder
[u/mrichter/AliRoot.git] / PWG1 / TPC / AliPerformanceTask.h
1 #ifndef AliPERFORMANCETASK_H
2 #define AliPERFORMANCETASK_H
3
4 //------------------------------------------------------------------------------
5 // Task to run reconstruction performance. 
6 // 
7 // Author: J.Otwinowski 01/04/2009 
8 // Changes by M.Knichel 15/10/2010
9 //------------------------------------------------------------------------------
10
11 class AliESDEvent;
12 class AliESDfriend;
13 class AliMCEvent;
14 class AliPerformanceObject;
15 class AliMagF;
16 class TList;
17 class TTree;
18
19 #include "AliAnalysisTaskSE.h"
20
21 class AliPerformanceTask : public AliAnalysisTaskSE {
22  public:
23   AliPerformanceTask();
24   AliPerformanceTask(const char *name, const char *title);
25   virtual ~AliPerformanceTask();
26   
27   virtual void   UserCreateOutputObjects();
28   virtual void   UserExec(Option_t *option);
29   virtual void   Terminate(Option_t *);
30   virtual void   FinishTaskOutput();
31   virtual Bool_t Notify();
32
33   // Add comparison objects
34   Bool_t AddPerformanceObject(AliPerformanceObject* comp);
35
36   // Use MC
37   void SetUseMCInfo(Bool_t useMCInfo = kFALSE) {fUseMCInfo = useMCInfo;}
38
39   // Use ESD friend
40   void SetUseESDfriend(Bool_t useESDFriend = kFALSE) {fUseESDfriend = useESDFriend;}
41
42   // Use HLT ESD
43   void SetUseHLT(Bool_t useHLT = kFALSE) {fUseHLT = useHLT;}
44
45   // Use Terminate function
46   void SetUseTerminate(Bool_t useTerminate = kTRUE) {fUseTerminate = useTerminate;}
47
48  private:
49   AliESDEvent *fESD;          //! ESD event
50   AliESDfriend *fESDfriend;   //! ESD friend event
51   AliMCEvent *fMC;            //! MC event
52
53   TList *fOutput;             //! list send on output container 1
54   TTree* fOutputSummary;      //! tree to dump summary values (output container 2)
55   TIterator *fPitList;        //! iterator over the output objetcs  
56   TList *fCompList;           // list of comparison objects
57
58   Bool_t fUseMCInfo;          // use MC information
59   Bool_t fUseESDfriend;       // use ESD friend
60   Bool_t fUseHLT;             // use HLT ESD
61
62   Bool_t fUseTerminate;       // use terminate function
63
64   AliPerformanceTask(const AliPerformanceTask&); // not implemented
65   AliPerformanceTask& operator=(const AliPerformanceTask&); // not implemented
66   
67   ClassDef(AliPerformanceTask, 4); // example of analysis
68 };
69
70 #endif