7 std::shared_ptr<gameboard::GameBoardForConcepts> game_board,
8 std::istream &input_stream
10 : player_spec_{player_spec}
11 , game_board_{game_board}
12 , input_stream_{input_stream}
13 , minimax_factories_{} {
16 std::make_shared<moveselection::MinimaxMoveEvaluatorFactory<uint32_t, 0>>(
24 std::make_shared<moveselection::MinimaxMoveEvaluatorFactory<uint32_t, 0>>(
32 std::make_shared<moveselection::MinimaxMoveEvaluatorFactory<__uint128_t, 0>>(
40 std::make_shared<moveselection::MinimaxMoveEvaluatorFactory<uint32_t, 1>>(
48 std::make_shared<moveselection::MinimaxMoveEvaluatorFactory<uint32_t, 1>>(
56 std::make_shared<moveselection::MinimaxMoveEvaluatorFactory<__uint128_t, 0>>(
65 std::shared_ptr<MoveEvaluatorFactoryBase> factory;
68 factory = std::make_shared<moveselection::RandomMoveEvaluatorFactory>();
71 factory = std::make_shared<moveselection::HumanMoveEvaluatorFactory>(
input_stream_);
EvaluatorFactoryRetriever(const PlayerSpec &player_spec, std::shared_ptr< gameboard::GameBoardForConcepts > game_board, std::istream &input_stream=std::cin)
static const std::unordered_map< size_t, ZobristCalculatorCount > num_zcalculators_to_enum_
std::shared_ptr< gameboard::GameBoardForConcepts > game_board_
std::unordered_map< MinimaxTypeInfo, std::shared_ptr< MoveEvaluatorFactoryBase >, MinimaxTypeInfoHash > minimax_factories_
const PlayerSpec & player_spec_
static const std::unordered_map< size_t, ZobristKeyType > zkey_bitcount_to_enum_
std::istream & input_stream_
std::shared_ptr< MoveEvaluatorFactoryBase > GetFactory()
EvaluatorType evaluator_type
DepthType minimax_search_depth
size_t zobrist_key_size_bits
size_t zobrist_calculator_count