#include <gameState.h>
構成 | |
struct | State |
Public 型 | |
enum | MoveType { VALID, PAWN_DROP_FOUL, UNSAFE_KING, OTHER_INVALID } |
Public メソッド | |
GameState (const SimpleState &initial_state) | |
~GameState () | |
MoveType | isIllegal (Move m) const |
const Sennichite | pushMove (Move m, int eval=0) |
const Move | popMove () |
bool | canPopMove () const |
const NumEffectState & | state () const |
const RepetitionCounter & | counter () const |
const container::MoveStack & | moveHistory () const |
const hash::HashKeyStack & | hashHistory () const |
int | moves () const |
int | chessMoves () const |
const SimpleState & | getInitialState () const |
const boost::shared_ptr < GameState > | clone () const |
GameState のコピーを作る. 現在の局面を初期局面として扱うため, pushMoveしない限りpopMoveはできない. | |
const vector< int > & | evalStack () const |
void | generateNotLosingMoves (container::MoveVector &normal_or_win_or_draw, container::MoveVector &loss) const |
Private メソッド | |
GameState (const State &src) | |
Private 変数 | |
boost::scoped_ptr< State > | stack |
State と千日手状態などを一元管理.
gameState.h の 32 行で定義されています。
gameState.h の 42 行で定義されています。
osl::game_playing::GameState::GameState | ( | const State & | src | ) | [explicit, private] |
gameState.cc の 41 行で定義されています。
参照元 clone().
osl::game_playing::GameState::GameState | ( | const SimpleState & | initial_state | ) | [explicit] |
gameState.cc の 35 行で定義されています。
osl::game_playing::GameState::~GameState | ( | ) |
gameState.cc の 47 行で定義されています。
bool osl::game_playing::GameState::canPopMove | ( | ) | const |
int osl::game_playing::GameState::chessMoves | ( | ) | const [inline] |
gameState.h の 53 行で定義されています。
参照先 moves().
const boost::shared_ptr< osl::game_playing::GameState > osl::game_playing::GameState::clone | ( | ) | const |
GameState のコピーを作る. 現在の局面を初期局面として扱うため, pushMoveしない限りpopMoveはできない.
gameState.cc の 132 行で定義されています。
参照先 GameState(), result, と stack.
参照元 osl::game_playing::SpeculativeSearchPlayer::selectBestMoveCleanUp(), と osl::game_playing::SpeculativeAllMoves::SearchAllMoves::setUp().
const osl::RepetitionCounter & osl::game_playing::GameState::counter | ( | ) | const |
const osl::vector< int > & osl::game_playing::GameState::evalStack | ( | ) | const |
gameState.cc の 145 行で定義されています。
参照先 stack.
void osl::game_playing::GameState::generateNotLosingMoves | ( | container::MoveVector & | normal_or_win_or_draw, | |
container::MoveVector & | loss | |||
) | const |
参照元 run().
const osl::state::SimpleState & osl::game_playing::GameState::getInitialState | ( | ) | const |
const osl::hash::HashKeyStack & osl::game_playing::GameState::hashHistory | ( | ) | const |
gameState.cc の 114 行で定義されています。
参照先 stack.
参照元 osl::game_playing::SpeculativeSearchPlayer::selectBestMove().
osl::game_playing::GameState::MoveType osl::game_playing::GameState::isIllegal | ( | Move | m | ) | const |
gameState.cc の 64 行で定義されています。
参照先 osl::alt(), OTHER_INVALID, PAWN_DROP_FOUL, stack, state(), UNSAFE_KING, と VALID.
const osl::MoveStack & osl::game_playing::GameState::moveHistory | ( | ) | const |
gameState.cc の 108 行で定義されています。
参照先 stack.
参照元 osl::game_playing::SearchPlayer::saveSearchResult(), osl::game_playing::SearchPlayer::search(), osl::game_playing::SearchPlayer::secondsForThisMove(), osl::game_playing::SpeculativeSearchPlayer::selectBestMove(), osl::game_playing::HistoryToTable::setPV(), と osl::game_playing::SearchPlayer::setUpTable().
int osl::game_playing::GameState::moves | ( | ) | const |
const osl::Move osl::game_playing::GameState::popMove | ( | ) |
gameState.cc の 84 行で定義されています。
参照先 canPopMove(), result, と stack.
const osl::Sennichite osl::game_playing::GameState::pushMove | ( | Move | m, | |
int | eval = 0 | |||
) |
const osl::NumEffectState & osl::game_playing::GameState::state | ( | ) | const |
gameState.cc の 96 行で定義されています。
参照先 stack.
参照元 isIllegal(), osl::game_playing::AlphaBeta3OpenMidEndingEvalPlayer::isReasonableMove(), osl::game_playing::AlphaBeta2OpenMidEndingEvalPlayer::isReasonableMove(), osl::game_playing::AlphaBeta2ProgressEvalPlayer::isReasonableMove(), pushMove(), run(), osl::game_playing::SearchPlayer::search(), search(), osl::game_playing::AlphaBeta3OpenMidEndingEvalPlayer::searchWithSecondsForThisMove(), osl::game_playing::AlphaBeta2OpenMidEndingEvalPlayer::searchWithSecondsForThisMove(), osl::game_playing::AlphaBeta2ProgressEvalPlayer::searchWithSecondsForThisMove(), osl::game_playing::SearchPlayer::secondsForThisMove(), osl::game_playing::RandomPlayer::selectBestMove(), osl::game_playing::SearchPlayer::selectBestMoveInTime(), osl::game_playing::HistoryToTable::setPV(), と osl::game_playing::SearchPlayer::setUpTable().
boost::scoped_ptr<State> osl::game_playing::GameState::stack [private] |
gameState.h の 35 行で定義されています。
参照元 canPopMove(), clone(), counter(), evalStack(), getInitialState(), hashHistory(), isIllegal(), moveHistory(), moves(), popMove(), pushMove(), と state().