30 operator std::string()
const;
33 void setFEN(std::string
const& fenstr);
63 std::string movesinpgnformat()
const;
71 #if defined(BELOFTE_NORANDOM) || defined(_DEBUG)
int_fast16_t bScore
used to return id of move in movelist
allow custom methods to be attached to game
simple coordmove, with 4 characters, or 5 characters in case of promotion mostly used for interface
game representation, singleton
bool playGameMove(bCoordMove const &coordmove)
bScore EvalForPlayer(bBoard &b)
bGame & operator=(bGame &&)=delete
void revertGameMove()
required for Winboard protocol, not supported in UCI (except debug)
bool playUIsuppliedMove(std::string const &coordmove)
void setPlayerName(std::string const &n)
gameResult_t EvalFinalScore(bBoard &b)
bGame & operator=(bGame const &)=delete
void WaitForSearchEnd()
Called in separate thread, sure to terminate normally.
void setRandom(bool const r)
bScore MaterialEvalForPlayer(bBoard &b)
void DoSearch()
Start search thread and exit.
bool playGameMoveSeries(std::string const &coordmoves)
all moves in a single string
void setResult(gameResult_t rs)
void setFEN(std::string const &fenstr)
gameResult_t getResult() const
bGame(bGame const &)=delete
positions_t & getPositions()
virtual ~bGame() override
bBoard & getCurrentPosition()
void setLevel(bLevel const &l)
bEpdResult evalPerftResult(bFen const &fen, bEpdOpCodes &opcodes)
check perft result for different depths D[1-99] # perft test - nodes
int64_t DoPerft(depth_t const d, bSearchAlgorithm &sa)
do perft search at depth
bEpdResult evalEpdPosition(bFen const &fen, bEpdOpCodes &opcodes, epdTest_t const typeOfTest)
do actual epd position test change level if any of following set acs # set search seconds dm # set di...
virtual ~bGameWithTest() final
PgnMove is for user-interface only.
enum tEpdTestType epdTest_t
std::map< std::string, std::string > bEpdOpCodes
enum gameResult gameResult_t
std::vector< bBoard > positions_t
std::map< std::string, std::string > gameAttributes_t