Public 型 | Public メソッド | Static Public メソッド | Private メソッド | Private 変数

クラス osl::Square

#include <basic_type.h>

すべてのメンバ一覧

Public 型

enum  { PIECE_STAND = 0, MIN = 0, SIZE = 0x100 }

Public メソッド

unsigned int uintValue () const
 Square ()
 Square (int x, int y)
int x () const
 将棋としてのX座標を返す.
int y () const
 将棋としてのY座標を返す.
int y1 () const
 y+1を返す
unsigned int index () const
int indexForOffset32 () const
bool isPieceStand () const
bool isOnBoardSlow () const
bool isOnBoard () const
 盤面上を表すかどうかの判定. 1<=x() && x()<=9 && 1<=y() && y()<=9 Squareの内部表現に依存する.
bool isEdge () const
 onBoardから8近傍のオフセットを足した点がedgeかどうかの判定 そこそこ速くなった.
bool isValid () const
const Square squareForBlack (Player player) const
template<Player P>
const Square squareForBlack () const
 後手の場合は盤面を引っくり返す.
const Square rotate180 () const
const Square rotate180EdgeOK () const
const Square rotate180Safe () const
const Square flipHorizontal () const
bool isOnBoardRegion () const
 squareがONBOARD_MINとONBOARD_MAXの間にある
Squareoperator++ ()
template<Player P>
bool canPromote () const
bool canPromote (Player player) const
bool isULRD (Square sq) const
 2つのSquare(onBoardであることが前提)が, xが等しいかyが等しい
bool isUD (Square sq) const
 2つのSquare(onBoardであることが前提)のxが等しい
template<Player P>
bool isU (Square sq) const
 sqがPlayer Pにとって上
bool isLR (Square sq) const
 2つのSquare(onBoardであることが前提)のyが等しい
Squareoperator+= (Offset offset)
Squareoperator-= (Offset offset)
const Square operator+ (Offset offset) const
const Square operator- (Offset offset) const
const Offset operator- (Square other) const
template<int Y>
bool yEq ()
template<int Y>
std::enable_if< Y!=2, bool >::type yLe ()
template<int Y>
std::enable_if< Y==2, bool >::type yLe ()
template<int Y>
std::enable_if< Y!=7, bool >::type yGe ()
template<int Y>
std::enable_if< Y==7, bool >::type yGe ()
template<Player P, Direction D>
const Square neighbor () const
template<Player P, Direction D>
const Square back () const
const Square neighbor (Player P, Direction D) const
const Square back (Player P, Direction D) const
bool isNeighboring8 (Square to) const

Static Public メソッド

static const Square makeDirect (int value)
static const Square STAND ()
static const Square makeNoCheck (int x, int y)
 assertなしに作る
static const Square nth (unsigned int i)
static unsigned int indexMax ()
static const Square onBoardMax ()
static const Square onBoardMin ()
static int reverseX (int x)
static int reverseY (int y)
template<Player P>
static bool canPromoteY (int y)

Private メソッド

 Square (int p)

Private 変数

unsigned int square

説明

basic_type.h530 行で定義されています。


列挙型

anonymous enum
列挙型の値:
PIECE_STAND 
MIN 
SIZE 

basic_type.h537 行で定義されています。


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

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

basic_type.h531 行で定義されています。

参照先 Square(), と square.

osl::Square::Square (  )  [inline]

basic_type.h542 行で定義されています。

参照元 nth(), と Square().

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

basic_type.h546 行で定義されています。


関数

template<Player P, Direction D>
const Square osl::Square::back (  )  const [inline]

basic_type.h747 行で定義されています。

参照元 osl::eval::ml::KnightFork::accumulate().

const osl::Square osl::Square::back ( Player  P,
Direction  D 
) const

basic_type.cc197 行で定義されています。

参照先 osl::alt(), osl::Board_Table, と osl::BoardTable::nextSquare().

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

basic_type.h656 行で定義されています。

