Xiangiqgame
AI engine for Xiangqi
Loading...
Searching...
No Matches
moveselection::HumanMoveEvaluatorForConcepts Class Reference

#include <move_evaluator_human_for_concepts.hpp>

Inheritance diagram for moveselection::HumanMoveEvaluatorForConcepts:
Inheritance graph
Collaboration diagram for moveselection::HumanMoveEvaluatorForConcepts:
Collaboration graph

Public Member Functions

gameboard::Move SelectMove (const gameboard::MoveCollection &allowed_moves)
 
void NotifyIllegalMove ()
 
- Public Member Functions inherited from MoveEvaluatorBase
virtual gameboard::Move SelectMove (const gameboard::MoveCollection &allowed_moves)=0
 
virtual void NotifyIllegalMove ()=0
 
virtual const std::optional< moveselection::SearchSummariessearch_summaries () const
 
virtual ~MoveEvaluatorBase ()=default
 

Static Public Member Functions

static std::unique_ptr< HumanMoveEvaluatorForConceptsCreate (gameboard::PieceColor evaluating_player, std::istream &input_stream=std::cin)
 

Private Member Functions

 HumanMoveEvaluatorForConcepts (gameboard::PieceColor evaluating_player, std::istream &input_stream)
 
gameboard::Move GetSyntacticallyValidMove (std::istream &input_stream)
 

Private Attributes

gameboard::PieceColor evaluating_player_
 
humanplayerio::InputRetrievalMessages io_messages_
 
std::istream & input_stream_
 

Detailed Description

Definition at line 25 of file move_evaluator_human_for_concepts.hpp.

Constructor & Destructor Documentation

◆ HumanMoveEvaluatorForConcepts()

moveselection::HumanMoveEvaluatorForConcepts::HumanMoveEvaluatorForConcepts ( gameboard::PieceColor  evaluating_player,
std::istream &  input_stream 
)
private

Definition at line 11 of file move_evaluator_human_for_concepts.cpp.

Member Function Documentation

◆ Create()

std::unique_ptr< HumanMoveEvaluatorForConcepts > moveselection::HumanMoveEvaluatorForConcepts::Create ( gameboard::PieceColor  evaluating_player,
std::istream &  input_stream = std::cin 
)
static

Definition at line 19 of file move_evaluator_human_for_concepts.cpp.

◆ GetSyntacticallyValidMove()

gameboard::Move moveselection::HumanMoveEvaluatorForConcepts::GetSyntacticallyValidMove ( std::istream &  input_stream)
private

Definition at line 59 of file move_evaluator_human_for_concepts.cpp.

◆ NotifyIllegalMove()

void moveselection::HumanMoveEvaluatorForConcepts::NotifyIllegalMove ( )
virtual

Implements MoveEvaluatorBase.

Definition at line 47 of file move_evaluator_human_for_concepts.cpp.

◆ SelectMove()

gameboard::Move moveselection::HumanMoveEvaluatorForConcepts::SelectMove ( const gameboard::MoveCollection allowed_moves)
virtual

Implements MoveEvaluatorBase.

Definition at line 28 of file move_evaluator_human_for_concepts.cpp.

Member Data Documentation

◆ evaluating_player_

gameboard::PieceColor moveselection::HumanMoveEvaluatorForConcepts::evaluating_player_
private

Definition at line 26 of file move_evaluator_human_for_concepts.hpp.

◆ input_stream_

std::istream& moveselection::HumanMoveEvaluatorForConcepts::input_stream_
private

Definition at line 28 of file move_evaluator_human_for_concepts.hpp.

◆ io_messages_

humanplayerio::InputRetrievalMessages moveselection::HumanMoveEvaluatorForConcepts::io_messages_
private

Definition at line 27 of file move_evaluator_human_for_concepts.hpp.


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