]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG2/RESONANCES/AliRsnVAnalysisTaskSE.h
remove option C for Clear for trigger array for the moment, causes malloc error
[u/mrichter/AliRoot.git] / PWG2 / RESONANCES / AliRsnVAnalysisTaskSE.h
CommitLineData
4fbb2459 1//
2// Class AliRsnVAnalysisTaskSE
3//
4// Virtual Class derivated from AliAnalysisTaskSE which will be base class
5// for all RSN SE tasks
6//
7// authors: Martin Vala (martin.vala@cern.ch)
8// Alberto Pulvirenti (alberto.pulvirenti@ct.infn.it)
9//
5faf5a07 10
4fbb2459 11#ifndef ALIRSNVANALYSISTASKSE_H
12#define ALIRSNVANALYSISTASKSE_H
13
14#include <TH1.h>
15
4fbb2459 16#include "AliAnalysisTaskSE.h"
17
18#include "AliRsnEvent.h"
4fbb2459 19#include "AliRsnVATProcessInfo.h"
20
21class AliESDEvent;
22class AliAODEvent;
23class AliMCEvent;
24
25class AliRsnVAnalysisTaskSE : public AliAnalysisTaskSE
26{
27 public:
5faf5a07 28
2dab9030 29 AliRsnVAnalysisTaskSE(const char *name = "AliRsnVAnalysisTaskSE", Bool_t mcOnly = kFALSE);
4fbb2459 30 AliRsnVAnalysisTaskSE(const AliRsnVAnalysisTaskSE& copy);
31 AliRsnVAnalysisTaskSE& operator= (const AliRsnVAnalysisTaskSE& /*copy*/) { return *this; }
32 virtual ~AliRsnVAnalysisTaskSE() {/* Does nothing*/;}
33
5faf5a07 34 // basic interface methods
4fbb2459 35 virtual void LocalInit();
cf4668f7 36 virtual Bool_t UserNotify();
4fbb2459 37 virtual void ConnectInputData(Option_t *opt);
4fbb2459 38 virtual void UserCreateOutputObjects();
39 virtual void UserExec(Option_t* opt);
40 virtual void Terminate(Option_t* opt);
41
5faf5a07 42 // customized methods (to be implemented in derived classes)
4fbb2459 43 virtual void RsnUserCreateOutputObjects();
44 virtual void RsnUserExec(Option_t*);
45 virtual void RsnTerminate(Option_t*);
46
5faf5a07 47 // event pre-processing functions
48 virtual Bool_t EventProcess();
4fbb2459 49
5faf5a07 50 // getters
968abd78 51 AliRsnEvent* GetRsnEvent() {return &fRsnEvent;}
52 AliRsnVATProcessInfo* GetInfo() {return &fTaskInfo;}
4fbb2459 53
5faf5a07 54 // setters
55 void SetMCOnly(Bool_t mcOnly = kTRUE) {fMCOnly = mcOnly;}
56 void SetLogType(AliLog::EType_t type, const char *classes = "") {fLogType = type; fLogClassesString = classes;}
57 void SetPrintInfoNumber(const Long64_t &num = 100) {fTaskInfo.SetPrintInfoNumber(num);}
4fbb2459 58
59 protected:
60
5faf5a07 61 AliLog::EType_t fLogType; // log type
62 TString fLogClassesString; // all classes string divided with ":"
4fbb2459 63
5faf5a07 64 AliESDEvent *fESDEvent; // ESD event
65 AliMCEvent *fMCEvent; // MC event
66 AliAODEvent *fAODEventIn; // AOD event from input
67 AliAODEvent *fAODEventOut; // AOD event from output from previous taks
4fbb2459 68
5faf5a07 69 Bool_t fMCOnly; // use only MC information
70 AliRsnEvent fRsnEvent; // interface to event for RSN package
4fbb2459 71
5faf5a07 72 TList *fInfoList; //! output list for informations
73 AliRsnVATProcessInfo fTaskInfo; // task info
4fbb2459 74
9477aa42 75 void SetDebugForAllClasses();
4fbb2459 76
77 ClassDef(AliRsnVAnalysisTaskSE, 1)
78};
79
80#endif