参照元 osl::eval::ml::MajorCheckWithCapture::addOne(), osl::ShouldPromoteCut::canIgnore(), osl::eval::See::computeValue(), osl::effect_action::BetterToPromote< Action >::doAction(), osl::effect_action::AlwaysMove< Action >::doAction(), osl::effect_action::BetterToPromote< Action >::doActionPtype(), osl::effect_action::AlwaysMove< Action >::doActionPtype(), osl::checkmate::PawnCheckmateMoves::effectiveOnlyIfPawnCheckmate(), osl::eval::ml::RookPawn< Opening >::eval(), osl::move_generator::promote::MayPromoteDir< P, T, noCapture, Dir >::generateIfValid(), osl::move_generator::piece_on_board::generateLong(), osl::move_generator::detail::generateMovePiecePtypeMask(), osl::move_generator::PieceOnBoard< Action, noCapturePromote >::generatePiecePtypeUnsafe(), osl::move_generator::PieceOnBoard< Action, noCapturePromote >::generatePieceUnsafe(), osl::checkmate::ImmediateCheckmate::hasCheckmateMoveDirPiece(), osl::Move::ignoreUnpromote(), osl::rating::Karanari::index(), osl::rating::LongTarget::isPromotable(), osl::SimpleState::isValidMoveByRule(), osl::checkmate::ProofNumberTable::libertyAfterAllMove(), osl::move_probability::BlockLong::makeLongAttackOne(), osl::progress::Effect5x3WithBonus::makeProgressAreaBonus(), osl::rating::Karanari::match(), osl::move_probability::PromotionBySacrifice::match(), osl::move_probability::DropAfterOpposingPawn::match(), osl::move_probability::PatternBase< TestPromotable >::match(), osl::move_probability::SeeFeature::match(), osl::rating::Karanari::matchGeneral(), osl::eval::ml::SilverFork::matchGold(), osl::move_probability::PawnAttack::matchPtype(), osl::eval::ml::SilverFork::matchRook(), osl::ki2::show(), osl::psn::showXP(), と osl::move_probability::PatternCommon::updateCacheOne().

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

basic_type.h659 行で定義されています。

参照先 canPromote().

参照元 canPromote().

template<Player P>
static bool osl::Square::canPromoteY ( int  y  )  [inline, static]

basic_type.h652 行で定義されています。

const Square osl::Square::flipHorizontal (  )  const [inline]
unsigned int osl::Square::index (  )  const [inline]

basic_type.h569 行で定義されています。

参照元 osl::hash::HashGenTable::addHashKey(), osl::move_probability::PatternCommon::addOne(), osl::move_probability::BishopAttack::addSquare(), osl::Centering5x3::adjustCenter(), osl::Centering3x3::adjustCenter(), osl::SquareCompressor::compress(), osl::effect::NumSimpleEffectTable::doBlockAt(), osl::effect::NumSimpleEffectTable::doEffectLong(), osl::effect::NumSimpleEffectTable::doEffectShort(), osl::effect::NumSimpleEffectTable::effectSetAt(), osl::rating::PatternGroup::findMatch(), osl::progress::Effect5x3Table::getAttackEffect(), osl::progress::Effect5x3Table::getDefenseEffect(), osl::SimpleState::getPiecePtr(), osl::rating::CountEffect2::index(), osl::container::BoardMask::index(), osl::progress::PtypeProgressTable::init(), osl::checkmate::EdgeTable::init(), osl::Centering3x3::Table::init(), osl::container::BoardMaskTable5x3Center::mask(), osl::container::BoardMaskTable3x3::mask(), osl::container::BoardMaskTable5x5::mask(), osl::move_probability::BreakThreatmate::match(), osl::move_probability::LanceAttack::match(), osl::move_probability::operator==(), osl::rating::PatternGroup::PatternGroup(), osl::SimpleState::pieceAt(), osl::progress::PtypeProgressTable::progress(), osl::checkmate::EdgeTable::resetEdgeFromLiberty(), osl::SimpleState::setBoard(), osl::progress::Effect5x3Table::setupAttackEffect(), osl::progress::Effect5x3Table::setupDefenseEffect(), osl::hash::HashGenTable::subHashKey(), osl::Centering5x3::Table::Table(), と osl::move_probability::PatternCommon::updateCacheOne().

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

basic_type.h571 行で定義されています。

参照先 square.

static unsigned int osl::Square::indexMax (  )  [inline, static]

basic_type.h570 行で定義されています。

bool osl::Square::isEdge (  )  const [inline]

onBoardから8近傍のオフセットを足した点がedgeかどうかの判定 そこそこ速くなった.

basic_type.h588 行で定義されています。

参照元 osl::move_classifier::PawnDropCheckmate< P >::canEscape(), と osl::effect::EffectedNumTable::EffectedNumTable().

bool osl::Square::isLR ( Square  sq  )  const [inline]

2つのSquare(onBoardであることが前提)のyが等しい

basic_type.h698 行で定義されています。

参照元 osl::move_generator::detail::generateRookLongMove().

bool osl::Square::isNeighboring8 ( Square  to  )  const
bool osl::Square::isOnBoard (  )  const [inline]

盤面上を表すかどうかの判定. 1<=x() && x()<=9 && 1<=y() && y()<=9 Squareの内部表現に依存する.

