Xiangiqgame
AI engine for Xiangqi
Loading...
Searching...
No Matches
BoardStateCoordinatorConcept Concept Reference

#include <board_state_coordinator.hpp>

Concept definition

template<typename T>
concept BoardStateCoordinatorConcept = requires(
T t,
const gameboard::BoardMap_t &board_map,
const gameboard::ExecutedMove &executed_move,
DepthType search_depth,
MoveCountType access_index
) {
typename T::KeyType;
{t.GetState()} -> std::same_as<typename T::KeyType>;
{t.RecordTrData(search_depth, result_type, similar_moves, access_index)} -> std::same_as<void>;
{t.GetTrData(search_depth, access_index)} -> std::same_as<moveselection::TranspositionTableSearchResult>;
{t.GetTrTableSize()} -> std::same_as<size_t>;
{t.UpdateMoveCounter()} -> std::same_as<void>;
}
Holds a gameboard::MoveCollection in which all gameboard::Move have the same value (as perceived by a...
uint16_t DepthType
uint16_t MoveCountType
array< array< GamePiece, kNumFiles >, kNumRanks > BoardMap_t
2-D array of gameboard::GamePiece objects.
A change in the state of a gameboard::GameBoard represented by a gameboard::Move, and each of the gam...

Detailed Description

Definition at line 12 of file board_state_coordinator.hpp.