#include <checkmateIfCapture.h>
Classes | |
| struct | CallDefense |
Static Public Member Functions | |
| static bool | effectiveAttack (NumEffectState &state, Move move, int depth) |
| move を指した後,alt(move.player())が取ると詰みかどうか. | |
| static bool | cannotCapture (NumEffectState &state, Square last_to, int depth) |
| 手番の側がSquare の駒を取っても詰みがないか. | |
| static bool | effectiveAttackCandidate0 (const NumEffectState &state, Move move) |
| depth==0でeffectiveAttackになる可能性がなければfalse | |
Definition at line 13 of file checkmateIfCapture.h.
| bool osl::checkmate::CheckmateIfCapture::cannotCapture | ( | NumEffectState & | state, |
| Square | last_to, | ||
| int | depth | ||
| ) | [static] |
手番の側がSquare の駒を取っても詰みがないか.
| depth | 0 なら ImmediateCheckmate のみ,2なら3手詰. |
Definition at line 139 of file checkmateIfCapture.cc.
References osl::alt(), osl::move_generator::capture::generate(), osl::checkmate::FixedDepthSearcher::hasEscapeByMoveOfTurn(), osl::checkmate::ProofDisproof::isCheckmateSuccess(), osl::KING, and moves.
Referenced by osl::checkmate::CheckmateIfCapture::CallDefense::operator()().
| bool osl::checkmate::CheckmateIfCapture::effectiveAttack | ( | NumEffectState & | state, |
| Move | move, | ||
| int | depth | ||
| ) | [static] |
move を指した後,alt(move.player())が取ると詰みかどうか.
| depth | 0 なら ImmediateCheckmate のみ,2なら3手詰. |
Definition at line 126 of file checkmateIfCapture.cc.
References depth, and osl::Move::player().
Referenced by osl::move_probability::CheckmateIfCapture::hasSafeCapture(), and osl::rating::CheckmateIfCapture::match().
| bool osl::checkmate::CheckmateIfCapture::effectiveAttackCandidate0 | ( | const NumEffectState & | state, |
| Move | move | ||
| ) | [static] |
depth==0でeffectiveAttackになる可能性がなければfalse
Definition at line 27 of file checkmateIfCapture.cc.
References osl::alt(), osl::Board_Table, osl::Piece::canMoveOn(), osl::captured(), osl::Move::capturePtype(), osl::Move::from(), osl::move_generator::addeffect8::hasEffect(), osl::Move::isCapture(), osl::Move::isDrop(), osl::Piece::isEdge(), osl::Piece::isEmpty(), osl::Piece::isOnBoardByOwner(), osl::KNIGHT, osl::BoardTable::nextSquare(), osl::Piece::ptypeO(), osl::Piece::square(), osl::Move::to(), osl::unpromote(), osl::UUL, and osl::UUR.
Referenced by osl::rating::CheckmateIfCapture::match().
1.7.6.1