GTP interface with commands for testing functionality of the Fuego libraries. More...
#include <FuegoTestEngine.h>
Public Member Functions | |
FuegoTestEngine (int fixedBoardSize, const char *programPath=0, const std::string &player="") | |
Constructor. | |
~FuegoTestEngine () | |
void | CmdAnalyzeCommands (GtpCommand &cmd) |
void | CmdName (GtpCommand &cmd) |
void | CmdParam (GtpCommand &cmd) |
Player selection. | |
void | CmdVersion (GtpCommand &cmd) |
GoBook & | Book () |
const GoGame & | Game () const |
const GoBoard & | Board () const |
void | SetPlayer (GoPlayer *player) |
GoPlayer & | Player () const |
void | DumpState (std::ostream &out) const |
void | SetAutoSave (const std::string &prefix) |
void | SetStatisticsFile (const std::string &fileName) |
void | SetAutoShowBoard (bool showBoard) |
void | SetDebugToComment (bool debugToComment) |
void | SetMaxClearBoard (int n) |
void | SetNamedRules (const std::string &namedRules) |
void | SetTimeLimit (double timeLimit) |
double | TimeLimit () |
void | SetMpiSynchronizer (const SgMpiSynchronizerHandle &m_handle) |
SgMpiSynchronizerHandle | MpiSynchronizer () |
const SgMpiSynchronizerHandle | MpiSynchronizer () const |
virtual void | CmdAllLegal (GtpCommand &) |
virtual void | CmdAllMoveValues (GtpCommand &) |
virtual void | CmdBoard (GtpCommand &) |
virtual void | CmdBoardSize (GtpCommand &) |
virtual void | CmdClearBoard (GtpCommand &) |
virtual void | CmdClock (GtpCommand &) |
virtual void | CmdFinalScore (GtpCommand &) |
virtual void | CmdFixedHandicap (GtpCommand &) |
virtual void | CmdGameOver (GtpCommand &) |
virtual void | CmdGenMove (GtpCommand &) |
virtual void | CmdGenMoveCleanup (GtpCommand &) |
virtual void | CmdGetKomi (GtpCommand &) |
virtual void | CmdGGUndo (GtpCommand &) |
virtual void | CmdInterrupt (GtpCommand &) |
virtual void | CmdIsLegal (GtpCommand &) |
virtual void | CmdKgsTimeSettings (GtpCommand &cmd) |
virtual void | CmdKomi (GtpCommand &) |
virtual void | CmdListStones (GtpCommand &) |
virtual void | CmdLoadSgf (GtpCommand &) |
virtual void | CmdParamRules (GtpCommand &) |
virtual void | CmdParamTimecontrol (GtpCommand &) |
virtual void | CmdPlaceFreeHandicap (GtpCommand &) |
virtual void | CmdPlay (GtpCommand &) |
virtual void | CmdPlayerBoard (GtpCommand &) |
virtual void | CmdPlaySequence (GtpCommand &) |
virtual void | CmdPointNumbers (GtpCommand &) |
virtual void | CmdPointInfo (GtpCommand &) |
virtual void | CmdQuit (GtpCommand &cmd) |
virtual void | CmdRegGenMove (GtpCommand &) |
virtual void | CmdRegGenMoveToPlay (GtpCommand &) |
virtual void | CmdRules (GtpCommand &) |
virtual void | CmdSaveSgf (GtpCommand &) |
virtual void | CmdSentinelFile (GtpCommand &) |
virtual void | CmdSetFreeHandicap (GtpCommand &) |
virtual void | CmdSetInfo (GtpCommand &) |
virtual void | CmdSetup (GtpCommand &) |
virtual void | CmdSetupPlayer (GtpCommand &) |
virtual void | CmdShowBoard (GtpCommand &) |
virtual void | CmdTimeLastMove (GtpCommand &) |
virtual void | CmdTimeLeft (GtpCommand &) |
virtual void | CmdTimeSettings (GtpCommand &) |
virtual void | CmdUndo (GtpCommand &) |
void | ExecuteFile (const std::string &name, std::ostream &log=std::cerr) |
std::string | ExecuteCommand (const std::string &cmd, std::ostream &log=std::cerr) |
void | MainLoop (GtpInputStream &in, GtpOutputStream &out) |
void | Register (const std::string &name, GtpCallbackBase *callback) |
void | Register (const std::string &command, typename GtpCallback< T >::Method method, T *instance) |
bool | IsRegistered (const std::string &command) const |
void | SetQuit () |
bool | IsQuitSet () const |
virtual void | Ponder () |
virtual void | InitPonder () |
virtual void | StopPonder () |
virtual void | Interrupt () |
virtual void | CmdKnownCommand (GtpCommand &) |
virtual void | CmdListCommands (GtpCommand &) |
virtual void | CmdProtocolVersion (GtpCommand &) |
Protected Member Functions | |
void | BeforeHandleCommand () |
void | BeforeWritingResponse () |
void | BoardChanged () |
void | CheckLegal (std::string message, SgBlackWhite color, SgPoint move, bool checkOnlyOccupied) |
void | CheckMaxClearBoard () |
void | CheckMoveStackOverflow () const |
SgPoint | GenMove (SgBlackWhite color, bool ignoreClock) |
void | RespondNumberArray (GtpCommand &cmd, const SgPointArray< int > &array, int scale) |
void | Init (int size) |
void | Play (SgBlackWhite color, SgPoint move) |
SgBlackWhite | BlackWhiteArg (const GtpCommand &cmd, std::size_t number) const |
SgEmptyBlackWhite | EmptyBlackWhiteArg (const GtpCommand &cmd, std::size_t number) const |
SgPoint | EmptyPointArg (const GtpCommand &cmd, std::size_t number) const |
SgPoint | MoveArg (const GtpCommand &cmd, std::size_t number) const |
SgPoint | PointArg (const GtpCommand &cmd) const |
SgPoint | PointArg (const GtpCommand &cmd, std::size_t number) const |
SgVector< SgPoint > | PointListArg (const GtpCommand &cmd, std::size_t number) const |
SgVector< SgPoint > | PointListArg (const GtpCommand &cmd) const |
SgPoint | StoneArg (const GtpCommand &cmd, std::size_t number) const |
void | RulesChanged () |
virtual std::vector< std::string > | CreateStatisticsSlots () |
virtual void | AddPlayStatistics () |
void | AddStatistics (const std::string &key, const std::string &value) |
void | AddStatistics (const std::string &key, const T &value) |
Protected Attributes | |
GoPlayer * | m_player |
boost::scoped_ptr< GoAutoBook > | m_autoBook |
Private Member Functions | |
GoPlayer * | CreatePlayer (const std::string &name) |
void | SetPlayer (const std::string &playerId) |
Private Attributes | |
GoGtpExtraCommands | m_extraCommands |
GoSafetyCommands | m_safetyCommands |
std::string | m_playerId |
Player ID as in CreatePlayer(). |
GTP interface with commands for testing functionality of the Fuego libraries.
Definition at line 17 of file FuegoTestEngine.h.
FuegoTestEngine::FuegoTestEngine | ( | int | fixedBoardSize, | |
const char * | programPath = 0 , |
|||
const std::string & | player = "" | |||
) |
Constructor.
fixedBoardSize | ||
programPath | ||
player | Player ID as in CreatePlayer() |
Definition at line 30 of file FuegoTestEngine.cpp.
References CmdParam(), m_extraCommands, m_safetyCommands, GoSafetyCommands::Register(), GoGtpExtraCommands::Register(), GtpEngine::Register(), and SetPlayer().
FuegoTestEngine::~FuegoTestEngine | ( | ) |
Definition at line 42 of file FuegoTestEngine.cpp.
void FuegoTestEngine::CmdAnalyzeCommands | ( | GtpCommand & | cmd | ) | [virtual] |
Reimplemented from GoGtpEngine.
Definition at line 46 of file FuegoTestEngine.cpp.
References GoSafetyCommands::AddGoGuiAnalyzeCommands(), GoGtpExtraCommands::AddGoGuiAnalyzeCommands(), m_extraCommands, m_safetyCommands, GtpCommand::Response(), GtpCommand::SetResponse(), and GoGtpCommandUtil::SortResponseAnalyzeCommands().
void FuegoTestEngine::CmdName | ( | GtpCommand & | cmd | ) | [virtual] |
Reimplemented from GoGtpEngine.
Definition at line 57 of file FuegoTestEngine.cpp.
References m_playerId.
void FuegoTestEngine::CmdParam | ( | GtpCommand & | cmd | ) | [virtual] |
Player selection.
This command is compatible with the GoGui analyze command type "param".
Parameters:
player
Player id as in FuegoTestEngine::SetPlayer Reimplemented from GoGtpEngine.
Definition at line 70 of file FuegoTestEngine.cpp.
References GtpCommand::Arg(), GtpCommand::CheckNuArgLessEqual(), m_playerId, GtpCommand::NuArg(), GtpCommand::RemainingLine(), SetPlayer(), and SgException::what().
Referenced by FuegoTestEngine().
void FuegoTestEngine::CmdVersion | ( | GtpCommand & | cmd | ) | [virtual] |
Reimplemented from GtpEngine.
Definition at line 104 of file FuegoTestEngine.cpp.
GoPlayer * FuegoTestEngine::CreatePlayer | ( | const std::string & | name | ) | [private] |
Definition at line 116 of file FuegoTestEngine.cpp.
References GoGtpEngine::Board().
Referenced by SetPlayer().
void FuegoTestEngine::SetPlayer | ( | const std::string & | playerId | ) | [private] |
Definition at line 146 of file FuegoTestEngine.cpp.
References CreatePlayer(), and m_playerId.
Referenced by CmdParam(), and FuegoTestEngine().
Definition at line 38 of file FuegoTestEngine.h.
Referenced by CmdAnalyzeCommands(), and FuegoTestEngine().
std::string FuegoTestEngine::m_playerId [private] |
Player ID as in CreatePlayer().
Definition at line 43 of file FuegoTestEngine.h.
Referenced by CmdName(), CmdParam(), and SetPlayer().
Definition at line 40 of file FuegoTestEngine.h.
Referenced by CmdAnalyzeCommands(), and FuegoTestEngine().