Introduce sub-(sub-)rounds to tournament round counting and PGN #702
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There have been requests for a more fine-grained identification of tournament games.
This PR introduces sub-round and sub-sub-round counters to the
Tournament
class.It extends the simple numerical PGN "Round" tag value like
[Round "1"]
to structured values, e.g.[Round "1.2.1"]
. Resolves #249.Example from PGN Specification, Section 8.1.1.4:
To accomplish a more fine-grained control of openings two new policy options are introduced to
OpeningPolicy
:SubRoundPolicy
which shifts openings for a new sub-round.KeepPolicy
which always keeps the same opening.There a policies to shift or not shift openings for the levels of a tournament (game, encounter, sub-round, round, tournament).
-rounds
option. Now the PGN round tag is constant for a whole cycle of sub-rounds. Those sub-rounds are numbered by the second counter. A sub-round consist of several encounters, depending on the number of players. In this PR the games within a sub-round are numbered by the sub-sub-round counter. Resolves openings policy works for gauntlet but not for round-robin (default) #641.The "round" field was changed from
int
toQString
inPgnGame
.HTH