basic_type.h580 行で定義されています。

参照元 osl::checkmate::detail::blockingDiagonalAttack(), osl::checkmate::detail::blockingVerticalAttack(), osl::eval::ml::KnightCheck::canCheck(), osl::eval::ml::GoldFeatures::canMoveToSide(), osl::rating::CountEffect2::count(), osl::NumEffectState::countEffect(), osl::mobility::countMobilityBoth(), osl::checkmate::FixedDepthSearcher::defense(), osl::eval::ml::King8EffectAll::effectState(), osl::eval::ml::LanceEffectPieceKingRelative::eval(), osl::eval::ml::PawnPtypeOPtypeO::eval(), osl::eval::ml::RookRookPiece::eval(), osl::eval::ml::SilverFeatures::evalOne(), osl::eval::ml::King25EmptyAbs< Opening >::evalOne(), osl::eval::ml::PawnPtypeOPtypeO::evalWithUpdate(), osl::move_probability::ToEffect::find(), osl::move_generator::Capture< Action >::generate(), osl::move_generator::detail::generateBishopLongMove(), osl::move_generator::detail::generateBishopLongMoveNotKing(), osl::move_generator::Escape< Action >::generateBlocking(), osl::move_generator::detail::generateDir(), osl::move_generator::detail::generateDirNotKing(), osl::move_generator::detail::generateKnightDir(), osl::progress::Effect5x3Table::getAttackEffect(), osl::progress::Effect5x3Table::getDefenseEffect(), osl::PtypeTable::getEffect(), osl::PtypeTable::getEffectNotLongU(), osl::BoardTable::getShort8(), osl::checkmate::ImmediateCheckmate::hasCheckmateMove(), osl::checkmate::ImmediateCheckmate::hasCheckmateMoveDir(), osl::effect_util::Neighboring8Direct::Table::hasEffect(), osl::NumEffectState::hasEffectAt(), osl::NumEffectState::hasEffectByNotPinned(), osl::NumEffectState::hasEffectByNotPinnedAndKing(), osl::NumEffectState::hasEffectByPiece(), osl::effect_util::Neighboring8Direct::hasEffectFromTo(), osl::checkmate::detail::hasKnightCheckmate(), osl::rating::CountEffect2::index(), osl::eval::ml::BishopExchangeSilverKing::indexRook(), osl::SimpleState::isConsistent(), osl::SimpleState::isEmptyBetween(), osl::move_classifier::KingOpenMove< P >::isMemberMain(), osl::rating::LongTarget::isPromotable(), osl::Move::isValid(), isValid(), osl::Move::Move(), osl::rating::PatternLong::nextPieceOrEnd(), osl::rating::Pattern::nextSquare(), osl::BoardTable::nextSquare(), osl::eval::ml::PinPtypeAll::pawnAttack(), osl::SimpleState::pieceOnBoard(), と osl::eval::ml::PiecePair::sanitize().

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

squareがONBOARD_MINとONBOARD_MAXの間にある

basic_type.h638 行で定義されています。

参照元 osl::move_probability::PatternCommon::addOne().

bool osl::Square::isOnBoardSlow (  )  const

basic_type.cc178 行で定義されています。

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

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

basic_type.h573 行で定義されています。

参照先 SIZE.

参照元 osl::move_probability::MoveInfo::adhocAdjustBishopFork(), osl::checkmate::LibertyEstimator::attackH(), osl::checkmate::attackProofCost(), osl::ShouldPromoteCut::canIgnore(), osl::eval::ml::BishopRookFork::evalOne(), osl::eval::ml::PiecePair::evalWithUpdate(), osl::eval::ml::PiecePair::evalWithUpdateCompiled(), osl::eval::ml::BishopRookFork::findDropInLine(), osl::rating::AttackKing8Group::findMatch(), osl::move_generator::promote::MayPromoteDir< P, T, noCapture, Dir >::generateIfValid(), osl::move_generator::promote::AllPromoteDir< P, T, noCapture, Dir >::generateIfValid(), osl::NumEffectState::inCheck(), osl::eval::ml::PiecePair::index(), osl::rating::CountOpen::index(), osl::SimpleState::initPawnMask(), osl::SimpleState::isAlmostValidDrop(), osl::SimpleState::isAlmostValidMove(), osl::NumEffectState::isAlmostValidMove(), osl::SimpleState::isConsistent(), osl::Move::isDrop(), osl::move_classifier::SafeMove< P >::isMember(), osl::move_classifier::PawnDropCheckmate< P >::isMember(), osl::move_classifier::Check< P >::isMember(), osl::move_classifier::KingOpenMove< P >::isMemberMain(), osl::Piece::isOnBoard(), isValid(), osl::NumEffectState::makeMove(), osl::NumEffectState::makePinOpen(), osl::NumEffectState::makeUnmakeMove(), osl::rating::AttackKing8::match(), osl::rating::RookDefense::match(), osl::move_probability::MoveFromOpposingSliders::match(), osl::eval::ml::SilverFork::matchGold(), osl::eval::ml::SilverFork::matchRook(), osl::book::OMove::OMove(), osl::operator<<(), osl::eval::ml::PiecePair::pieceValueDouble(), osl::book::OPiece::position2Bits(), osl::NumEffectState::recalcPinOpen(), osl::SimpleState::setPiece(), osl::psn::show(), osl::ki2::show(), osl::csa::show(), osl::psn::showXP(), osl::kakinoki::strToMove(), と osl::eval::ml::PiecePair::valueCompiled().

