1 #ifndef ALIANALYSISTASKSE_H
2 #define ALIANALYSISTASKSE_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"
13 class AliAODTracklets;
14 class AliAODCaloCells;
16 class AliInputEventHandler;
22 class AliAnalysisTaskSE : public AliAnalysisTask
26 AliAnalysisTaskSE(const char* name);
27 AliAnalysisTaskSE(const AliAnalysisTaskSE& obj);
28 AliAnalysisTaskSE& operator=(const AliAnalysisTaskSE& other);
29 virtual ~AliAnalysisTaskSE() {;}
30 // Implementation of interface methods
31 virtual void ConnectInputData(Option_t *option = "");
32 virtual void CreateOutputObjects();
33 virtual void Exec(Option_t* option);
34 virtual void SetDebugLevel(Int_t level) {fDebug = level;}
35 virtual void Init() {;}
36 // To be implemented by user
37 virtual void UserCreateOutputObjects() {;}
38 virtual void UserExec(Option_t* /*option*/) {;}
39 // Helpers for adding branches to the AOD
40 virtual void AddAODBranch(const char* cname, void* addobj, const char *fname="");
42 virtual Int_t DebugLevel() {return fDebug; }
43 virtual AliVEvent* InputEvent() {return fInputEvent;}
44 virtual AliAODEvent* AODEvent() {return fOutputAOD; }
45 virtual TTree* OutputTree() {return fTreeA; }
46 virtual AliMCEvent* MCEvent() {return fMCEvent; }
47 virtual Long64_t Entry() {return fEntry; }
48 virtual const char* CurrentFileName();
49 virtual Bool_t IsStandardAOD() const;
51 Int_t fDebug; // Debug flag
52 Int_t fEntry; // Current entry in the chain
53 AliVEvent* fInputEvent; //! VEvent Input
54 AliInputEventHandler* fInputHandler; //! Input Handler
55 AliAODEvent* fOutputAOD; //! AOD out
56 AliMCEvent* fMCEvent; //! MC
57 TTree* fTreeA; // AOD output Tree
58 static AliAODHeader* fgAODHeader; //! Header for replication
59 static TClonesArray* fgAODTracks; //! Tracks for replication
60 static TClonesArray* fgAODVertices; //! Vertices for replication
61 static TClonesArray* fgAODV0s; //! V0s for replication
62 static TClonesArray* fgAODPMDClusters; //! PMDClusters for replication
63 static TClonesArray* fgAODJets; //! Jets for replication
64 static TClonesArray* fgAODFMDClusters; //! FMDClusters for replication
65 static TClonesArray* fgAODCaloClusters; //! CaloClusters for replication
66 static TClonesArray* fgAODMCParticles; //! MC Particles for replicatio
67 static AliAODTracklets* fgAODTracklets; //! Tracklets for replication
68 static AliAODCaloCells* fgAODEmcalCells; //! Emcal Cell replication
69 static AliAODCaloCells* fgAODPhosCells; //! Phos Cell replication
71 ClassDef(AliAnalysisTaskSE, 1); // Analysis task for standard jet analysis