#include <position.h>
Public 型 | |
enum | { PIECE_STAND = 0, MIN = 0, SIZE = 0x100 } |
Public メソッド | |
unsigned int | uintValue () const |
Position () | |
Position (int x, int y) | |
int | x () const |
ȤƤXɸ֤. | |
int | y () const |
ȤƤYɸ֤. | |
unsigned int | index () const |
int | indexForOffset32 () const |
bool | isPieceStand () const |
bool | isOnBoardSlow () const |
bool | isOnBoard () const |
̾ɽɤȽꡥ 1<=x() && x()<=9 && 1<=y() && y()<=9 Positionɽ˰¸롥 | |
bool | isValid () const |
const Position | positionForBlackSlow (Player player) const |
const Position | positionForBlack (Int2Type< BLACK >) const |
const Position | positionForBlack (Int2Type< WHITE >) const |
template<Player P> | |
const Position | positionForBlack () const |
ξ̤ä֤. | |
const Position | positionForBlack (Player player) const |
const Position | rotate180 () const |
const Position | rotate180Safe () const |
const Position | flipHorizontal () const |
bool | isOnBoardRegion () const |
posONBOARD_MINONBOARD_MAXδ֤ˤ | |
Position & | operator++ () |
template<Player P> | |
bool | canPromote () const |
bool | canPromote (Player player) const |
Position & | operator+= (Offset offset) |
Position & | operator-= (Offset offset) |
const Position | operator+ (Offset offset) const |
const Position | operator- (Offset offset) const |
const Offset | operator- (Position other) const |
Static Public メソッド | |
static const Position | makeDirect (int value) |
static const Position | STAND () |
static const Position | nth (unsigned int i) |
static unsigned int | indexMax () |
static const Position | onBoardMax () |
static const Position | onBoardMin () |
static int | reverseX (int x) |
static int | reverseY (int y) |
Private メソッド | |
Position (int p) | |
bool | canPromote (Int2Type< BLACK >) const |
bool | canPromote (Int2Type< WHITE >) const |
Private 変数 | |
unsigned int | position |
position.h の 39 行で定義されています。
anonymous enum |
osl::Position::Position | ( | int | p | ) | [inline, explicit, private] |
position.h の 42 行で定義されています。
osl::Position::Position | ( | ) | [inline] |
position.h の 53 行で定義されています。
参照元 flipHorizontal(), makeDirect(), nth(), onBoardMax(), onBoardMin(), positionForBlack(), positionForBlackSlow(), と STAND().
osl::Position::Position | ( | int | x, | |
int | y | |||
) | [inline] |
static const Position osl::Position::makeDirect | ( | int | value | ) | [inline, static] |
unsigned int osl::Position::uintValue | ( | ) | const [inline] |
position.h の 47 行で定義されています。
参照先 position.
参照元 osl::Move::init(), osl::container::Position8::isMember(), osl::stl::hash< Position >::operator()(), osl::operator==(), osl::rating::PatternGroup::PatternGroup(), positionForBlack(), osl::container::Position8::push_back(), osl::Move::setFrom(), と osl::Piece::setPosition().
static const Position osl::Position::STAND | ( | ) | [inline, static] |
position.h の 56 行で定義されています。
参照先 PIECE_STAND, と Position().
参照元 osl::hash::HashKey::doCaptureMove(), osl::hash::HashKey::doDropMove(), osl::apply_move::ApplyPass::doUndoPass(), osl::Piece::EDGE(), osl::Piece::EMPTY(), osl::search::QuiescenceGenerator< P >::escapeKingInTakeBack(), osl::eval::endgame::AttackDefense::expect(), osl::rating::PatternBlock::find(), osl::effect_util::Neighboring8Direct::Table::findNearest(), osl::eval::ppair::PiecePairIndex::forEachRelation(), osl::record::opening::OMove::getFrom(), osl::category::ImmediateEscape::getIndexIf(), osl::record::OPiece::getPosition(), osl::record::opening::OMove::getTo(), osl::hash::HashGenTable::HashGenTable(), osl::category::SlowApproach::isInCategory(), osl::move_classifier::KingOpenMove< P >::isMember(), osl::PositionCompressor::melt(), osl::Move::Move(), osl::record::opiece_sort::operator()(), osl::record::usi::parse(), osl::apply_move::ApplyDoUndoDropMove< P, SimpleState >::prologue(), osl::apply_move::ApplyDoUndoDropMove< P, PawnMaskState >::prologue(), osl::progress::PtypeProgress::PtypeProgress(), osl::progress::PtypeProgressTable::PtypeProgressTable(), osl::record::csa::strToMove(), osl::record::csa::strToPos(), osl::eval::endgame::DefenseKing::Table::Table(), osl::Centering5x3::Table::Table(), osl::Centering3x3::Table::Table(), osl::eval::endgame::AttackKing::Table::Table(), osl::progress::PtypeProgress::update(), と osl::eval::endgame::AttackDefense::update().
static const Position osl::Position::nth | ( | unsigned int | i | ) | [inline, static] |
position.h の 61 行で定義されています。
参照先 MIN, と Position().
参照元 osl::hash::HashGenTable::HashGenTable(), と osl::brinkmate::ThreatmatePool::show().
int osl::Position::x | ( | ) | const [inline] |
ȤƤXɸ֤.
Positionɽ˰¸ʤ
position.h の 65 行で定義されています。
参照先 position.
参照元 osl::Centering5x3::adjustCenterNaive(), osl::Centering3x3::adjustCenterNaive(), osl::category::SlowApproach::approaching(), osl::search::QuiescenceGenerator< P >::attackGoldWithPawn(), osl::search::QuiescenceGenerator< P >::attackKing8(), osl::search::QuiescenceGenerator< P >::attackKnightWithPawn(), osl::search::QuiescenceGenerator< P >::attackSilverWithPawn(), osl::rating::BadLance::basicMatch(), osl::search::QuiescenceGenerator< P >::breakThreatmate(), osl::eval::ProgressEvalGeneral< OpeningEval >::calculateEnterKingBonus(), osl::eval::ProgressEvalGeneral< OpeningEval >::calculateRookRankBonus(), osl::container::BitXmask::clear(), flipHorizontal(), osl::category::ImmediateAntiPawnPromotion::generate(), osl::category::PawnBeforePawn::generate(), osl::category::BreakThreatmate::generateBreak(), osl::category::BreakThreatmate::generateBreakDrop(), osl::move_generator::Escape< P, State, Action >::generateDrop(), osl::move_generator::AddEffectWithEffect< State, Action >::generateDropSub(), osl::ntesuki::NtesukiRecord::generateMoves(), osl::move_generator::PieceOnBoard< P >::generateMovesPawn(), osl::move_generator::generateShortDrop(), osl::effect_util::Neighboring8Effect::hasEffectNaive(), osl::effect_util::Neighboring8Direct::hasEffectNaive(), osl::effect_util::Neighboring25Direct::hasEffectNaive(), osl::rating::BigramAttack::indexKing(), osl::rating::BigramAttack::indexOfMove(), osl::state::SimpleState::isAlmostValidMove(), osl::effect::NumSimpleEffect< State >::isAlmostValidMove(), osl::category::KingNeighborBigramTable::isIn5x5(), osl::category::SilverNextToKing::isInCategory(), osl::category::PawnAttackBase::isInCategory(), osl::category::SideAttack::isInCategory(), osl::category::SideAttackDrop::isInCategory(), osl::category::DropPieceOnEscapeRoute::isInCategory(), osl::category::ForcePawnAdvanceOnRook::isInCategory(), osl::category::RookAddLanceSupport::isInCategory(), osl::category::RookAddPawnSupport::isInCategory(), osl::category::LanceSacrifice::isInCategory(), osl::category::LanceAttackKing::isInCategory(), osl::category::KnightAttackYagura::isInCategory(), osl::category::KnightToAttack::isInCategory(), osl::category::LanceAttackMinoGold::isInCategory(), osl::category::LureGoldDiagonally::isInCategory(), osl::category::OpenBishop::isInCategory(), osl::search::FirstMoveThreatmate::isMember(), isOnBoard(), isOnBoardSlow(), main(), osl::rating::RelativeKingX::makeOldX(), osl::progress::Effect5x3d::makeProgress(), osl::progress::Effect5x3::makeProgressArea(), osl::progress::Effect5x3::makeProgressAreaBonus(), osl::rating::PositionX::makeX(), osl::rating::RelativeKingX::makeX(), osl::rating::PawnAttack::match(), osl::rating::RookDefense::match(), osl::category::BigramHelper::moveToIndex(), osl::Offset32::Offset32(), osl::record::opening::OMove::OMove(), osl::record::opiece_sort::operator()(), osl::operator<<(), osl::record::OPiece::OPiece(), positionForBlackSlow(), osl::effect::BoardBitMask::positionToOffset(), osl::threatmate::RichPredictor::predict(), osl::record::KanjiMove::selectCandidates(), osl::progress::Effect5x3Table::setupAttackEffect(), osl::progress::Effect5x3Table::setupDefenseEffect(), osl::record::psn::show(), osl::record::csa::show(), osl::checkmate::ImmediateCheckmate::slowHasCheckmateMoveDirPiece(), osl::search::QuiescenceSearch2< EvalT >::staticValue(), osl::search::QuiescenceSearch< EvalT >::staticValue(), osl::brinkmate::Searcher::threatmateCandidate(), と osl::category::BigramHelper::toIndex().
int osl::Position::y | ( | ) | const [inline] |
ȤƤYɸ֤.
Positionɽ˰¸ʤ
position.h の 69 行で定義されています。
参照先 position.
参照元 osl::Centering5x3::adjustCenterNaive(), osl::Centering3x3::adjustCenterNaive(), osl::category::SlowApproach::approaching(), osl::search::QuiescenceGenerator< P >::attackKing8(), osl::eval::ProgressEvalGeneral< OpeningEval >::calculateEnterKingBonus(), osl::eval::ProgressEvalGeneral< OpeningEval >::calculateGoldPenalty(), osl::eval::ProgressEvalGeneral< OpeningEval >::calculateMiddleKingBonus(), osl::eval::ProgressEvalGeneral< OpeningEval >::calculateSilverPenalty(), osl::PtypePlayerTraits< T, P >::canDropTo(), osl::PtypeTable::canDropTo(), canPromote(), flipHorizontal(), osl::ntesuki::NtesukiRecord::generateMoves(), osl::effect_util::Neighboring8Effect::hasEffectNaive(), osl::effect_util::Neighboring8Direct::hasEffectNaive(), osl::effect_util::Neighboring25Direct::hasEffectNaive(), osl::rating::BigramAttack::indexKing(), osl::rating::BigramAttack::indexOfMove(), osl::category::KingNeighborBigramTable::isIn5x5(), osl::category::SilverNextToKing::isInCategory(), osl::category::PawnAttackBase::isInCategory(), osl::category::AnchorPawn::isInCategory(), osl::category::SideAttack::isInCategory(), osl::category::SideAttackDrop::isInCategory(), osl::category::LureKingToBottom::isInCategory(), osl::category::DropPieceOnEscapeRoute::isInCategory(), osl::category::RookAddLanceSupport::isInCategory(), osl::category::RookAddPawnSupport::isInCategory(), osl::category::PrepareRookPromotion::isInCategory(), osl::category::LanceSacrifice::isInCategory(), osl::category::LanceAttackKing::isInCategory(), osl::category::KnightAttackYagura::isInCategory(), osl::category::KnightToAttack::isInCategory(), osl::category::LanceAttackMinoGold::isInCategory(), osl::category::AntiPromotion::isInCategory(), osl::category::OpenBishop::isInCategory(), osl::search::FirstMoveThreatmate::isMember(), isOnBoardSlow(), osl::checkmate::ProofNumberTable::libertyAfterAllMove(), main(), osl::rating::RelativeKingY::makeOldY(), osl::progress::Effect5x3d::makeProgress(), osl::progress::Effect5x3::makeProgressArea(), osl::progress::Effect5x3::makeProgressAreaBonus(), osl::rating::PositionY::makeY(), osl::rating::RelativeKingY::makeY(), osl::rating::RookDefense::match(), osl::PtypePlayerTraits< T, P >::mayPromote(), osl::category::BigramHelper::moveToIndex(), osl::Offset32::Offset32(), osl::record::opening::OMove::OMove(), osl::record::opiece_sort::operator()(), osl::operator<<(), osl::record::OPiece::OPiece(), positionForBlackSlow(), osl::effect::BoardBitMask::positionToOffset(), osl::threatmate::RichPredictor::predict(), osl::search::QuiescenceGenerator< P >::promote(), osl::record::KanjiMove::selectCandidates(), osl::progress::Effect5x3Table::setupAttackEffect(), osl::progress::Effect5x3Table::setupDefenseEffect(), osl::record::psn::show(), osl::record::csa::show(), osl::checkmate::ImmediateCheckmate::slowHasCheckmateMoveDirPiece(), osl::search::QuiescenceSearch2< EvalT >::staticValue(), osl::search::QuiescenceSearch< EvalT >::staticValue(), osl::brinkmate::Searcher::threatmateCandidate(), と osl::category::BigramHelper::toIndex().
unsigned int osl::Position::index | ( | ) | const [inline] |
position.h の 70 行で定義されています。
参照元 osl::brinkmate::ThreatmatePool::add(), osl::hash::HashGenTable::addHashKey(), osl::Centering5x3::adjustCenter(), osl::Centering3x3::adjustCenter(), osl::move_classifier::canAttackInThreeMoves(), osl::PositionCompressor::compress(), osl::search::HistoryTable::Table::count(), osl::effect::NumSimpleEffectTable< State >::doBlockAt(), osl::effect::NumSimpleEffectTable< PawnMaskState::simple_state_t >::doEffectLong(), osl::effect::NumSimpleEffectTable< PawnMaskState::simple_state_t >::doEffectShort(), osl::search::BigramKillerMove::dump(), osl::brinkmate::ThreatmatePool::find(), osl::rating::PatternGroup::findMatch(), osl::search::HistoryTable::Table::fromIndex(), osl::progress::Effect5x3Table::getAttackEffect(), osl::effect::BoardBitMaskTable::getBishopMask(), osl::progress::Effect5x3Table::getDefenseEffect(), osl::move_generator::AddEffect8Table::getDropPosition(), osl::effect::NumSimpleEffectTable< PawnMaskState::simple_state_t >::getEffect(), osl::category::PtypePositionTable::getIndex(), osl::effect::BoardBitMaskTable::getLanceMask(), osl::move_generator::AddEffect8Table::getLongDrop2Position(), osl::move_generator::AddEffect8Table::getLongDropDirect(), osl::move_generator::AddEffect8Table::getLongDropPosition(), osl::effect::BoardBitMaskTable::getMask(), osl::state::SimpleState::getPieceAt(), osl::effect::BoardBitMaskTable::getRookMask(), osl::rating::CountEffect2::index(), osl::effect::BoardBitMaskTable::initBetweenMask(), osl::move_generator::AddEffect8Table::initDropPosition(), osl::move_generator::AddEffect8Table::initLongDropPosition(), osl::effect::BoardBitMaskTable::initMaskOfPosition(), isOnBoardRegion(), osl::eval::endgame::KingPieceTable::kingIndex(), main(), osl::checkmate::OraclePoolLastMove::Table::makeKey(), osl::search::BigramKillerMove::operator[](), osl::eval::endgame::KingPieceTable::otherIndex(), osl::rating::PatternGroup::PatternGroup(), osl::progress::PtypeProgressTable::progress(), osl::progress::PtypeProgressTable::PtypeProgressTable(), osl::ntesuki::Rzone::Rzone(), osl::state::SimpleState::setBoard(), osl::search::BigramKillerMove::setMove(), osl::progress::Effect5x3Table::setupAttackEffect(), osl::progress::Effect5x3Table::setupDefenseEffect(), osl::hash::HashGenTable::subHashKey(), osl::Centering5x3::Table::Table(), osl::Centering3x3::Table::Table(), osl::ntesuki::Rzone::test(), と osl::search::MoveMarker::toIndex().
static unsigned int osl::Position::indexMax | ( | ) | [inline, static] |
position.h の 71 行で定義されています。
参照元 osl::checkmate::OraclePoolLastMove::Table::makeKey(), と osl::ntesuki::Rzone::Rzone().
int osl::Position::indexForOffset32 | ( | ) | const [inline] |
bool osl::Position::isPieceStand | ( | ) | const [inline] |
position.h の 74 行で定義されています。
参照先 PIECE_STAND, と position.
参照元 osl::checkmate::LibertyEstimator::attackH(), osl::search::ShouldPromoteCut::canIgnore(), osl::eval::PieceEval::computeDiffAfterMove(), osl::checkmate::OracleProver< Table >::defense(), osl::checkmate::OracleDisprover< Table >::defense(), osl::eval::ppair::PiecePairEval< osl::eval::ppair::PiecePairWithStand< Table >, Table >::diffWithMove(), osl::checkmate::DisproofOracleAttack< P >::expandOracle(), osl::rating::AttackKing8Group::findMatch(), flipHorizontal(), osl::search::HistoryTable::Table::fromIndex(), osl::category::KingEscape::generate(), osl::category::KingNeighborBigramTable::generate(), osl::checkmate::CheckMoveGenerator< P >::generateAttack(), osl::checkmate::CheckMoveGenerator< P >::generateEscape(), osl::ntesuki::NtesukiRecord::generateMoves(), osl::move_generator::generateShortDrop(), osl::category::Escape< PTYPE >::getIndexIf(), osl::search::BigramKillerMove::getMove(), osl::rating::CountOpen::index(), osl::state::SimpleState::isAlmostValidMove(), osl::effect::NumSimpleEffect< State >::isAlmostValidMove(), osl::Move::isDrop(), osl::effect_util::EffectUtil::isKingInCheck(), osl::move_classifier::TrapRook< P >::isMember(), osl::move_classifier::SafeMove< P >::isMember(), osl::move_classifier::PawnDropCheckmate< P >::isMember(), osl::move_classifier::KingOpenMove< P >::isMember(), osl::move_classifier::Check< P >::isMember(), osl::Piece::isOnBoard(), osl::effect_util::EffectUtil::isOpenAttackMove(), isValid(), osl::effect_util::EffectUtil::kingAttackPiece(), osl::state::SimpleState::lastMoveIsOpenCheck(), osl::eval::ppair::PiecePairRawTable::loadFromBinaryFile(), osl::rating::AttackKing8::match(), osl::rating::RookDefense::match(), osl::category::BigramHelper::moveToIndex(), osl::record::opening::OMove::OMove(), osl::operator<<(), osl::record::OPiece::OPiece(), rotate180Safe(), osl::search::QuiescenceSearch2< EvalT >::searchMain(), osl::search::QuiescenceSearch< EvalT >::searchMain(), osl::checkmate::PieceCost::setAttackCost(), osl::record::psn::show(), と osl::record::csa::show().
bool osl::Position::isOnBoardSlow | ( | ) | const |
bool osl::Position::isOnBoard | ( | ) | const [inline] |
̾ɽɤȽꡥ 1<=x() && x()<=9 && 1<=y() && y()<=9 Positionɽ˰¸롥
position.h の 81 行で定義されています。
参照元 adjust(), osl::checkmate::detail::blockingDiagonalAttack(), osl::checkmate::detail::blockingVerticalAttack(), osl::eval::ProgressEvalGeneral< OpeningEval >::calculateSilverPenalty(), osl::move_classifier::PawnDropCheckmate< P >::canEscape(), canPromote(), osl::effect_util::EffectUtil::cheapestPiece(), osl::rating::CountEffect2::count(), osl::effect::NumSimpleEffect< PawnMaskState >::countEffect(), osl::effect::NumSimpleEffect< PawnMaskState >::countEffect2(), osl::effect::NumSimpleEffect< PawnMaskState >::countKingEffect(), osl::mobility::countMobilityBoth(), osl::checkmate::FixedDepthSearcher::defense(), osl::category::AddEffectToLastEffect::CheckEffect::doAction(), osl::category::DropAfterOpposingPawn::generate(), osl::move_generator::Escape< P, State, Action >::generateBlocking(), osl::move_generator::OpenKingRoad< P >::generateDir(), osl::move_generator::generateLongMove(), osl::ntesuki::NtesukiRecord::generateMoves(), osl::move_generator::generateShortMove(), osl::move_generator::CaptureEffectToAroundKing8< P >::generateTo(), osl::move_generator::AddEffect8Defense< P >::generateTo(), osl::progress::Effect5x3Table::getAttackEffect(), osl::effect::BoardBitMaskTable::getBishopMask(), osl::progress::Effect5x3Table::getDefenseEffect(), osl::PtypeTable::getEffect(), osl::PtypeTable::getEffectNotLongU(), osl::effect::BoardBitMaskTable::getLanceMask(), osl::effect::Liberty8Table::getLongEffect(), osl::effect::Liberty8Table::getLongEffect2(), osl::effect::BoardBitMaskTable::getMask(), osl::move_generator::AddEffectTable::getNearMask(), osl::move_generator::AddEffectTable::getNearMaskLong(), osl::move_generator::AddEffectTable::getNearMaskPBISHOP(), osl::move_generator::AddEffectTable::getNearMaskPROOK(), osl::move_generator::AddEffectTable::getNearMaskWithPromote(), osl::move_generator::AddEffectTable::getOffsetLong(), osl::move_generator::AddEffectTable::getOffsetPBISHOP(), osl::move_generator::AddEffectTable::getOffsetPROOK(), osl::state::SimpleState::getPieceOnBoard(), osl::effect::BoardBitMaskTable::getRookMask(), osl::effect::Liberty8Table::getShortMask(), osl::effect_util::Neighboring8Effect::Table::hasAtMaxPieceBetween(), osl::checkmate::ImmediateCheckmate::hasCheckmateMove(), osl::checkmate::ImmediateCheckmate::hasCheckmateMoveDir(), osl::effect::NumSimpleEffect< PawnMaskState >::hasEffectBy(), osl::effect::NumSimpleEffect< PawnMaskState >::hasEffectByPiece(), osl::effect_util::Neighboring8Effect::hasEffectFromTo(), osl::effect_util::Neighboring8Direct::hasEffectFromTo(), osl::effect_util::Neighboring25Direct::hasEffectFromTo(), osl::state::SimpleState::hasEffectPiece(), osl::effect::NumSimpleEffect< PawnMaskState >::hasEffectPiece(), osl::state::SimpleState::hasEffectTo(), osl::effect::NumSimpleEffect< PawnMaskState >::hasEffectTo(), osl::hasEnoughEffect(), osl::checkmate::detail::hasKnightCheckmate(), osl::rating::CountEffect2::index(), osl::move_generator::AddEffect8Table::initDropPosition(), osl::move_generator::AddEffect8Table::initLongDropPosition(), osl::state::SimpleState::isEmptyBetween(), osl::category::PawnOnSilver::isInCategory(), osl::category::PawnOnLance::isInCategory(), osl::category::MoveSaGWithPawn::isInCategory(), osl::category::DropPieceOnEscapeRoute::isInCategory(), osl::category::RookAddPawnSupport::isInCategory(), osl::category::PrepareRookPromotion::isInCategory(), osl::category::LanceAttackKing::isInCategory(), osl::category::LureGoldDiagonally::isInCategory(), osl::move_classifier::KingOpenMove< P >::isMember(), osl::effect_util::EffectUtil::isOpenAttackMove(), osl::rating::LongTarget::isPromotable(), isValid(), osl::Move::isValid(), main(), osl::make_move(), osl::effect_util::Pin::makeByPiece(), osl::effect_util::Pin::makeByPieceKing(), osl::effect_util::Pin::makeNaive(), osl::Move::Move(), osl::rating::PatternLong::nextPieceOrEnd(), osl::rating::Pattern::nextPosition(), osl::BoardTable::nextPosition(), osl::effect::AddMaskAction< Liberty, State, P, T >::operator()(), positionForBlack(), osl::effect::BoardBitMask::positionToOffset(), osl::threatmate::RichPredictor::predict(), osl::effect_util::EffectUtil::promotablePiece(), osl::ntesuki::Rzone::Rzone(), osl::ntesuki::NtesukiMoveGenerator::setOrder(), と osl::effect_util::EffectUtil::showEffect().
bool osl::Position::isValid | ( | ) | const |
position.cc の 15 行で定義されています。
参照先 isOnBoard(), と isPieceStand().
参照元 osl::hash::HashGenTable::addHashKey(), osl::Move::isValid(), osl::Move::Move(), と osl::hash::HashGenTable::subHashKey().
const osl::Position osl::Position::positionForBlackSlow | ( | Player | player | ) | const |
const Position osl::Position::positionForBlack | ( | Int2Type< BLACK > | ) | const [inline] |
position.h の 91 行で定義されています。
参照先 isOnBoard().
参照元 osl::search::QuiescenceGenerator< P >::attackKing8(), osl::move_classifier::canAttackInThreeMoves(), osl::move_generator::generateShortDrop(), osl::checkmate::ProofNumberTable::libertyAfterAllMove(), と osl::progress::Effect5x3::makeProgressAreaBonus().
const Position osl::Position::positionForBlack | ( | Int2Type< WHITE > | ) | const [inline] |
const Position osl::Position::positionForBlack | ( | ) | const [inline] |
const Position osl::Position::rotate180 | ( | ) | const [inline] |
position.h の 117 行で定義されています。
参照元 adjustDual(), main(), osl::eval::ppair::PiecePairPieceTable::setUp(), osl::progress::Effect5x3Table::setupAttackEffect(), osl::progress::Effect5x3Table::setupDefenseEffect(), osl::eval::endgame::DefenseKing::Table::Table(), と osl::eval::endgame::AttackKing::Table::Table().
const Position osl::Position::rotate180Safe | ( | ) | const [inline] |
const Position osl::Position::flipHorizontal | ( | ) | const [inline] |
static const Position osl::Position::onBoardMax | ( | ) | [inline, static] |
static const Position osl::Position::onBoardMin | ( | ) | [inline, static] |
position.h の 135 行で定義されています。
参照先 Position().
参照元 isOnBoardRegion(), と osl::search::MoveMarker::toIndex().
bool osl::Position::isOnBoardRegion | ( | ) | const [inline] |
posONBOARD_MINONBOARD_MAXδ֤ˤ
position.h の 140 行で定義されています。
参照先 index(), onBoardMax(), と onBoardMin().
Position& osl::Position::operator++ | ( | ) | [inline] |
static int osl::Position::reverseX | ( | int | x | ) | [inline, static] |
static int osl::Position::reverseY | ( | int | y | ) | [inline, static] |
bool osl::Position::canPromote | ( | Int2Type< BLACK > | ) | const [inline, private] |
position.h の 153 行で定義されています。
参照先 isOnBoard(), と y().
参照元 osl::search::QuiescenceGenerator< P >::attackGoldWithPawn(), osl::search::QuiescenceGenerator< P >::attackKnightWithPawn(), osl::search::QuiescenceGenerator< P >::attackMajorPieceFirstSelection(), osl::search::QuiescenceGenerator< P >::attackSilverWithPawn(), osl::eval::ProgressEvalGeneral< OpeningEval >::calculateAttackRooks(), osl::eval::ProgressEvalGeneral< OpeningEval >::calculateRookRankBonus(), osl::search::ShouldPromoteCut::canIgnore(), osl::search::QuiescenceGenerator< P >::check(), osl::eval::See::computeValue(), osl::eval::TakeBackValue::computeValue(), osl::effect_action::SimplePromote< Action >::doAction(), osl::effect_action::SimpleMove< Action >::doAction(), osl::effect_action::SimpleBetterToPromote< Action >::doAction(), osl::effect_action::Promote< State, Action >::doAction(), osl::category::ContinueCapture::PositionAction::doAction(), osl::effect_action::BetterToPromote< State, Action >::doAction(), osl::effect_action::AlwaysMove< State, Action >::doAction(), osl::effect_action::SimplePromote< Action >::doActionPtype(), osl::effect_action::SimpleMove< Action >::doActionPtype(), osl::effect_action::SimpleBetterToPromote< Action >::doActionPtype(), osl::effect_action::Promote< State, Action >::doActionPtype(), osl::effect_action::BetterToPromote< State, Action >::doActionPtype(), osl::effect_action::AlwaysMove< State, Action >::doActionPtype(), osl::checkmate::PawnCheckmateMoves::effectiveOnlyIfPawnCheckmate(), osl::move_generator::PieceOnBoardType< P, T >::generate(), osl::move_generator::bits::PieceOnBoardShort< P, T, CanP, Dir >::generate(), osl::category::ImmediateAntiPawnPromotion::generate(), osl::category::DropAfterOpposingPawn::generate(), osl::category::PawnBeforePawn::generate(), osl::category::KingNeighborBigramTable::generate(), osl::move_generator::without_effect::generateLongMove(), osl::move_generator::generateLongMove(), osl::move_generator::without_effect::generateLongMoveDirectCanPromote(), osl::move_generator::without_effect::generateMove(), osl::move_generator::PieceOnBoard< P >::generateMovesPawn(), osl::move_generator::generateShortMove(), osl::search::BigramKillerMove::getMove(), osl::checkmate::ImmediateCheckmate::hasCheckmateMoveDirPiece(), osl::rating::Karanari::index(), osl::category::KingNeighborBigramTable::isAttackByMajorPiece(), osl::category::GambitPawn::isInCategory(), osl::category::ImmediateAntiPawnPromotion::isInCategory(), osl::category::DanglingPawn::isInCategory(), osl::category::ForcePawnAdvanceOnRook::isInCategory(), osl::category::RookAddPawnSupport::isInCategory(), osl::category::PrepareRookPromotion::isInCategory(), osl::category::EnteringKing::isInCategory(), osl::rating::LongTarget::isPromotable(), osl::checkmate::ProofNumberTable::libertyAfterAllMove(), osl::progress::Effect5x3::makeProgressAreaBonus(), osl::rating::Karanari::match(), osl::rating::Karanari::matchGeneral(), と osl::category::AntiPromotion::Test::operator()().
bool osl::Position::canPromote | ( | Int2Type< WHITE > | ) | const [inline, private] |
bool osl::Position::canPromote | ( | ) | const [inline] |
position.h の 165 行で定義されています。
bool osl::Position::canPromote | ( | Player | player | ) | const [inline] |
position.h の 182 行で定義されています。
position.h の 186 行で定義されています。
unsigned int osl::Position::position [private] |
position.h の 41 行で定義されています。
参照元 osl::checkmate::ImmediateCheckmate::hasCheckmateMoveDirPiece(), index(), indexForOffset32(), isOnBoard(), isPieceStand(), operator++(), operator+=(), operator-(), operator-=(), Position(), osl::checkmate::detail::slowCheckDrop(), osl::checkmate::ImmediateCheckmate::slowHasCheckmateMoveDirPiece(), uintValue(), x(), と y().