template<Player P>
bool osl::Square::isU ( Square  sq  )  const [inline]

sqがPlayer Pにとって上

basic_type.h687 行で定義されています。

参照元 osl::checkmate::detail::blockingVerticalAttack().

bool osl::Square::isUD ( Square  sq  )  const [inline]

2つのSquare(onBoardであることが前提)のxが等しい

basic_type.h678 行で定義されています。

参照元 osl::move_generator::detail::generateDirNotKing(), と osl::move_generator::detail::generateRookLongMove().

bool osl::Square::isULRD ( Square  sq  )  const [inline]

2つのSquare(onBoardであることが前提)が, xが等しいかyが等しい

basic_type.h670 行で定義されています。

参照元 osl::move_generator::detail::generateRookLongMove(), と osl::move_generator::detail::generateRookLongMoveNotKing().

bool osl::Square::isValid (  )  const
static const Square osl::Square::makeDirect ( int  value  )  [inline, static]
static const Square osl::Square::makeNoCheck ( int  x,
int  y 
) [inline, static]
const osl::Square osl::Square::neighbor ( Player  P,
Direction  D 
) const

basic_type.cc191 行で定義されています。

参照先 osl::Board_Table, と osl::BoardTable::nextSquare().

template<Player P, Direction D>
const Square osl::Square::neighbor (  )  const [inline]
static const Square osl::Square::nth ( unsigned int  i  )  [inline, static]

basic_type.h556 行で定義されています。

参照先 osl::Offset::BOARD_HEIGHT, と Square().

参照元 osl::SimpleState::init().

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

basic_type.h632 行で定義されています。

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

basic_type.h633 行で定義されています。

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

basic_type.h711 行で定義されています。

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

basic_type.h643 行で定義されています。

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

basic_type.h703 行で定義されています。

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

basic_type.h719 行で定義されています。

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

basic_type.h715 行で定義されています。

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

basic_type.h707 行で定義されています。

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

basic_type.h648 行で定義されています。

static int osl::Square::reverseY ( int  y  )  [inline, static]
const Square osl::Square::rotate180 (  )  const [inline]
const Square osl::Square::rotate180EdgeOK (  )  const [inline]
const Square osl::Square::rotate180Safe (  )  const [inline]

basic_type.h619 行で定義されています。

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

const Square osl::Square::squareForBlack ( Player  player  )  const [inline]
template<Player P>
const Square osl::Square::squareForBlack (  )  const [inline]

後手の場合は盤面を引っくり返す.

PIECE_STANDの場合は扱えない.

basic_type.h606 行で定義されています。

static const Square osl::Square::STAND (  )  [inline, static]
unsigned int osl::Square::uintValue (  )  const [inline]
int osl::Square::x (  )  const [inline]

将棋としてのX座標を返す.

Squareの内部表現に依存しない.

basic_type.h560 行で定義されています。

