

Public Member Functions | |
| const PieceStand | nextWhiteStand (Player P, Move move) const |
| void | clear () |
| void | allocate (int n) |
| void | setLoopDetection () |
| const PathEncoding | newPath (int c) const |
| bool | isLoop (int c) const |
| void | setCheckmateAttack (Player attack, int best_i) |
| void | setNoCheckmateDefense (Player attack, int best_i) |
| void | setCheckmateDefense (Player attack, const NumEffectState &state) |
| void | setNoCheckmateAttack (Player attack, const NumEffectState &state) |
| void | setCheckmateChildInDefense (size_t i) |
| void | setNoCheckmateChildInAttack (size_t i) |
Public Attributes | |
| DfpnMoveVector | moves |
| FixedCapacityVector < DfpnRecord, DfpnMaxUniqMoves > | children |
| FixedCapacityVector< const DfpnPathRecord *, DfpnMaxUniqMoves > | children_path |
| CArray< HashKey, DfpnMaxUniqMoves > | hashes |
| FixedCapacityVector< int8_t, DfpnMaxUniqMoves > | proof_cost |
| size_t | visit_time |
| void osl::checkmate::Dfpn::Node::allocate | ( | int | n | ) | [inline] |
Definition at line 387 of file dfpn.cc.
References children, children_path, and proof_cost.
Referenced by osl::checkmate::Dfpn::defense(), osl::checkmate::Dfpn::proofOracleAttack(), and osl::checkmate::Dfpn::proofOracleDefense().
| void osl::checkmate::Dfpn::Node::clear | ( | ) | [inline] |
Definition at line 380 of file dfpn.cc.
References children, children_path, moves, and proof_cost.
Referenced by osl::checkmate::Dfpn::hasCheckmateMove(), osl::checkmate::Dfpn::hasEscapeMove(), and osl::checkmate::Dfpn::tryProofMain().
| bool osl::checkmate::Dfpn::Node::isLoop | ( | int | c | ) | const [inline] |
Definition at line 408 of file dfpn.cc.
References children, children_path, osl::find(), and newPath().
Referenced by osl::checkmate::Dfpn::blockingSimulation(), osl::checkmate::Dfpn::defense(), osl::checkmate::Dfpn::proofOracleAttack(), and osl::checkmate::Dfpn::proofOracleDefense().
| const PathEncoding osl::checkmate::Dfpn::Node::newPath | ( | int | c | ) | const [inline] |
Definition at line 402 of file dfpn.cc.
References moves, osl::checkmate::Dfpn::NodeBase::path, and osl::PathEncoding::pushMove().
Referenced by isLoop().
| const PieceStand osl::checkmate::Dfpn::Node::nextWhiteStand | ( | Player | P, |
| Move | move | ||
| ) | const [inline] |
Definition at line 375 of file dfpn.cc.
References osl::PieceStand::nextStand(), osl::Move::player(), osl::WHITE, and osl::checkmate::Dfpn::NodeBase::white_stand.
Referenced by osl::checkmate::Dfpn::defense(), osl::checkmate::Dfpn::grandParentSimulation(), osl::checkmate::Dfpn::proofOracleAttack(), and osl::checkmate::Dfpn::proofOracleDefense().
| void osl::checkmate::Dfpn::Node::setCheckmateAttack | ( | Player | attack, |
| int | best_i | ||
| ) | [inline] |
Definition at line 418 of file dfpn.cc.
References osl::checkmate::Dfpn::attack(), osl::checkmate::DfpnRecordBase::best_move, children, osl::checkmate::ProofDisproof::isCheckmateSuccess(), moves, osl::checkmate::DfpnRecordBase::proof_disproof, osl::checkmate::DfpnRecord::proofPieces(), osl::checkmate::Dfpn::NodeBase::record, osl::checkmate::DfpnRecord::setProofPieces(), and osl::checkmate::DfpnRecord::stands.
Referenced by osl::checkmate::Dfpn::proofOracleAttack().
| void osl::checkmate::Dfpn::Node::setCheckmateChildInDefense | ( | size_t | i | ) | [inline] |
Definition at line 463 of file dfpn.cc.
References children, osl::PieceStand::max(), osl::eval::min(), osl::checkmate::DfpnRecordBase::min_pdp, osl::checkmate::DfpnRecordBase::proof_pieces_candidate, osl::checkmate::Dfpn::NodeBase::record, and osl::checkmate::DfpnRecordBase::solved.
Referenced by osl::checkmate::Dfpn::blockingSimulation(), osl::checkmate::Dfpn::defense(), and osl::checkmate::Dfpn::proofOracleDefense().
| void osl::checkmate::Dfpn::Node::setCheckmateDefense | ( | Player | attack, |
| const NumEffectState & | state | ||
| ) | [inline] |
Definition at line 441 of file dfpn.cc.
References osl::checkmate::ProofPiecesUtil::addMonopolizedPieces(), osl::alt(), osl::checkmate::ProofDisproof::Checkmate(), osl::checkmate::ProofDisproof::isCheckmateSuccess(), osl::effect_util::UnblockableCheck::isMember(), moves, osl::checkmate::DfpnRecordBase::proof_disproof, osl::checkmate::DfpnRecordBase::proof_pieces_candidate, osl::checkmate::Dfpn::NodeBase::record, result, osl::checkmate::DfpnRecord::setProofPieces(), and osl::checkmate::DfpnRecord::stands.
Referenced by osl::checkmate::Dfpn::defense(), and osl::checkmate::Dfpn::proofOracleDefense().
| void osl::checkmate::Dfpn::Node::setLoopDetection | ( | ) | [inline] |
Definition at line 395 of file dfpn.cc.
References osl::checkmate::ProofDisproof::isFinal(), osl::checkmate::ProofDisproof::isLoopDetection(), osl::checkmate::Dfpn::NodeBase::path, osl::checkmate::Dfpn::NodeBase::path_record, osl::checkmate::DfpnRecordBase::proof_disproof, osl::checkmate::Dfpn::NodeBase::record, and osl::checkmate::DfpnPathRecord::twin_list.
Referenced by osl::checkmate::Dfpn::defense(), osl::checkmate::Dfpn::proofOracleAttack(), and osl::checkmate::Dfpn::proofOracleDefense().
| void osl::checkmate::Dfpn::Node::setNoCheckmateAttack | ( | Player | attack, |
| const NumEffectState & | state | ||
| ) | [inline] |
Definition at line 453 of file dfpn.cc.
References osl::checkmate::ProofPiecesUtil::addMonopolizedPieces(), osl::alt(), osl::checkmate::ProofDisproof::isCheckmateFail(), osl::checkmate::ProofDisproof::isLoopDetection(), moves, osl::checkmate::DfpnRecordBase::proof_disproof, osl::checkmate::DfpnRecordBase::proof_pieces_candidate, osl::checkmate::Dfpn::NodeBase::record, result, osl::checkmate::DfpnRecord::setDisproofPieces(), and osl::checkmate::DfpnRecord::stands.
| void osl::checkmate::Dfpn::Node::setNoCheckmateChildInAttack | ( | size_t | i | ) | [inline] |
Definition at line 473 of file dfpn.cc.
References children, osl::PieceStand::max(), osl::eval::min(), osl::checkmate::DfpnRecordBase::min_pdp, osl::checkmate::DfpnRecordBase::proof_pieces_candidate, osl::checkmate::Dfpn::NodeBase::record, and osl::checkmate::DfpnRecordBase::solved.
Referenced by osl::checkmate::Dfpn::Tree::setNoCheckmateChildInAttack().
| void osl::checkmate::Dfpn::Node::setNoCheckmateDefense | ( | Player | attack, |
| int | best_i | ||
| ) | [inline] |
Definition at line 429 of file dfpn.cc.
References osl::alt(), osl::checkmate::DfpnRecordBase::best_move, children, osl::checkmate::Dfpn::defense(), osl::checkmate::DfpnRecord::disproofPieces(), osl::checkmate::ProofDisproof::isCheckmateFail(), osl::checkmate::ProofDisproof::isLoopDetection(), moves, osl::checkmate::DfpnRecordBase::proof_disproof, osl::checkmate::Dfpn::NodeBase::record, osl::checkmate::DfpnRecord::setDisproofPieces(), and osl::checkmate::DfpnRecord::stands.
Referenced by osl::checkmate::Dfpn::Tree::setNoCheckmateDefense().
| FixedCapacityVector<DfpnRecord,DfpnMaxUniqMoves> osl::checkmate::Dfpn::Node::children |
Definition at line 369 of file dfpn.cc.
Referenced by allocate(), osl::checkmate::Dfpn::blockingSimulation(), clear(), osl::checkmate::Dfpn::defense(), osl::checkmate::Dfpn::Tree::dump(), osl::checkmate::Dfpn::grandParentSimulation(), isLoop(), osl::checkmate::Dfpn::proofOracleAttack(), osl::checkmate::Dfpn::proofOracleDefense(), setCheckmateAttack(), setCheckmateChildInDefense(), setNoCheckmateChildInAttack(), and setNoCheckmateDefense().
| FixedCapacityVector<const DfpnPathRecord*,DfpnMaxUniqMoves> osl::checkmate::Dfpn::Node::children_path |
Definition at line 370 of file dfpn.cc.
Referenced by allocate(), osl::checkmate::Dfpn::blockingSimulation(), clear(), osl::checkmate::Dfpn::defense(), osl::checkmate::Dfpn::Tree::dump(), osl::checkmate::Dfpn::grandParentSimulation(), isLoop(), osl::checkmate::Dfpn::proofOracleAttack(), and osl::checkmate::Dfpn::proofOracleDefense().
| CArray<HashKey,DfpnMaxUniqMoves> osl::checkmate::Dfpn::Node::hashes |
Definition at line 371 of file dfpn.cc.
Referenced by osl::checkmate::Dfpn::blockingSimulation(), osl::checkmate::Dfpn::defense(), osl::checkmate::Dfpn::grandParentSimulation(), and osl::checkmate::Dfpn::proofOracleDefense().
Definition at line 368 of file dfpn.cc.
Referenced by osl::checkmate::Dfpn::blockingSimulation(), clear(), osl::checkmate::Dfpn::defense(), osl::checkmate::Dfpn::Tree::dump(), osl::checkmate::Dfpn::grandParentSimulation(), newPath(), osl::checkmate::Dfpn::proofOracleAttack(), osl::checkmate::Dfpn::proofOracleDefense(), setCheckmateAttack(), setCheckmateDefense(), setNoCheckmateAttack(), and setNoCheckmateDefense().
| FixedCapacityVector<int8_t,DfpnMaxUniqMoves> osl::checkmate::Dfpn::Node::proof_cost |
Definition at line 372 of file dfpn.cc.
Referenced by allocate(), clear(), and osl::checkmate::Dfpn::Tree::dump().
Definition at line 373 of file dfpn.cc.
Referenced by osl::checkmate::Dfpn::attack(), osl::checkmate::Dfpn::defense(), and osl::checkmate::Dfpn::Tree::dump().
1.7.6.1