00001 ////////////////////////////////////////////////////////// 00002 // 00003 // Example of TSelector implementation to do generic 00004 // processing with the test 'Event' structure. 00005 // See tutorials/proof/runProof.C, option "event", for an 00006 // example of how to run this selector. 00007 // 00008 ////////////////////////////////////////////////////////// 00009 00010 #ifndef ProofEvent_h 00011 #define ProofEvent_h 00012 00013 #include <TSelector.h> 00014 #include "Event.h" 00015 00016 class TH1F; 00017 class TRandom3; 00018 00019 class ProofEvent : public TSelector { 00020 public : 00021 00022 // Specific members 00023 TRandom3 *fRandom; 00024 Event *fEvent; 00025 Int_t fNtrack; 00026 TH1F *fHisto; 00027 00028 ProofEvent(); 00029 virtual ~ProofEvent(); 00030 virtual Int_t Version() const { return 2; } 00031 virtual void Begin(TTree *tree); 00032 virtual void SlaveBegin(TTree *tree); 00033 virtual Bool_t Process(Long64_t entry); 00034 virtual void SetOption(const char *option) { fOption = option; } 00035 virtual void SetObject(TObject *obj) { fObject = obj; } 00036 virtual void SetInputList(TList *input) { fInput = input; } 00037 virtual TList *GetOutputList() const { return fOutput; } 00038 virtual void SlaveTerminate(); 00039 virtual void Terminate(); 00040 00041 ClassDef(ProofEvent,0); 00042 }; 00043 00044 #endif