参照元 osl::move_probability::King5x5Ptype::addOne(), osl::eval::ml::PiecePair::adjust12(), osl::Centering5x3::adjustCenterNaive(), osl::Centering3x3::adjustCenterNaive(), osl::rating::BadLance::basicMatch(), osl::container::BoardMaskTable5x3Center::BoardMaskTable5x3Center(), osl::container::BitXmask::clear(), osl::record::KisenUtils::convertSquare(), osl::eval::ml::NumPiecesBetweenBishopAndKing::countBetween(), osl::eval::ml::King25Effect::countEffectAndPieces(), osl::eval::ml::King25EffectBoth::countEffectAndPiecesBoth(), osl::mobility::RookMobility::countHorizontalAll(), osl::effect::NumSimpleEffectTable::doEffectLong(), osl::eval::ml::SilverAdvance26::eval(), osl::eval::ml::PtypeYPawnY::eval(), osl::eval::ml::KnightHead::eval(), osl::eval::ml::BishopSilverKnight::eval(), osl::eval::ml::RookSilverKnight::eval(), osl::eval::ml::RookRookPiece::eval(), osl::eval::ml::BishopBishopPiece::eval(), osl::eval::ml::BishopHead::eval(), osl::eval::ml::RookPromoteDefense::eval(), osl::eval::ml::RookPawnY::eval(), osl::eval::ml::RookPawn< Opening >::eval(), osl::eval::ml::GoldFeatures::evalOne(), osl::eval::ml::SilverFeatures::evalOne(), osl::eval::ml::KnightFork::evalOne(), osl::eval::ml::PromotedMinorPieces::evalOne(), osl::eval::ml::RookEffectBase::evalOne(), osl::eval::ml::EnterKingDefense::evalOne(), osl::eval::ml::King25BothSide::evalOne(), osl::eval::ml::KingMobilitySum::evalOne(), osl::eval::ml::KingMobility::evalOne(), osl::eval::ml::King25EmptyAbs< Opening >::evalOne(), osl::eval::ml::King25EffectEachBoth::evalOne(), osl::eval::ml::King25EffectEach< Stage >::evalOne(), osl::eval::ml::AnagumaEmpty::evalOne(), osl::eval::ml::CheckShadowPtype::evalOne(), osl::eval::ml::PinPtypeAll::evalOne(), osl::eval::ml::PawnDropBoth::evalWithUpdate(), osl::eval::ml::PawnPtypeOPtypeO::evalWithUpdate(), osl::eval::ml::King3Pieces::evalWithUpdate(), osl::eval::ml::King25EmptyAbs< Opening >::evalWithUpdate(), osl::eval::ml::PtypeYPawnY::evalWithUpdateBang(), osl::eval::ml::PiecePair::evalWithUpdateCompiled(), osl::move_probability::SquareX::fromTo(), osl::move_generator::detail::generateBishopLongMove(), osl::move_generator::detail::generateBishopLongMoveNotKing(), osl::move_generator::detail::generateDir(), osl::move_generator::detail::generateDirNotKing(), osl::move_generator::escape::generateDrop(), osl::move_generator::detail::generateRookLongMove(), osl::move_generator::detail::generateRookLongMoveNotKing(), osl::BoardTable::getShort8(), osl::effect_util::Neighboring8Direct::hasEffectNaive(), osl::progress::ml::NewProgress::index(), osl::eval::ml::Pin::index(), osl::eval::ml::PiecePair::index(), osl::eval::ml::GoldAndSilverNearKing::index(), osl::eval::ml::LanceEffectPieceKingRelative::index(), osl::eval::ml::PtypeX::index(), osl::eval::ml::PawnDropBoth::index(), osl::eval::ml::KingRookBishop::index(), osl::eval::ml::KingPieceRelativeNoSupport::index(), osl::eval::ml::KingPieceRelative::index(), osl::eval::ml::King25EmptyAbs< Opening >::index(), osl::eval::ml::King25EffectEach< Stage >::index(), osl::eval::ml::KingXBlocked3::index(), osl::eval::ml::KingXBothBlocked::index(), osl::eval::ml::AnagumaEmpty::index(), osl::eval::ml::KingXBlockedYBase::index(), osl::eval::ml::KingXBlockedBase::index(), osl::eval::ml::BishopEffectBase::index1(), osl::eval::ml::RookEffectBase::index1(), osl::eval::ml::BishopEffectBase::index2(), osl::eval::ml::RookEffectBase::index2(), osl::eval::ml::GoldAndSilverNearKing::indexCombination(), osl::eval::ml::NonPawnAttacked::indexK(), osl::eval::ml::PiecePairKing::indexKing(), osl::eval::ml::BishopExchangeSilverKing::indexKing(), osl::rating::BigramAttack::indexKing(), osl::rating::BigramAttack::indexOfMove(), osl::progress::ml::NewProgress::indexPerEffect(), osl::progress::ml::NewProgress::indexPerEffectX(), osl::progress::ml::NewProgress::indexPerEffectY(), osl::progress::ml::NewProgress::indexRelative(), osl::eval::ml::BishopExchangeSilverKing::indexRook(), osl::eval::ml::GoldFeatures::indexSideX(), osl::eval::ml::BishopExchangeSilverKing::indexSilver(), osl::eval::ml::PiecePairKing::indexWhite(), osl::progress::ml::NewProgress::indexX(), osl::eval::ml::RookMobilityAll::indexX(), osl::eval::ml::PawnDropBoth::indexX(), osl::eval::ml::King25Mobility::indexX(), osl::eval::ml::King25BothSide::indexX(), osl::eval::ml::King3Pieces::indexX(), osl::eval::ml::RookMobilityAll::indexXKingX(), osl::progress::ml::NewProgress::indexY(), osl::eval::ml::PawnDropBoth::indexY(), osl::eval::ml::RookPawnY::indexY(), osl::eval::ml::KingXBlocked3::indexY(), osl::eval::ml::KingXBothBlocked::indexY(), osl::checkmate::EdgeTable::init(), osl::SimpleState::initPawnMask(), osl::eval::ml::BishopRookFork::isBishopForkSquare(), osl::eval::ml::KingXBlockedBase::isBlocked(), isOnBoardSlow(), osl::eval::ml::BishopRookFork::isRookForkSquare(), osl::rating::Threatmate::knight2Step(), osl::rating::RelativeKingX::makeOldX(), osl::progress::Effect5x3d::makeProgress(), osl::progress::Effect5x3::makeProgressArea(), osl::progress::Effect5x3WithBonus::makeProgressAreaBonus(), osl::rating::SquareX::makeX(), osl::rating::RelativeKingX::makeX(), osl::rating::PawnAttack::match(), osl::rating::RookDefense::match(), osl::move_probability::KingBlockade::match(), osl::move_probability::DropAfterOpposingPawn::match(), osl::move_probability::OpposingPawn::match(), osl::move_probability::LanceAttack::match(), osl::move_probability::PawnAttack::match(), osl::move_probability::KingRelativeX::match(), osl::move_probability::SquareX::match(), osl::eval::ml::KingMobility::mobilityDir(), osl::Offset32Base< Width, Width2 >::Offset32Base(), osl::book::OMove::OMove(), osl::eval::ml::OpenMidEndingEval::OpenMidEndingEval(), osl::book::oposition_sort::operator()(), osl::book::opiece_sort::operator()(), osl::operator<<(), osl::eval::ml::PinPtypeAll::pawnAttack(), osl::book::OPiece::position2Bits(), osl::progress::ml::NewProgress::progressOne(), osl::record::KanjiMove::selectCandidates(), osl::progress::ml::NewProgress::setUp(), osl::progress::Effect5x3Table::setupAttackEffect(), osl::progress::Effect5x3Table::setupDefenseEffect(), osl::psn::show(), osl::record::myshogi::show(), osl::ki2::show(), osl::csa::show(), osl::checkmate::ImmediateCheckmate::slowHasCheckmateMoveDirPiece(), osl::eval::ml::PiecePair::sum12(), osl::progress::ml::NewProgress::updateAttack5x5PiecesAndState(), osl::move_probability::PatternCommon::updateCacheOne(), osl::eval::ml::OpenMidEndingEval::updateGoldSilverNearKing(), osl::eval::ml::OpenMidEndingEval::updateSub(), と osl::eval::ml::PiecePair::valueCompiled().

