クラス osl::Position

#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δ֤ˤ
Positionoperator++ ()
template<Player P>
bool canPromote () const
bool canPromote (Player player) const
Positionoperator+= (Offset offset)
Positionoperator-= (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.h39 行で定義されています。


列挙型

anonymous enum

列挙型の値:
PIECE_STAND 
MIN 
SIZE 

position.h48 行で定義されています。


コンストラクタとデストラクタ

osl::Position::Position ( int  p  )  [inline, explicit, private]

position.h42 行で定義されています。

osl::Position::Position (  )  [inline]

osl::Position::Position ( int  x,
int  y 
) [inline]

position.h57 行で定義されています。

参照先 position, と SIZE.


関数

static const Position osl::Position::makeDirect ( int  value  )  [inline, static]

unsigned int osl::Position::uintValue (  )  const [inline]

static const Position osl::Position::STAND (  )  [inline, static]

static const Position osl::Position::nth ( unsigned int  i  )  [inline, static]

position.h61 行で定義されています。

参照先 MIN, と Position().

参照元 osl::hash::HashGenTable::HashGenTable(), と osl::brinkmate::ThreatmatePool::show().

int osl::Position::x (  )  const [inline]

ȤƤXɸ֤.

Positionɽ˰¸ʤ

position.h65 行で定義されています。

参照先 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.h69 行で定義されています。

参照先 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.h70 行で定義されています。

参照先 MIN, と position.

参照元 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.h71 行で定義されています。

参照先 MIN, と SIZE.

参照元 osl::checkmate::OraclePoolLastMove::Table::makeKey(), と osl::ntesuki::Rzone::Rzone().

int osl::Position::indexForOffset32 (  )  const [inline]

position.h72 行で定義されています。

参照先 position.

bool osl::Position::isPieceStand (  )  const [inline]

position.h74 行で定義されています。

参照先 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

position.cc9 行で定義されています。

参照先 x(), と y().

bool osl::Position::isOnBoard (  )  const [inline]

̾ɽɤȽꡥ 1<=x() && x()<=9 && 1<=y() && y()<=9 Positionɽ˰¸롥

position.h81 行で定義されています。

参照先 position, と x().

参照元 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

const osl::Position osl::Position::positionForBlackSlow ( Player  player  )  const

position.cc21 行で定義されています。

参照先 osl::BLACK, Position(), reverseX(), reverseY(), x(), と y().

const Position osl::Position::positionForBlack ( Int2Type< BLACK >   )  const [inline]

const Position osl::Position::positionForBlack ( Int2Type< WHITE >   )  const [inline]

position.h97 行で定義されています。

参照先 isOnBoard(), makeDirect(), Position(), と uintValue().

template<Player P>
const Position osl::Position::positionForBlack (  )  const [inline]

ξ̤ä֤.

PIECE_STANDξϰʤ

position.h107 行で定義されています。

const Position osl::Position::positionForBlack ( Player  player  )  const [inline]

position.h110 行で定義されています。

参照先 osl::BLACK.

const Position osl::Position::rotate180 (  )  const [inline]

const Position osl::Position::rotate180Safe (  )  const [inline]

position.h121 行で定義されています。

参照先 isPieceStand().

参照元 osl::state::SimpleState::rotate180().

const Position osl::Position::flipHorizontal (  )  const [inline]

position.h127 行で定義されています。

参照先 isPieceStand(), Position(), x(), と y().

参照元 osl::state::SimpleState::flipHorizontal().

static const Position osl::Position::onBoardMax (  )  [inline, static]

position.h134 行で定義されています。

参照先 Position().

参照元 isOnBoardRegion().

static const Position osl::Position::onBoardMin (  )  [inline, static]

position.h135 行で定義されています。

参照先 Position().

参照元 isOnBoardRegion(), と osl::search::MoveMarker::toIndex().

bool osl::Position::isOnBoardRegion (  )  const [inline]

posONBOARD_MINONBOARD_MAXδ֤ˤ

position.h140 行で定義されています。

参照先 index(), onBoardMax(), と onBoardMin().

Position& osl::Position::operator++ (  )  [inline]

position.h145 行で定義されています。

参照先 position.

static int osl::Position::reverseX ( int  x  )  [inline, static]

position.h150 行で定義されています。

参照元 positionForBlackSlow().

static int osl::Position::reverseY ( int  y  )  [inline, static]

bool osl::Position::canPromote ( Int2Type< BLACK >   )  const [inline, private]

position.h153 行で定義されています。

参照先 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]

position.h158 行で定義されています。

参照先 isOnBoard(), と y().

template<Player P>
bool osl::Position::canPromote (  )  const [inline]

position.h165 行で定義されています。

bool osl::Position::canPromote ( Player  player  )  const [inline]

position.h166 行で定義されています。

参照先 osl::BLACK.

Position& osl::Position::operator+= ( Offset  offset  )  [inline]

position.h174 行で定義されています。

参照先 osl::Offset::intValue(), と position.

Position& osl::Position::operator-= ( Offset  offset  )  [inline]

position.h178 行で定義されています。

参照先 osl::Offset::intValue(), と position.

const Position osl::Position::operator+ ( Offset  offset  )  const [inline]

position.h182 行で定義されています。

const Position osl::Position::operator- ( Offset  offset  )  const [inline]

position.h186 行で定義されています。

const Offset osl::Position::operator- ( Position  other  )  const [inline]

position.h190 行で定義されています。

参照先 osl::Offset::makeDirect(), と position.


変数

unsigned int osl::Position::position [private]


このクラスの説明は次のファイルから生成されました:

Thu Oct 8 05:01:15 2009に生成されました。  doxygen 1.5.6