]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/RESONANCES/AliRsnVAnalysisTaskME.h
remove option C for Clear for trigger array for the moment, causes malloc error
[u/mrichter/AliRoot.git] / PWG2 / RESONANCES / AliRsnVAnalysisTaskME.h
1 //
2 // Class AliRsnVAnalysisTaskME
3 //
4 // Virtual Class derivated from AliAnalysisTaskME which will be base class
5 // for all RSN ME tasks
6 //
7 // authors: Martin Vala (martin.vala@cern.ch)
8 //          Alberto Pulvirenti (alberto.pulvirenti@ct.infn.it)
9 //
10 #ifndef ALIRSNVANALYSISTASKME_H
11 #define ALIRSNVANALYSISTASKME_H
12
13 #include "AliLog.h"
14 #include "AliRsnVATProcessInfo.h"
15
16 #include "AliAnalysisTaskME.h"
17
18 class TH1;
19 class AliESDEvent;
20 class AliMCEvent;
21 class AliAODEvent;
22 class AliRsnVAnalysisTaskME : public AliAnalysisTaskME
23 {
24   public:
25
26     AliRsnVAnalysisTaskME(const char *name = "AliRsnVAnalysisTaskME");
27     AliRsnVAnalysisTaskME(const AliRsnVAnalysisTaskME& copy);
28     AliRsnVAnalysisTaskME& operator= (const AliRsnVAnalysisTaskME& /*copy*/) { return *this; }
29     virtual ~AliRsnVAnalysisTaskME() {/* Does nothing*/}
30
31     virtual void    LocalInit();
32     virtual Bool_t  Notify();
33     virtual void    ConnectInputData(Option_t *opt);
34     // Implementation of interface methods
35     virtual void    UserCreateOutputObjects();
36     virtual void    UserExec(Option_t *opt);
37     virtual void    Terminate(Option_t *opt);
38
39     // Implement this
40     virtual void    RsnUserCreateOutputObjects();
41     virtual void    RsnUserExec(Option_t *opt);
42     virtual void    RsnTerminate(Option_t *opt);
43
44     virtual void    FillInfo();
45
46     void            SetLogType(AliLog::EType_t type, TString allClasses = "");
47     void            SetPrintInfoNumber(const Long64_t &num = 100) { fTaskInfo.SetPrintInfoNumber(num); }
48     Bool_t          CheckAndPrintEvents();
49
50   protected:
51
52     AliLog::EType_t         fLogType;         // log type
53     TString                 fLogClassesString;// all classes string divided with ":"
54
55     AliESDEvent            *fESDEvent;        // AliVEvent event
56     AliMCEvent             *fMCEvent;         // ESD event
57     AliAODEvent            *fAODEvent;        // AOD event
58
59     TList                  *fInfoList;        //! output list for info
60     AliRsnVATProcessInfo    fTaskInfo;        // task info
61
62     void                    SetDebugForAllClasses();
63
64     ClassDef(AliRsnVAnalysisTaskME, 1)
65 };
66
67 #endif