Xiangiqgame
AI engine for Xiangqi
Loading...
Searching...
No Matches
game::PlayerSpecBuilder Class Reference

#include <player_spec_builder.hpp>

Collaboration diagram for game::PlayerSpecBuilder:
Collaboration graph

Public Member Functions

 PlayerSpecBuilder ()
 
PlayerSpecBuilderSetMultipleAttributes (const PlayerInputType &player_input)
 
PlayerSpec Build () const
 

Private Member Functions

template<typename T , typename F >
void TrySetAttribute (const PlayerInputType &input_map, const std::string &key, F setter)
 

Private Attributes

gameboard::PieceColor color_
 
EvaluatorType evaluator_type_
 
size_t zobrist_key_size_bits_
 
size_t zobrist_calculator_count_
 
DepthType minimax_search_depth_
 
PlayerInputTranslator input_translator_
 
const std::unordered_set< std::string > allowed_keys_
 

Detailed Description

Definition at line 19 of file player_spec_builder.hpp.

Constructor & Destructor Documentation

◆ PlayerSpecBuilder()

game::PlayerSpecBuilder::PlayerSpecBuilder ( )
inline

Definition at line 52 of file player_spec_builder.hpp.

Member Function Documentation

◆ Build()

PlayerSpec game::PlayerSpecBuilder::Build ( ) const
inline

Definition at line 111 of file player_spec_builder.hpp.

◆ SetMultipleAttributes()

PlayerSpecBuilder & game::PlayerSpecBuilder::SetMultipleAttributes ( const PlayerInputType player_input)
inline

Definition at line 59 of file player_spec_builder.hpp.

◆ TrySetAttribute()

template<typename T , typename F >
void game::PlayerSpecBuilder::TrySetAttribute ( const PlayerInputType input_map,
const std::string &  key,
setter 
)
inlineprivate

Definition at line 37 of file player_spec_builder.hpp.

Member Data Documentation

◆ allowed_keys_

const std::unordered_set<std::string> game::PlayerSpecBuilder::allowed_keys_
private
Initial value:
= {
"color",
"evaluator_type",
"key_size_bits",
"num_zobrist_calculators",
"minimax_search_depth"
}

Definition at line 27 of file player_spec_builder.hpp.

◆ color_

gameboard::PieceColor game::PlayerSpecBuilder::color_
private

Definition at line 20 of file player_spec_builder.hpp.

◆ evaluator_type_

EvaluatorType game::PlayerSpecBuilder::evaluator_type_
private

Definition at line 21 of file player_spec_builder.hpp.

◆ input_translator_

PlayerInputTranslator game::PlayerSpecBuilder::input_translator_
private

Definition at line 25 of file player_spec_builder.hpp.

◆ minimax_search_depth_

DepthType game::PlayerSpecBuilder::minimax_search_depth_
private

Definition at line 24 of file player_spec_builder.hpp.

◆ zobrist_calculator_count_

size_t game::PlayerSpecBuilder::zobrist_calculator_count_
private

Definition at line 23 of file player_spec_builder.hpp.

◆ zobrist_key_size_bits_

size_t game::PlayerSpecBuilder::zobrist_key_size_bits_
private

Definition at line 22 of file player_spec_builder.hpp.


The documentation for this class was generated from the following file: