#include <see.h>
Static Public メソッド | |
static int | see (const NumEffectState &state, Move move, const PieceMask &my_pin=PieceMask(), const PieceMask &op_pin=PieceMask(), const PtypeEvalTable *table=0) |
template<Player P> | |
static int | seeInternal (const NumEffectState &state, Move move, const PieceMask &my_pin, const PieceMask &op_pin, const PtypeEvalTable &table) |
template<Player P> | |
static void | findEffectPieces (const NumEffectState &state, Square effect_to, PtypeOSquareVector &my_pieces, PtypeOSquareVector &op_pieces) |
template<osl::Player P> | |
static void | findEffectPiecesAfterMove (const NumEffectState &state, Move move, PtypeOSquareVector &my_pieces, PtypeOSquareVector &op_pieces) |
static void | findAdditionalPieces (const NumEffectState &state, Player attack, Square target, Square direct_attack_from, PtypeOSquareVector &out) |
template<Player P> | |
static int | computeValue (const NumEffectState &state, Move move, PtypeOSquareVector &my_pieces, PtypeOSquareVector &op_pieces, const PieceMask &my_pin, const PieceMask &op_pin, const PtypeEvalTable &table) |
PtypeOSquareVector をもとに取り返し値を計算する. |
int osl::eval::See::computeValue | ( | const NumEffectState & | state, | |
Move | move, | |||
PtypeOSquareVector & | my_pieces, | |||
PtypeOSquareVector & | op_pieces, | |||
const PieceMask & | my_pin, | |||
const PieceMask & | op_pin, | |||
const PtypeEvalTable & | table | |||
) | [static] |
PtypeOSquareVector をもとに取り返し値を計算する.
P | alt(P) からの取り返し | |
target | ここに関する取り返し | |
ptypeo | target にあると想定される駒 |
参照先 osl::alt(), osl::Square::canPromote(), osl::canPromote(), osl::eval::PtypeEvalTable::captureValue(), osl::Move::from(), osl::KING, osl::eval::max(), osl::newPtypeO(), osl::Piece::number(), osl::Piece::owner(), osl::SimpleState::pieceAt(), osl::NumEffectState::pinAttacker(), osl::NumEffectState::pinnedCanMoveTo(), osl::FixedCapacityVector< T, Capacity >::pop_back(), osl::promote(), osl::eval::PtypeEvalTable::promoteValue(), osl::Move::ptypeO(), osl::FixedCapacityVector< T, Capacity >::size(), osl::Piece::square(), osl::PieceMask::test(), と osl::Move::to().
void osl::eval::See::findAdditionalPieces | ( | const NumEffectState & | state, | |
Player | attack, | |||
Square | target, | |||
Square | direct_attack_from, | |||
PtypeOSquareVector & | out | |||
) | [static] |
参照先 osl::Board_Table, osl::PtypeTable::getEffect(), osl::BoardTable::getShortOffsetNotKnight(), osl::EffectContent::hasEffect(), osl::Piece::isPiece(), osl::SimpleState::nextPiece(), osl::Piece::owner(), osl::Ptype_Table, osl::Piece::ptypeO(), osl::FixedCapacityVector< T, Capacity >::push_back(), osl::Piece::square(), と osl::Offset::zero().
参照元 findEffectPieces(), findEffectPiecesAfterMove(), と eval::See::FindEffectMore::store().
void osl::eval::See::findEffectPieces | ( | const NumEffectState & | state, | |
Square | effect_to, | |||
PtypeOSquareVector & | my_pieces, | |||
PtypeOSquareVector & | op_pieces | |||
) | [static] |
参照先 osl::alt(), osl::FixedCapacityVector< T, Capacity >::begin(), osl::FixedCapacityVector< T, Capacity >::clear(), osl::NumEffectState::countEffect(), osl::FixedCapacityVector< T, Capacity >::empty(), osl::FixedCapacityVector< T, Capacity >::end(), findAdditionalPieces(), osl::NumEffectState::forEachEffect(), osl::FixedCapacityVector< T, Capacity >::push_back(), osl::FixedCapacityVector< T, Capacity >::size(), と osl::PtypeOSquareVector::sort().
void osl::eval::See::findEffectPiecesAfterMove | ( | const NumEffectState & | state, | |
Move | move, | |||
PtypeOSquareVector & | my_pieces, | |||
PtypeOSquareVector & | op_pieces | |||
) | [static] |
参照先 osl::alt(), osl::FixedCapacityVector< T, Capacity >::begin(), osl::FixedCapacityVector< T, Capacity >::clear(), osl::NumEffectState::countEffect(), osl::FixedCapacityVector< T, Capacity >::empty(), osl::FixedCapacityVector< T, Capacity >::end(), findAdditionalPieces(), osl::NumEffectState::forEachEffect(), osl::Move::from(), osl::Piece::number(), osl::SimpleState::pieceOnBoard(), osl::Move::player(), osl::FixedCapacityVector< T, Capacity >::push_back(), osl::PieceMask::set(), osl::FixedCapacityVector< T, Capacity >::size(), osl::PtypeOSquareVector::sort(), osl::Piece::square(), と osl::Move::to().
int osl::eval::See::see | ( | const NumEffectState & | state, | |
Move | move, | |||
const PieceMask & | my_pin = PieceMask() , |
|||
const PieceMask & | op_pin = PieceMask() , |
|||
const PtypeEvalTable * | table = 0 | |||
) | [static] |
int osl::eval::See::seeInternal | ( | const NumEffectState & | state, | |
Move | move, | |||
const PieceMask & | my_pin, | |||
const PieceMask & | op_pin, | |||
const PtypeEvalTable & | table | |||
) | [static] |