00001 /* speculativeModel.h 00002 */ 00003 #ifndef OSL_SPECULATIVEMODEL_H 00004 #define OSL_SPECULATIVEMODEL_H 00005 00006 #include "osl/game_playing/computerPlayer.h" 00007 #include <boost/shared_ptr.hpp> 00008 00009 namespace osl 00010 { 00011 namespace game_playing 00012 { 00013 class SearchPlayer; 00017 class SpeculativeModel 00018 { 00019 public: 00020 virtual ~SpeculativeModel(); 00021 00022 virtual void setMaxThreads(int); 00023 00024 virtual void startSpeculative(const boost::shared_ptr<GameState> state, 00025 const SearchPlayer& main_player)=0; 00026 virtual void stopOtherThan(Move)=0; 00027 virtual void stopAll()=0; 00028 00032 virtual const MoveWithComment waitResult(Move last_move, int wait_for, 00033 SearchPlayer& main_player, 00034 int byoyomi)=0; 00035 00036 virtual void selectBestMoveCleanUp()=0; 00037 void clearResource(); 00038 }; 00039 } // game_playing 00040 } // osl 00041 00042 #endif /* OSL_SPECULATIVEMODEL_H */ 00043 // ;;; Local Variables: 00044 // ;;; mode:c++ 00045 // ;;; c-basic-offset:2 00046 // ;;; End: