1 //-------------------------------------------------------------------------
2 // Task for the Analysis Framework
3 // Creates a PWG2 specific AOD, from the ESD, adding information required
5 // - Puts the per-track information into the AliPWG2AODTrack container,
6 // together with the link to the original AliAODTrack
8 // Author: Adam Kisiel, OSU, Adam.Kisiel@cern.ch
9 //-------------------------------------------------------------------------
10 #ifndef ALIANALYSISTASKPWG2ESDFILTER_H
11 #define ALIANALYSISTASKPWG2ESDFILTER_H
13 #include <AliAnalysisTask.h>
18 class AliAnalysisFilter;
23 class AliAnalysisTaskPWG2ESDfilter : public AliAnalysisTask
26 AliAnalysisTaskPWG2ESDfilter();
27 AliAnalysisTaskPWG2ESDfilter(const char* name);
28 AliAnalysisTaskPWG2ESDfilter(const AliAnalysisTaskPWG2ESDfilter &task);
29 virtual ~AliAnalysisTaskPWG2ESDfilter() {;}
31 AliAnalysisTaskPWG2ESDfilter& operator=(const AliAnalysisTaskPWG2ESDfilter &task);
32 // Implementation of interface methods
33 virtual void ConnectInputData(Option_t *option = "");
34 virtual void CreateOutputObjects();
36 virtual void LocalInit() {Init();}
37 virtual void Exec(Option_t *option);
38 virtual void Terminate(Option_t *option);
40 virtual void SetTrackFilter(AliAnalysisFilter* trackF) {fTrackFilter = trackF;}
41 virtual void SetKinkFilter (AliAnalysisFilter* KinkF) {fKinkFilter = KinkF;}
42 virtual void SetV0Filter (AliAnalysisFilter* V0F) {fV0Filter = V0F;}
43 virtual void SetDebugLevel(Int_t level) {fDebug = level;}
46 Int_t fDebug; // Debug flag
47 TTree* fTree; //! chained files
48 AliESDEvent* fESD; //! ESD
49 AliAODEvent* fAOD; //! AOD event
50 TTree* fTreeA; //! AOD tree
51 AliAnalysisFilter* fTrackFilter; // Track Filter
52 AliAnalysisFilter* fKinkFilter; // Kink Filter
53 AliAnalysisFilter* fV0Filter; // V0 Filter
54 TClonesArray* fPWG2AODTracks; //! container for PWG2 specific information
56 ClassDef(AliAnalysisTaskPWG2ESDfilter, 1); // Analysis task for standard ESD filtering