#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の間にある | |
Square & | operator++ () |
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が等しい | |
Square & | operator+= (Offset offset) |
Square & | operator-= (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.h の 530 行で定義されています。
anonymous enum |
basic_type.h の 537 行で定義されています。
osl::Square::Square | ( | int | p | ) | [inline, explicit, private] |
basic_type.h の 531 行で定義されています。
osl::Square::Square | ( | ) | [inline] |
basic_type.h の 542 行で定義されています。
osl::Square::Square | ( | int | x, | |
int | y | |||
) | [inline] |
basic_type.h の 546 行で定義されています。
const Square osl::Square::back | ( | ) | const [inline] |
basic_type.h の 747 行で定義されています。
const osl::Square osl::Square::back | ( | Player | P, | |
Direction | D | |||
) | const |
basic_type.cc の 197 行で定義されています。
参照先 osl::alt(), osl::Board_Table, と osl::BoardTable::nextSquare().
bool osl::Square::canPromote | ( | ) | const [inline] |
basic_type.h の 656 行で定義されています。
参照元 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] |
static bool osl::Square::canPromoteY | ( | int | y | ) | [inline, static] |
basic_type.h の 652 行で定義されています。
const Square osl::Square::flipHorizontal | ( | ) | const [inline] |
unsigned int osl::Square::index | ( | ) | const [inline] |
basic_type.h の 569 行で定義されています。
参照元 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.h の 571 行で定義されています。
参照先 square.
static unsigned int osl::Square::indexMax | ( | ) | [inline, static] |
basic_type.h の 570 行で定義されています。
bool osl::Square::isEdge | ( | ) | const [inline] |
onBoardから8近傍のオフセットを足した点がedgeかどうかの判定 そこそこ速くなった.
basic_type.h の 588 行で定義されています。
参照元 osl::move_classifier::PawnDropCheckmate< P >::canEscape(), と osl::effect::EffectedNumTable::EffectedNumTable().
bool osl::Square::isLR | ( | Square | sq | ) | const [inline] |
2つのSquare(onBoardであることが前提)のyが等しい
basic_type.h の 698 行で定義されています。
bool osl::Square::isNeighboring8 | ( | Square | to | ) | const |
basic_type.cc の 202 行で定義されています。
参照先 osl::Board_Table, と osl::BoardTable::getShortOffsetNotKnight().
参照元 osl::checkmate::ProofNumberTable::countLiberty(), osl::checkmate::ProofNumberTable::countLibertyLong(), osl::checkmate::ProofNumberTable::countLibertyShortNotKnight(), osl::checkmate::FixedDepthSearcher::defenseEstimation(), osl::checkmate::CheckmateIfCapture::effectiveAttackCandidate0(), osl::rating::Karanari::index(), osl::rating::Threatmate::isCandidate(), osl::move_probability::BreakThreatmate::isOpeningKingRoad(), osl::rating::Karanari::match(), osl::rating::DefenseKing8::matchDrop(), と osl::rating::DefenseKing8::matchMove().
bool osl::Square::isOnBoard | ( | ) | const [inline] |
盤面上を表すかどうかの判定. 1<=x() && x()<=9 && 1<=y() && y()<=9 Squareの内部表現に依存する.
basic_type.h の 580 行で定義されています。
参照元 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.h の 638 行で定義されています。
bool osl::Square::isOnBoardSlow | ( | ) | const |
basic_type.cc の 178 行で定義されています。
bool osl::Square::isPieceStand | ( | ) | const [inline] |
basic_type.h の 573 行で定義されています。
参照先 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().
bool osl::Square::isU | ( | Square | sq | ) | const [inline] |
sqがPlayer Pにとって上
basic_type.h の 687 行で定義されています。
bool osl::Square::isUD | ( | Square | sq | ) | const [inline] |
2つのSquare(onBoardであることが前提)のxが等しい
basic_type.h の 678 行で定義されています。
参照元 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.h の 670 行で定義されています。
参照元 osl::move_generator::detail::generateRookLongMove(), と osl::move_generator::detail::generateRookLongMoveNotKing().
bool osl::Square::isValid | ( | ) | const |
basic_type.cc の 184 行で定義されています。
参照先 isOnBoard(), と isPieceStand().
参照元 osl::hash::HashGenTable::addHashKey(), osl::Move::isValid(), osl::Move::Move(), と osl::hash::HashGenTable::subHashKey().
static const Square osl::Square::makeDirect | ( | int | value | ) | [inline, static] |
basic_type.h の 535 行で定義されています。
参照元 osl::rating::PatternGroup::findMatch(), osl::move_generator::detail::generateBishopLongMoveNotKing(), osl::move_generator::detail::generateNotKing(), osl::move_generator::detail::generateRookLongMoveNotKing(), osl::mobility::MobilityContent::get(), osl::NumEffectState::kingMobilityAbs(), osl::container::Square8::operator[](), osl::NumEffectState::recalcPinOpen(), と osl::container::BoardMask::toSquare().
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.cc の 191 行で定義されています。
const Square osl::Square::neighbor | ( | ) | const [inline] |
static const Square osl::Square::nth | ( | unsigned int | i | ) | [inline, static] |
basic_type.h の 556 行で定義されています。
参照先 osl::Offset::BOARD_HEIGHT, と Square().
static const Square osl::Square::onBoardMax | ( | ) | [inline, static] |
basic_type.h の 632 行で定義されています。
static const Square osl::Square::onBoardMin | ( | ) | [inline, static] |
basic_type.h の 633 行で定義されています。
basic_type.h の 711 行で定義されています。
Square& osl::Square::operator++ | ( | ) | [inline] |
basic_type.h の 643 行で定義されています。
basic_type.h の 703 行で定義されています。
basic_type.h の 719 行で定義されています。
basic_type.h の 715 行で定義されています。
basic_type.h の 707 行で定義されています。
static int osl::Square::reverseX | ( | int | x | ) | [inline, static] |
basic_type.h の 648 行で定義されています。
static int osl::Square::reverseY | ( | int | y | ) | [inline, static] |
const Square osl::Square::rotate180 | ( | ) | const [inline] |
basic_type.h の 610 行で定義されています。
参照元 osl::eval::ml::BishopEffectBase::evalOne(), osl::eval::ml::RookEffectBase::evalOne(), osl::eval::ml::PiecePairKing::indexKing(), osl::eval::ml::PiecePairKing::indexPiece(), osl::eval::ml::RookMobilityAll::indexXKingX(), osl::progress::ml::NewProgress::progressOne(), osl::progress::Effect5x3Table::setupAttackEffect(), と osl::progress::Effect5x3Table::setupDefenseEffect().
const Square osl::Square::rotate180EdgeOK | ( | ) | const [inline] |
basic_type.h の 614 行で定義されています。
参照元 osl::eval::ml::BishopEffectBase::evalOne(), と osl::eval::ml::RookEffectBase::evalOne().
const Square osl::Square::rotate180Safe | ( | ) | const [inline] |
basic_type.h の 619 行で定義されています。
basic_type.h の 595 行で定義されています。
参照元 osl::eval::ml::PiecePairKing::add(), osl::eval::ml::AttackMajorsInBase::addOne(), osl::eval::ml::PiecePairKing::addSub(), osl::eval::ml::PiecePairKing::evalOne(), osl::eval::ml::EnterKingDefense::evalOne(), osl::eval::ml::BishopExchangeSilverKing::evalOne(), osl::eval::ml::PiecePairKing::evalWithUpdateBang(), osl::SimpleState::isConsistent(), osl::checkmate::ProofNumberTable::libertyAfterAllMove(), osl::progress::Effect5x3WithBonus::makeProgressAreaBonus(), osl::move_probability::KingRelativeY::match(), osl::move_probability::SquareY::match(), osl::move_probability::PawnAttack::matchPtype(), と osl::eval::ml::PiecePairKing::sub().
const Square osl::Square::squareForBlack | ( | ) | const [inline] |
static const Square osl::Square::STAND | ( | ) | [inline, static] |
basic_type.h の 545 行で定義されています。
参照元 osl::book::OPiece::bits2Square(), osl::move_generator::drop::checkSilver(), osl::effect::NumSimpleEffectTable::doEffectLong(), osl::Piece::EDGE(), osl::SimpleState::emulateCapture(), osl::SimpleState::emulateHandPiece(), osl::rating::PatternBlock::find(), osl::effect_util::Neighboring8Direct::Table::findNearest(), osl::book::OMove::from(), osl::SimpleState::init(), osl::progress::PtypeProgressTable::init(), osl::Centering3x3::Table::init(), osl::NumEffectState::makeUnmakePass(), osl::SquareCompressor::melt(), osl::Move::Move(), osl::hash::HashKey::newMakeMove(), osl::hash::HashKey::newUnmakeMove(), osl::book::oposition_sort::operator()(), osl::book::opiece_sort::operator()(), osl::usi::parse(), osl::kakinoki::KakinokiFile::parseLine(), osl::NumEffectState::prologueDrop(), osl::progress::PtypeProgress::PtypeProgress(), osl::SimpleState::setPieceAll(), osl::csa::strToMove(), osl::csa::strToPos(), osl::Centering5x3::Table::Table(), osl::book::OMove::to(), と osl::progress::PtypeProgress::update().
unsigned int osl::Square::uintValue | ( | ) | const [inline] |
basic_type.h の 536 行で定義されています。
参照元 osl::move_generator::detail::generateBishopLongMove(), osl::move_generator::detail::generateBishopLongMoveNotKing(), osl::move_generator::detail::generateDirNotKing(), osl::move_generator::detail::generateRookLongMove(), osl::move_generator::detail::generateRookLongMoveNotKing(), osl::BoardTable::getShort8(), osl::BoardTable::getShort8OffsetUnsafe(), osl::BoardTable::getShort8Unsafe(), osl::Move::init(), osl::BoardTable::isBetween(), osl::container::Square8::isMember(), osl::NumEffectState::makePinOpenDir(), osl::Move::newAddFrom(), osl::Move::newAddTo(), osl::Move::newFrom(), osl::operator==(), osl::rating::PatternGroup::PatternGroup(), osl::container::Square8::push_back(), osl::NumEffectState::recalcPinOpen(), と osl::Piece::setSquare().
int osl::Square::x | ( | ) | const [inline] |
将棋としてのX座標を返す.
Squareの内部表現に依存しない.
basic_type.h の 560 行で定義されています。
参照元 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.h の 564 行で定義されています。
参照元 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] |
bool osl::Square::yEq | ( | ) | [inline] |
std::enable_if<Y!=7,bool>::type osl::Square::yGe | ( | ) | [inline] |
std::enable_if<Y==7,bool>::type osl::Square::yGe | ( | ) | [inline] |
basic_type.h の 739 行で定義されています。
std::enable_if<Y!=2,bool>::type osl::Square::yLe | ( | ) | [inline] |
std::enable_if<Y==2,bool>::type osl::Square::yLe | ( | ) | [inline] |
basic_type.h の 731 行で定義されています。
unsigned int osl::Square::square [private] |
basic_type.h の 530 行で定義されています。
参照元 indexForOffset32(), osl::move_probability::LureDefender::match(), と Square().