00001 00002 00003 #ifndef SOCCER_ADVISER_H 00004 #define SOCCER_ADVISER_H 00005 00006 #include <iostream> 00007 00008 #include <rcsc/coach/global_world_model.h> 00009 #include <rcsc/coach/clang_manager.h> 00010 00011 00012 class SoccerAdviser { 00013 private: 00014 00015 public: 00016 virtual 00017 ~SoccerAdviser() 00018 { } 00019 00020 00021 virtual 00022 bool execute( const GlobalWorldModel & world, 00023 CLangManager & manager ) = 0; 00024 virtual 00025 bool isAdviceTiming( const GlobalWorldModel & world, 00026 const CLangManager & manager ) const = 0; 00027 virtual 00028 std::ostream & toCLang( std::ostream & o ) = 0; 00029 00030 }; 00031 00032 00033 #endif