1 #ifndef ALIANALYSISTASKME_H
2 #define ALIANALYSISTASKME_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
9 #include "AliAnalysisTask.h"
12 class AliInputEventHandler;
14 class AliMultiEventInputHandler;
18 class AliAnalysisTaskME : public AliAnalysisTask
22 AliAnalysisTaskME(const char* name);
23 AliAnalysisTaskME(const AliAnalysisTaskME& obj);
24 AliAnalysisTaskME& operator=(const AliAnalysisTaskME& other);
25 virtual ~AliAnalysisTaskME() {;}
26 // Implementation of interface methods
27 virtual void ConnectInputData(Option_t *option = "");
28 virtual void CreateOutputObjects();
29 virtual void Exec(Option_t* option);
30 virtual void SetDebugLevel(Int_t level) {fDebug = level;}
31 virtual void Init() {;}
32 virtual void RequireFreshBuffer() {fFreshBufferOnly = kTRUE;}
33 // To be implemented by user
34 virtual void UserCreateOutputObjects() {;}
35 virtual void UserExec(Option_t* /*option*/) {;}
36 // Helpers for adding branches to the AOD
37 virtual void AddAODBranch(const char* cname, void* addobj);
39 virtual Int_t DebugLevel() {return fDebug; }
40 virtual AliVEvent* GetEvent(Int_t iev);
41 virtual AliAODEvent* AODEvent() {return fOutputAOD; }
42 virtual TTree* OutputTree() {return fTreeA; }
43 virtual Long64_t Entry() {return fEntry; }
44 virtual const char* CurrentFileName();
46 Int_t fDebug; // Debug flag
47 Int_t fEntry; // Current entry in the chain
48 Bool_t fFreshBufferOnly; // Flag for Exec call for fresh buffer only
49 AliMultiEventInputHandler* fInputHandler; //! Input Handler
50 AliAODEvent* fOutputAOD; //! AOD out
51 TTree* fTreeA; // AOD output Tree
52 ClassDef(AliAnalysisTaskME, 1); // Analysis task for standard jet analysis