00001 #ifndef algorithmTree_h 00002 #define algorithmTree_h 00003 00004 #include "Event/algorithmVI.h" 00005 #include "Event/algorithmComposite.h" 00006 //---------------------------------- 00008 00011 //--------------------------------- 00012 // J.A Hernando Santa Cruz, 06/06/00 00013 //--------------------------------- 00014 00015 //################################# 00016 class algorithmTree : public algorithmVI 00017 //################################# 00018 { 00019 public: 00020 00022 algorithmTree(); 00024 virtual ~algorithmTree(); 00025 00027 virtual void initialize() {m_ini->run();} 00029 virtual void execute() {m_exe->run();} 00031 virtual void finalize() {m_fin->run();} 00032 00033 protected: 00034 00036 algorithmComposite* iniAlg() const {return m_ini;} 00038 algorithmComposite* exeAlg() const {return m_exe;} 00040 algorithmComposite* finAlg() const {return m_fin;} 00041 00042 private: 00043 00045 algorithmComposite* m_ini; 00047 algorithmComposite* m_exe; 00049 algorithmComposite* m_fin; 00050 00051 }; 00052 #endif