int osl::Square::y (  )  const [inline]

将棋としてのY座標を返す.

Squareの内部表現に依存しない.

basic_type.h564 行で定義されています。

参照元 osl::eval::ml::PiecePairKing::add(), osl::eval::ml::AttackMajorsInBase::addOne(), osl::move_probability::King5x5Ptype::addOne(), osl::eval::ml::PiecePairKing::addSub(), osl::eval::ml::PiecePair::adjust12(), osl::Centering5x3::adjustCenterNaive(), osl::Centering3x3::adjustCenterNaive(), osl::move_generator::detail::blockingU(), osl::container::BoardMaskTable5x3Center::BoardMaskTable5x3Center(), osl::PtypePlayerTraits< T, P >::canDropTo(), osl::PtypeTable::canDropTo(), osl::ShouldPromoteCut::canIgnore(), osl::eval::ml::GoldFeatures::canRetreat(), osl::eval::ml::SilverFeatures::canRetreat(), osl::record::KisenUtils::convertSquare(), osl::mobility::LanceMobility::countAll(), osl::mobility::BishopMobility::countAll(), osl::mobility::BishopMobility::countAllDir(), osl::eval::ml::NumPiecesBetweenBishopAndKing::countBetween(), osl::eval::ml::King25Effect::countEffectAndPieces(), osl::eval::ml::King25EffectBoth::countEffectAndPiecesBoth(), osl::mobility::RookMobility::countVerticalAll(), osl::effect::NumSimpleEffectTable::doEffectLong(), osl::eval::ml::PtypeYPawnY::eval(), osl::eval::ml::KnightHead::eval(), osl::eval::ml::PawnPtypeOPtypeO::eval(), osl::eval::ml::BishopSilverKnight::eval(), osl::eval::ml::RookSilverKnight::eval(), osl::eval::ml::RookRookPiece::eval(), osl::eval::ml::BishopBishopPiece::eval(), osl::eval::ml::BishopHead::eval(), osl::eval::ml::RookPromoteDefense::eval(), osl::eval::ml::GoldFeatures::evalOne(), osl::eval::ml::SilverFeatures::evalOne(), osl::eval::ml::KnightFork::evalOne(), osl::eval::ml::RookEffectBase::evalOne(), osl::eval::ml::EnterKingDefense::evalOne(), osl::eval::ml::King25BothSide::evalOne(), osl::eval::ml::KingMobilitySum::evalOne(), osl::eval::ml::KingMobility::evalOne(), osl::eval::ml::King25EmptyAbs< Opening >::evalOne(), osl::eval::ml::King25EffectEachBoth::evalOne(), osl::eval::ml::King25EffectEach< Stage >::evalOne(), osl::eval::ml::AnagumaEmpty::evalOne(), osl::eval::ml::CheckShadowPtype::evalOne(), osl::eval::ml::PinPtypeAll::evalOne(), osl::eval::ml::PawnPtypeOPtypeO::evalWithUpdate(), osl::eval::ml::King3Pieces::evalWithUpdate(), osl::eval::ml::King25EmptyAbs< Opening >::evalWithUpdate(), osl::eval::ml::PtypeYY::evalWithUpdate(), osl::eval::ml::PiecePairKing::evalWithUpdateBang(), osl::eval::ml::PtypeYPawnY::evalWithUpdateBang(), osl::eval::ml::PiecePair::evalWithUpdateCompiled(), osl::move_probability::SquareY::fromTo(), osl::move_generator::detail::generateBishopLongMove(), osl::move_generator::detail::generateBishopLongMoveNotKing(), osl::move_generator::piece_on_board::generateLance(), osl::move_generator::detail::generateOpenOrCapture(), osl::move_generator::PieceOnBoard< Action, noCapturePromote >::generatePiecePtypeUnsafe(), osl::move_generator::PieceOnBoard< Action, noCapturePromote >::generatePieceUnsafe(), osl::move_generator::detail::generateRookLongMove(), osl::move_generator::detail::generateRookLongMoveNotKing(), osl::BoardTable::getShort8(), osl::effect_util::Neighboring8Direct::hasEffectNaive(), osl::Move::ignoreUnpromote(), osl::progress::ml::NewProgress::index(), osl::eval::ml::Pin::index(), osl::eval::ml::PieceStandY::index(), osl::eval::ml::PiecePair::index(), osl::eval::ml::GoldAndSilverNearKing::index(), osl::eval::ml::LanceEffectPieceKingRelative::index(), osl::eval::ml::PtypeY::index(), osl::eval::ml::KnightAdvance::index(), osl::eval::ml::PawnAdvanceUtil::index(), osl::eval::ml::RookRook::index(), osl::eval::ml::KingRookBishop::index(), osl::eval::ml::RookPawnY::index(), osl::eval::ml::MajorY< true, ROOK >::index(), osl::eval::ml::PtypeYY::index(), osl::eval::ml::KingPieceRelativeNoSupport::index(), osl::eval::ml::KingPieceRelative::index(), osl::eval::ml::King25EmptyAbs< Opening >::index(), osl::eval::ml::King25EffectEach< Stage >::index(), osl::eval::ml::AnagumaEmpty::index(), osl::eval::ml::KingXBlockedYBase::index(), osl::eval::ml::BishopEffectBase::index1(), osl::eval::ml::RookEffectBase::index1(), osl::eval::ml::BishopEffectBase::index2(), osl::eval::ml::RookEffectBase::index2(), osl::eval::ml::GoldAndSilverNearKing::indexCombination(), osl::eval::ml::NonPawnAttacked::indexK(), osl::eval::ml::PiecePairKing::indexKing(), osl::eval::ml::BishopExchangeSilverKing::indexKing(), osl::rating::BigramAttack::indexKing(), osl::rating::BigramAttack::indexOfMove(), osl::progress::ml::NewProgress::indexPerEffect(), osl::progress::ml::NewProgress::indexPerEffectX(), osl::progress::ml::NewProgress::indexPerEffectY(), osl::eval::ml::PiecePairKing::indexPiece(), osl::progress::ml::NewProgress::indexRelative(), osl::eval::ml::GoldFeatures::indexRetreat(), osl::eval::ml::SilverFeatures::indexRetreat(), osl::eval::ml::BishopExchangeSilverKing::indexRook(), osl::eval::ml::GoldFeatures::indexSideY(), osl::eval::ml::BishopExchangeSilverKing::indexSilver(), osl::eval::ml::PiecePairKing::indexWhite(), osl::progress::ml::NewProgress::indexX(), osl::progress::ml::NewProgress::indexY(), osl::eval::ml::RookMobilityAll::indexY(), osl::eval::ml::PromotedMinorPieces::indexY(), osl::eval::ml::PawnDropBoth::indexY(), osl::eval::ml::RookPawnY::indexY(), osl::eval::ml::King25Mobility::indexY(), osl::eval::ml::King25BothSide::indexY(), osl::eval::ml::King3Pieces::indexY(), osl::eval::ml::KingXBlocked3::indexY(), osl::eval::ml::KingXBothBlocked::indexY(), osl::eval::ml::King8Effect::indexY(), osl::checkmate::EdgeTable::init(), osl::eval::ml::BishopRookFork::isBishopForkSquare(), osl::eval::ml::KingXBlockedBase::isBlocked(), isOnBoardSlow(), osl::eval::ml::BishopRookFork::isRookForkSquare(), osl::rating::Threatmate::knight2Step(), osl::checkmate::ProofNumberTable::libertyAfterAllMove(), osl::rating::RelativeKingY::makeOldY(), osl::progress::Effect5x3d::makeProgress(), osl::progress::Effect5x3::makeProgressArea(), osl::progress::Effect5x3WithBonus::makeProgressAreaBonus(), osl::rating::SquareY::makeY(), osl::rating::RelativeKingY::makeY(), osl::rating::RookDefense::match(), osl::move_probability::LanceAttack::match(), osl::move_probability::KingRelativeY::match(), osl::move_probability::SquareY::match(), osl::move_probability::PawnAttack::matchPtype(), osl::PtypePlayerTraits< T, P >::mayPromote(), osl::eval::ml::KingMobility::mobilityDir(), osl::Offset32Base< Width, Width2 >::Offset32Base(), osl::book::OMove::OMove(), osl::eval::ml::OpenMidEndingEval::OpenMidEndingEval(), osl::book::oposition_sort::operator()(), osl::book::opiece_sort::operator()(), osl::operator<<(), osl::book::OPiece::position2Bits(), osl::progress::ml::NewProgress::progressOne(), osl::record::KanjiMove::selectCandidates(), osl::progress::ml::NewProgress::setUp(), osl::progress::Effect5x3Table::setupAttackEffect(), osl::progress::Effect5x3Table::setupDefenseEffect(), osl::psn::show(), osl::record::myshogi::show(), osl::ki2::show(), osl::csa::show(), osl::move_probability::CheckFeature::sign(), osl::checkmate::ImmediateCheckmate::slowHasCheckmateMoveDirPiece(), osl::eval::ml::PiecePairKing::sub(), osl::eval::ml::PiecePair::sum12(), osl::progress::ml::NewProgress::updateAttack5x5PiecesAndState(), osl::move_probability::PatternCommon::updateCacheOne(), osl::eval::ml::OpenMidEndingEval::updateGoldSilverNearKing(), osl::eval::ml::KnightFork::updateSquares(), osl::eval::ml::OpenMidEndingEval::updateSub(), と osl::eval::ml::PiecePair::valueCompiled().

int osl::Square::y1 (  )  const [inline]

y+1を返す

basic_type.h568 行で定義されています。

参照元 osl::move_generator::piece_on_board::generateLong().

template<int Y>
bool osl::Square::yEq (  )  [inline]
template<int Y>
std::enable_if<Y!=7,bool>::type osl::Square::yGe (  )  [inline]
template<int Y>
std::enable_if<Y==7,bool>::type osl::Square::yGe (  )  [inline]

basic_type.h739 行で定義されています。

template<int Y>
std::enable_if<Y!=2,bool>::type osl::Square::yLe (  )  [inline]
template<int Y>
std::enable_if<Y==2,bool>::type osl::Square::yLe (  )  [inline]

basic_type.h731 行で定義されています。


変数

unsigned int osl::Square::square [private]

basic_type.h530 行で定義されています。

参照元 indexForOffset32(), osl::move_probability::LureDefender::match(), と Square().


このクラスの説明は次のファイルから生成されました:
 全て クラス ネームスペース ファイル 関数 変数 型定義 列挙型 列挙型の値 フレンド マクロ定義