27 #include <QTextStream> 28 #include "board/move.h" 29 #include "timecontrol.h" 31 #include "gameadjudicator.h" 32 #include "tournamentplayer.h" 33 #include "tournamentpair.h" 72 virtual QString type()
const = 0;
76 bool isFinished()
const;
91 int currentRound()
const;
101 int gamesPerEncounter()
const;
107 int roundMultiplier()
const;
109 int finishedGameCount()
const;
111 int finalGameCount()
const;
115 int playerCount()
const;
120 int seedCount()
const;
130 void setName(
const QString& name);
132 void setSite(
const QString& site);
134 void setVariant(
const QString& variant);
140 void setGamesPerEncounter(
int count);
145 virtual bool canSetRoundMultiplier()
const;
151 void setRoundMultiplier(
int factor);
153 void setStartDelay(
int delay);
161 void setRecoveryMode(
bool recover);
179 void setOpeningDepth(
int plies);
187 void setPgnOutput(
const QString& fileName,
196 void setPgnWriteUnfinishedGames(
bool enabled);
204 void setPgnCleanupEnabled(
bool enabled);
212 void setEpdOutput(
const QString& fileName);
220 void setOpeningRepetitions(
int count);
233 void setOpeningPolicy(OpeningPolicy policy = DefaultPolicy);
240 void setSwapSides(
bool enabled);
247 void setOpeningBookOwnership(
bool enabled);
252 void setSeedCount(
int seedCount);
265 int bookDepth = 256);
270 virtual QString results()
const;
325 void setCurrentRound(
int round);
327 int gamesInProgress()
const;
350 virtual void onGameAboutToStart(
ChessGame* game,
366 virtual void initializePairing() = 0;
373 virtual int gamesPerCycle()
const = 0;
395 virtual void onFinished();
403 virtual void addScore(
int player,
int score);
408 virtual bool areAllGamesFinished()
const;
416 virtual bool hasGauntletRatingsOrder()
const;
419 void startNextGame();
420 bool writePgn(
PgnGame* pgn,
int gameNumber);
452 int m_nextGameNumber;
453 int m_finishedGameCount;
454 int m_savedGameCount;
455 int m_finalGameCount;
456 int m_gamesPerEncounter;
457 int m_roundMultiplier;
462 int m_openingRepetitions;
463 OpeningPolicy m_openingPolicy;
466 bool m_pgnWriteUnfinishedGames;
468 bool m_bookOwnership;
477 int m_repetitionCounter;
488 #endif // TOURNAMENT_H Use additional data like extra tags and comments.
Definition: pgngame.h:60
A class for constructing new chess players.
Definition: playerbuilder.h:38
Time controls of a chess game.
Definition: timecontrol.h:35
A class for storing a player's tournament-specific details.
Definition: tournamentplayer.h:28
A game of chess in PGN format.
Definition: pgngame.h:51
Shift on new encounter.
Definition: tournament.h:53
Shift on repetition count and on new encounter.
Definition: tournament.h:52
Definition: chessgame.h:38
The side or color of a chess player.
Definition: side.h:35
PgnMode
Definition: pgngame.h:55
A class for adjudicating chess games.
Definition: gameadjudicator.h:32
A class for managing chess games and players.
Definition: gamemanager.h:40
OpeningPolicy
Definition: tournament.h:50
Base class for chess tournaments.
Definition: tournament.h:44
A collection of opening moves for chess.
Definition: openingbook.h:43
A single encounter in a tournament.
Definition: tournamentpair.h:31
A Sequential Probability Ratio Test.
Definition: sprt.h:32
A suite of chess openings.
Definition: openingsuite.h:40