1 #ifndef ALIANALYSISTASKFILTER_H
2 #define ALIANALYSISTASKFILTER_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
9 //////////////////////////////////////////////////////////////////////////
11 // Base class for filtering friends
13 //////////////////////////////////////////////////////////////////////////
15 #include "AliAnalysisTask.h"
19 class AliInputEventHandler;
20 class AliESDfriendTrack;
24 class AliAnalysisTaskFilter : public AliAnalysisTask
27 AliAnalysisTaskFilter();
28 AliAnalysisTaskFilter(const char* name);
29 AliAnalysisTaskFilter(const AliAnalysisTaskFilter& obj);
30 AliAnalysisTaskFilter& operator=(const AliAnalysisTaskFilter& other);
31 virtual ~AliAnalysisTaskFilter() {;}
33 // Implementation of interface methods
34 virtual void ConnectInputData(Option_t *option = "");
35 virtual void CreateOutputObjects();
36 virtual void Exec(Option_t* option);
37 virtual void SetDebugLevel(Int_t level) {fDebug = level;}
38 virtual void Init() {;}
39 virtual void UserCreateOutputObjects() {;}
40 virtual void UserExec(Option_t* /*option*/) {;}
42 // To be implemented by user
43 virtual Bool_t UserSelectESDfriendForCurrentEvent(){return kTRUE;}
46 virtual Int_t DebugLevel() {return fDebug; }
47 virtual AliVEvent* InputEvent() {return fInputEvent;}
48 virtual AliESDEvent* ESDEvent() {return fOutputESD; }
49 virtual AliESDfriend* ESDfriend() {return fOutputESDfriend; }
50 virtual TTree* OutputTree() {return fTreeE; }
51 virtual Long64_t Entry() {return fEntry; }
52 virtual const char* CurrentFileName();
54 // To add a friend track
55 void AddFriendTrackAt(AliESDfriendTrack* t, Int_t index);
58 Int_t fDebug; // Debug flag
59 Int_t fEntry; // Current entry in the chain
60 AliVEvent* fInputEvent; //! VEvent Input
61 AliInputEventHandler* fInputHandler; //! Input Handler
62 AliESDEvent* fOutputESD; //! ESD out
63 AliESDfriend* fOutputESDfriend; //! ESD friend out
64 TTree* fTreeE; // ESD output Tree
66 ClassDef(AliAnalysisTaskFilter, 1); // Analysis task for filtering friends