25#include "board/result.h"
26#include "board/move.h"
27#include "timecontrol.h"
28#include "moveevaluation.h"
30namespace Chess {
class Board; }
66 virtual bool isReady()
const;
72 bool hasError()
const;
106 void setTimeControl(
const TimeControl& timeControl);
306 bool m_claimedResult;
307 bool m_validateClaims;
308 bool m_canPlayAfterTimeout;
A chess player, human or AI.
Definition chessplayer.h:39
virtual void makeBookMove(const Chess::Move &move)
Definition chessplayer.cpp:137
virtual void clearPonderState()
Definition chessplayer.cpp:227
virtual void onTimeout()
Definition chessplayer.cpp:297
State
Definition chessplayer.h:45
@ Disconnected
Disconnected or terminated.
Definition chessplayer.h:52
@ Starting
Starting or initializing.
Definition chessplayer.h:47
@ Observing
Observing a game, or waiting for turn.
Definition chessplayer.h:49
@ Idle
Idle and ready to start a game.
Definition chessplayer.h:48
@ Thinking
Thinking of the next move.
Definition chessplayer.h:50
@ NotStarted
Not started or uninitialized.
Definition chessplayer.h:46
@ FinishingGame
Finishing or cleaning up after a game.
Definition chessplayer.h:51
void setName(const QString &name)
Definition chessplayer.cpp:207
void moveMade(const Chess::Move &move)
void setCanPlayAfterTimeout(bool enable)
Definition chessplayer.cpp:218
void setError(const QString &error)
Definition chessplayer.cpp:197
void setClaimsValidated(bool validate)
Definition chessplayer.cpp:236
QString name() const
Definition chessplayer.cpp:202
const ChessPlayer * opponent() const
Definition chessplayer.cpp:167
void resultClaim(const Chess::Result &result)
virtual void startPondering()
Definition chessplayer.cpp:223
bool areClaimsValidated() const
Definition chessplayer.cpp:231
virtual bool canPlayAfterTimeout() const
Definition chessplayer.cpp:213
virtual void onCrashed()
Definition chessplayer.cpp:291
void emitMove(const Chess::Move &move)
Definition chessplayer.cpp:266
MoveEvaluation m_eval
Definition chessplayer.h:296
virtual void startGame()=0
virtual void quit()
Definition chessplayer.cpp:107
Chess::Board * board()
Definition chessplayer.cpp:162
void forfeit(Chess::Result::Type type, const QString &description=QString())
Definition chessplayer.cpp:255
State state() const
Definition chessplayer.cpp:172
virtual void go()
Definition chessplayer.cpp:87
void nameChanged(const QString &name)
virtual void startThinking()=0
void debugMessage(const QString &data)
void thinking(const MoveEvaluation &eval)
virtual void makeMove(const Chess::Move &move)=0
void startedThinking(int timeLeft)
virtual bool supportsVariant(const QString &variant) const =0
virtual bool isHuman() const =0
virtual void kill()
Definition chessplayer.cpp:285
ChessPlayer(QObject *parent=nullptr)
Definition chessplayer.cpp:24
void claimResult(const Chess::Result &result)
Definition chessplayer.cpp:241
void setState(State state)
Definition chessplayer.cpp:187
An internal chessboard class.
Definition board.h:58
A small and efficient chessmove class.
Definition move.h:43
The result of a chess game.
Definition result.h:35
Type
Definition result.h:41
The side or color of a chess player.
Definition side.h:36
Evaluation data for a chess move.
Definition moveevaluation.h:36
Time controls of a chess game.
Definition timecontrol.h:36