#include <oracleProverLight.h>
Public 型 | |
typedef NtesukiTable | table_t |
typedef NumEffectState | state_t |
typedef NtesukiMoveGenerator | gen_t |
Public メソッド | |
OracleProverLight (state_t &s, gen_t *g, PathEncoding p, table_t &t, NtesukiRecord::ISScheme isscheme=NtesukiRecord::no_is) | |
template<Player P> | |
bool | startFromAttack (NtesukiRecord *record, const NtesukiRecord *record_orig, const unsigned int pass_left) |
template<Player P> | |
bool | startFromDefense (NtesukiRecord *record, const NtesukiRecord *record_orig, const unsigned int pass_left) |
template<Player P> | |
bool | attack (const NtesukiRecord *record_orig, const unsigned int pass_left) |
template<Player P> | |
bool | defense (const NtesukiRecord *record_orig, const unsigned int pass_left) |
template<Player P> | |
bool | startFromAttack (NtesukiRecord *record, const NtesukiRecord *record_orig, const unsigned int pass_left) |
template<Player P> | |
bool | startFromDefense (NtesukiRecord *record, const NtesukiRecord *record_orig, const unsigned int pass_left) |
template<osl::Player Attacker> | |
const osl::checkmate::ProofDisproof | attack (ProofOracleAttack< Attacker > oracle) |
template<osl::Player Attacker> | |
const osl::checkmate::ProofDisproof | defense (ProofOracleDefense< Attacker > oracle) |
Private メソッド | |
template<Player P> | |
bool | attack (const NtesukiRecord *oracle, const unsigned int pass_left) |
template<Player P> | |
bool | defense (const NtesukiRecord *oracle, const unsigned int pass_left) |
Private 変数 | |
state_t & | state |
gen_t * | mg |
PathEncoding | path |
table_t & | table |
NtesukiRecord::ISScheme | isscheme |
int | fixed_search_depth |
ntesuki/oracleProverLight.h の 16 行で定義されています。
ntesuki/oracleProverLight.h の 19 行で定義されています。
typedef NumEffectState osl::ntesuki::OracleProverLight::state_t |
ntesuki/oracleProverLight.h の 20 行で定義されています。
ntesuki/oracleProverLight.h の 21 行で定義されています。
osl::ntesuki::OracleProverLight::OracleProverLight | ( | state_t & | s, | |
gen_t * | g, | |||
PathEncoding | p, | |||
table_t & | t, | |||
NtesukiRecord::ISScheme | isscheme = NtesukiRecord::no_is | |||
) | [inline, explicit] |
ntesuki/oracleProverLight.h の 34 行で定義されています。
template bool osl::ntesuki::OracleProverLight::startFromAttack< WHITE > | ( | NtesukiRecord * | record, | |
const NtesukiRecord * | record_orig, | |||
const unsigned int | pass_left | |||
) | [inline] |
template bool osl::ntesuki::OracleProverLight::startFromDefense< WHITE > | ( | NtesukiRecord * | record, | |
const NtesukiRecord * | record_orig, | |||
const unsigned int | pass_left | |||
) | [inline] |
bool osl::ntesuki::OracleProverLight::attack | ( | const NtesukiRecord * | oracle, | |
const unsigned int | pass_left | |||
) | [inline, private] |
bool osl::ntesuki::OracleProverLight::defense | ( | const NtesukiRecord * | oracle, | |
const unsigned int | pass_left | |||
) | [inline, private] |
bool osl::ntesuki::OracleProverLight::attack | ( | const NtesukiRecord * | record_orig, | |
const unsigned int | pass_left | |||
) | [inline] |
oracleProverLight.tcc の 109 行で定義されています。
参照先 CATCH_DFPN, osl::checkmate::OracleProverLight< Attacker >::fixed_searcher, osl::ntesuki::NtesukiRecord::getBestMove(), osl::ntesuki::NtesukiMove::getMove(), osl::ntesuki::NtesukiRecord::getValue(), osl::checkmate::FixedDepthSearcher::hasCheckmateMove(), osl::ntesuki::NtesukiMove::isCheck(), osl::checkmate::ProofDisproof::isCheckmateSuccess(), osl::ntesuki::NtesukiMove::isImmediateCheckmate(), osl::isValid(), ntesuki_assert, osl::checkmate::OracleProverLight< Attacker >::state, と TRY_DFPN.
bool osl::ntesuki::OracleProverLight::defense | ( | const NtesukiRecord * | record_orig, | |
const unsigned int | pass_left | |||
) | [inline] |
oracleProverLight.tcc の 192 行で定義されています。
参照先 CATCH_DFPN, osl::ntesuki::NtesukiMove::getMove(), osl::ntesuki::NtesukiRecord::getValue(), osl::ntesuki::NtesukiMove::isCheck(), osl::checkmate::ProofDisproof::isCheckmateSuccess(), osl::ntesuki::NtesukiMove::isNormal(), osl::ntesuki::NtesukiMove::isPass(), moves, ntesuki_assert, osl::checkmate::OracleProverLight< Attacker >::state, と TRY_DFPN.
bool osl::ntesuki::OracleProverLight::startFromAttack | ( | NtesukiRecord * | record, | |
const NtesukiRecord * | record_orig, | |||
const unsigned int | pass_left | |||
) | [inline] |
oracleProverLight.tcc の 265 行で定義されています。
参照先 CATCH_DFPN, osl::checkmate::ProofDisproof::Checkmate(), osl::ntesuki::NtesukiRecord::getBestMove(), osl::ntesuki::NtesukiRecord::getPDPieces(), osl::ntesuki::NtesukiRecord::getPieceStand(), osl::ntesuki::NtesukiRecord::getValue(), osl::checkmate::ProofDisproof::isCheckmateSuccess(), osl::ntesuki::NtesukiMove::isImmediateCheckmate(), osl::PieceStand::isSuperiorOrEqualTo(), osl::ntesuki::NtesukiMove::isValid(), ntesuki_assert, osl::ntesuki::NtesukiRecord::setResult(), と TRY_DFPN.
bool osl::ntesuki::OracleProverLight::startFromDefense | ( | NtesukiRecord * | record, | |
const NtesukiRecord * | record_orig, | |||
const unsigned int | pass_left | |||
) | [inline] |
oracleProverLight.tcc の 302 行で定義されています。
参照先 CATCH_DFPN, osl::checkmate::ProofDisproof::Checkmate(), osl::ntesuki::NtesukiRecord::getBestMove(), osl::ntesuki::NtesukiRecord::getPDPieces(), osl::ntesuki::NtesukiRecord::getPieceStand(), osl::ntesuki::NtesukiRecord::getValue(), osl::checkmate::ProofDisproof::isCheckmateSuccess(), osl::PieceStand::isSuperiorOrEqualTo(), ntesuki_assert, osl::ntesuki::NtesukiRecord::setResult(), と TRY_DFPN.
const osl::checkmate::ProofDisproof osl::ntesuki::OracleProverLight::attack | ( | ProofOracleAttack< Attacker > | oracle | ) | [inline] |
checkmate/oracleProverLight.cc の 91 行で定義されています。
参照先 osl::checkmate::OracleAdjust::attack(), check_assert, osl::checkmate::ProofDisproof::Checkmate(), osl::checkmate::ProofOracleAttack< Attacker >::expandOracle(), osl::checkmate::CheckMove::flags, osl::checkmate::CheckHashRecord::getBestMove(), osl::checkmate::ProofOracleAttack< Attacker >::guide, osl::checkmate::MoveFlags::ImmediateCheckmate, osl::checkmate::ProofDisproof::isPawnDropFoul(), osl::checkmate::MoveFlags::isSet(), osl::checkmate::ProofOracleDefense< Attacker >::isValid(), osl::checkmate::ProofOracleAttack< Attacker >::isValid(), osl::checkmate::ProofOracleAttack< Attacker >::oracle(), osl::Move::player(), osl::checkmate::OracleProverLightDefense< Attacker >::result, と osl::checkmate::ProofDisproof::Unknown().
const osl::checkmate::ProofDisproof osl::ntesuki::OracleProverLight::defense | ( | ProofOracleDefense< Attacker > | oracle | ) | [inline] |
checkmate/oracleProverLight.cc の 130 行で定義されています。
参照先 check_assert, osl::checkmate::ProofDisproof::Checkmate(), osl::checkmate::ProofOracleDefense< Attacker >::expandOracle(), osl::checkmate::ProofDisproof::isCheckmateSuccess(), osl::checkmate::ProofOracleAttack< Attacker >::isValid(), osl::checkmate::ProofOracleDefense< Attacker >::isValid(), moves, osl::checkmate::ProofDisproof::NoCheckmate(), osl::checkmate::ProofDisproof::NoEscape(), osl::checkmate::OracleProverLightAttack< Attacker >::result, と osl::checkmate::ProofDisproof::Unknown().
state_t& osl::ntesuki::OracleProverLight::state [private] |
ntesuki/oracleProverLight.h の 23 行で定義されています。
gen_t* osl::ntesuki::OracleProverLight::mg [private] |
ntesuki/oracleProverLight.h の 24 行で定義されています。
ntesuki/oracleProverLight.h の 25 行で定義されています。
table_t& osl::ntesuki::OracleProverLight::table [private] |
ntesuki/oracleProverLight.h の 26 行で定義されています。
ntesuki/oracleProverLight.h の 27 行で定義されています。
int osl::ntesuki::OracleProverLight::fixed_search_depth [private] |
ntesuki/oracleProverLight.h の 28 行で定義されています。