#include <brinkmateState.h>
Public 型 | |
typedef DualCheckmateSearcher | checkmate_t |
Public メソッド | |
BrinkmateState () | |
~BrinkmateState () | |
void | init (const HashEffectState &) |
void | init (checkmate_t &) |
void | push (Move, bool is_defense_check) |
void | pop () |
const checkmate::ProofDisproof | testThreatmateState (int node) |
const checkmate::ProofDisproof | testWinningState (int node) |
bool | isEffectiveDefense (Move) |
bool | isThreatmateState (int node) |
bool | isWinningState (int node) |
void | setEmergency () |
int | depth () const |
int | defenseCheckCount () const |
int | effectiveDepth () const |
const HashEffectState & | state () const |
Player | turn () const |
const Move | lastMove () const |
Private 変数 | |
HashEffectState | m_state |
checkmate_t * | checkmator |
DoUndoMoveStack< HashEffectState > | move_stack |
stack< int > | defense_check |
MoveStack | moves |
PathEncoding | path |
brinkmateState.h の 16 行で定義されています。
brinkmateState.h の 19 行で定義されています。
osl::brinkmate::BrinkmateState::BrinkmateState | ( | ) |
osl::brinkmate::BrinkmateState::~BrinkmateState | ( | ) |
brinkmateState.cc の 13 行で定義されています。
void osl::brinkmate::BrinkmateState::init | ( | const HashEffectState & | s | ) |
void osl::brinkmate::BrinkmateState::init | ( | checkmate_t & | c | ) |
void osl::brinkmate::BrinkmateState::push | ( | Move | todo, | |
bool | is_defense_check | |||
) |
void osl::brinkmate::BrinkmateState::pop | ( | ) |
const osl::checkmate::ProofDisproof osl::brinkmate::BrinkmateState::testThreatmateState | ( | int | node | ) |
brinkmateState.cc の 94 行で定義されています。
参照先 osl::checkmate::ProofDisproof::Checkmate(), checkmator, depth(), osl::checkmate::DualCheckmateSearcher< Table, HEstimator, CostEstimator >::getTable(), osl::checkmate::DualCheckmateSearcher< Table, HEstimator, CostEstimator >::isWinningState(), m_state, と osl::checkmate::CheckHashRecord::proofDisproof().
参照元 isThreatmateState(), と osl::brinkmate::Searcher::setUpAttack().
const osl::checkmate::ProofDisproof osl::brinkmate::BrinkmateState::testWinningState | ( | int | node | ) |
brinkmateState.cc の 127 行で定義されています。
参照先 osl::checkmate::ProofDisproof::Checkmate(), checkmator, depth(), osl::checkmate::DualCheckmateSearcher< Table, HEstimator, CostEstimator >::getTable(), osl::checkmate::DualCheckmateSearcher< Table, HEstimator, CostEstimator >::isWinningState(), m_state, path, osl::checkmate::CheckHashRecord::proofDisproof(), と osl::checkmate::ProofDisproof::Unknown().
参照元 osl::brinkmate::Searcher::defense(), と isWinningState().
bool osl::brinkmate::BrinkmateState::isEffectiveDefense | ( | Move | move | ) |
brinkmateState.cc の 50 行で定義されています。
参照先 osl::alt(), osl::BLACK, checkmator, osl::checkmate::DualCheckmateSearcher< Table, HEstimator, CostEstimator >::getTable(), osl::checkmate::ProofDisproof::isCheckmateSuccess(), isWinningState(), osl::KING, m_state, osl::Move::PASS(), osl::Move::player(), pop(), osl::checkmate::CheckHashRecord::proofDisproof(), osl::checkmate::OracleProverLight< Attacker >::proofWin(), osl::Move::ptype(), と push().
bool osl::brinkmate::BrinkmateState::isThreatmateState | ( | int | node | ) |
brinkmateState.cc の 156 行で定義されています。
参照先 osl::checkmate::ProofDisproof::isCheckmateSuccess(), と testThreatmateState().
bool osl::brinkmate::BrinkmateState::isWinningState | ( | int | node | ) |
void osl::brinkmate::BrinkmateState::setEmergency | ( | ) | [inline] |
int osl::brinkmate::BrinkmateState::depth | ( | ) | const [inline] |
int osl::brinkmate::BrinkmateState::defenseCheckCount | ( | ) | const [inline] |
brinkmateState.h の 45 行で定義されています。
参照先 defense_check.
参照元 osl::brinkmate::Searcher::defense(), と effectiveDepth().
int osl::brinkmate::BrinkmateState::effectiveDepth | ( | ) | const [inline] |
const HashEffectState& osl::brinkmate::BrinkmateState::state | ( | ) | const [inline] |
brinkmateState.h の 49 行で定義されています。
参照先 m_state.
参照元 osl::brinkmate::Searcher::attack(), osl::brinkmate::Searcher::defense(), osl::brinkmate::Searcher::setUpAttack(), osl::brinkmate::Searcher::setUpDefense(), osl::brinkmate::Searcher::showBestMoves(), と osl::brinkmate::Searcher::threatmateCandidate().
Player osl::brinkmate::BrinkmateState::turn | ( | ) | const [inline] |
const Move osl::brinkmate::BrinkmateState::lastMove | ( | ) | const [inline] |
HashEffectState osl::brinkmate::BrinkmateState::m_state [private] |
brinkmateState.h の 21 行で定義されています。
参照元 init(), isEffectiveDefense(), push(), state(), testThreatmateState(), testWinningState(), と turn().
brinkmateState.h の 22 行で定義されています。
参照元 init(), isEffectiveDefense(), testThreatmateState(), と testWinningState().
DoUndoMoveStack<HashEffectState> osl::brinkmate::BrinkmateState::move_stack [private] |
stack<int> osl::brinkmate::BrinkmateState::defense_check [private] |
MoveStack osl::brinkmate::BrinkmateState::moves [private] |
brinkmateState.h の 26 行で定義されています。
参照元 depth(), effectiveDepth(), init(), pop(), push(), と testWinningState().