#include <simpleState.h>
Public メソッド | |
SimpleState () | |
SimpleState (Handicap h) | |
virtual | ~SimpleState () |
void | init () |
盤面が空の状態に初期化 | |
void | init (Handicap h) |
ハンディに応じた初期状態に初期化 | |
void | initPawnMask () |
const Piece | getPieceOf (int num) const |
void | setPieceOf (int num, Piece p) |
template<Player P> | |
const Piece | getKingPiece () const |
const Piece | getKingPiece (Player P) const |
template<Player P> | |
Position | getKingPosition () const |
Position | getKingPosition (Player player) const |
void | setBoard (Position pos, Piece piece) |
const PieceMask & | standMask (Player p) const |
const PieceMask & | usedMask () const |
bool | isOffBoard (int num) const |
void | clearPawn (Player pl, Position pos) |
(internal) | |
void | setPawn (Player pl, Position pos) |
(internal) | |
bool | isPawnMaskSet (Player player, int x) const |
template<Player P> | |
bool | isPawnMaskSet (int x) const |
void | setPiece (Player player, Position pos, Ptype ptype) |
void | setPieceAll (Player player) |
const Piece | getPieceAt (Position pos) const |
const Piece * | getPiecePtr (Position pos) const |
const Piece | getPieceOnBoard (Position pos) const |
bool | isOnBoard (int num) const |
int | countPiecesOnStand (Player pl, Ptype ptype) const |
持駒の枚数を数える | |
template<Ptype Type> | |
int | countPiecesOnStand (Player pl) const |
後方互換 | |
bool | hasPieceOnStand (Player player, Ptype ptype) const |
template<Ptype T> | |
bool | hasPieceOnStand (Player P) const |
Piece | nextPiece (Position cur, Offset diff) const |
diff方向にあるPiece を求める. | |
void | setTurn (Player player) |
Player | getTurn () const |
void | changeTurn () |
手番を変更する | |
void | makeMovePass () |
bool | isConsistent (bool showError=true) const |
template<bool showError> | |
bool | isAlmostValidMove (Move move) const |
エラー表示をするかどうかをtemplateパラメータにした高速化版 | |
bool | isAlmostValidMove (Move move, bool showError=true) const |
合法手かどうかを簡単に検査する.局面に依存するチェックのみ. ルール上指せない手である可能性がある場合は,isValidMove を用いる. | |
bool | isValidMove (Move move, bool showError=true) const |
合法手かどうかを検査する. isValidMoveByRule, isAlmostValidMove をおこなう. 玉の素抜きや王手を防いでいるか, 千日手,打歩詰かどうかは検査しない. | |
bool | isValidMoveByRule (Move move, bool showError) const |
盤面以外の部分の反則のチェック | |
bool | isEmptyBetween (Position from, Position to, Offset offset, bool pieceExistsAtTo=false) const |
bool | isEmptyBetween (Position from, Position to, bool noSpaceAtTo=false) const |
bool | dump () const |
dump: 自分を cerr に表示する。abort 前などにデバッグに使う | |
void | doSimpleMove (Position from, Position to, int promoteMask) |
void | doDropMove (Position to, Ptype ptype) |
void | doCaptureMove (Position from, Position to, Piece target, int promoteMask) |
const SimpleState | emulateCapture (Piece from, Player new_owner) const |
from で表現されたPieceをnew_ownerの持駒にした局面を作る. | |
const SimpleState | emulateHandPiece (Player from, Player to, Ptype ptype) const |
from からto に ptypeの持駒を一枚渡した局面を作る. | |
const SimpleState | rotate180 () const |
const SimpleState | flipHorizontal () const |
template<bool show_error> | |
bool | isAlmostValidMove (Move move) const |
Static Public 変数 | |
static const bool | hasPawnMask = true |
Protected メソッド | |
PieceMask & | standMask (Player p) |
Protected 変数 | |
CArray< Piece, Position::SIZE > | board |
CArray< Piece, Piece::SIZE > | pieces |
全てのpieceが登録されている | |
CArray< PieceMask, 2 > | stand_mask |
CArray< BitXmask, 2 > | pawnMask |
CArray< CArray< char, PTYPE_SIZE-PTYPE_BASIC_MIN >, 2 > | stand_count |
Player | turn |
手番 | |
PieceMask | used_mask |
Private 型 | |
typedef SimpleState | state_t |
Private メソッド | |
int | countPiecesOnStandBit (Player pl, Ptype ptype) const |
フレンド | |
class | osl::apply_move::ApplyDoUndoSimpleMove< BLACK, SimpleState > |
class | osl::apply_move::ApplyDoUndoSimpleMove< WHITE, SimpleState > |
class | osl::apply_move::ApplyDoUndoCaptureMove< BLACK, SimpleState > |
class | osl::apply_move::ApplyDoUndoCaptureMove< WHITE, SimpleState > |
class | osl::apply_move::ApplyDoUndoDropMove< BLACK, SimpleState > |
class | osl::apply_move::ApplyDoUndoDropMove< WHITE, SimpleState > |
class | osl::misc::FastCopier |
std::ostream & | operator<< (std::ostream &os, const SimpleState &state) |
bool | operator== (const SimpleState &st1, const SimpleState &st2) |
盤上の駒のみを比較する(持ち駒は見ない). |
simpleState.h の 39 行で定義されています。
typedef SimpleState osl::state::SimpleState::state_t [private] |
osl::state::NumEffectStateで再定義されています。
simpleState.h の 44 行で定義されています。
osl::state::SimpleState::SimpleState | ( | ) | [explicit] |
osl::state::SimpleState::SimpleState | ( | Handicap | h | ) | [explicit] |
virtual osl::state::SimpleState::~SimpleState | ( | ) | [virtual] |
void osl::state::SimpleState::changeTurn | ( | ) | [inline] |
手番を変更する
simpleState.h の 218 行で定義されています。
参照先 turn.
参照元 osl::apply_move::ApplyDoUndoCaptureMove< P, state::SimpleState >::doUndoCaptureMove(), osl::apply_move::ApplyDoUndoDropMove< P, state::SimpleState >::doUndoDropMove(), osl::apply_move::ApplyDoUndoSimpleMove< P, state::SimpleState >::doUndoSimpleMove(), makeMovePass(), osl::state::NumEffectState::makeMovePass(), と osl::state::HistoryState::unmakeMovePass().
(internal)
simpleState.h の 137 行で定義されています。
参照先 pawnMask.
参照元 osl::state::NumEffectState::doCaptureMove(), osl::state::NumEffectState::doSimpleMove(), osl::apply_move::ApplyDoUndoCaptureMove< P, state::SimpleState >::doUndoCaptureMove(), osl::apply_move::ApplyDoUndoDropMove< P, state::SimpleState >::doUndoDropMove(), と osl::apply_move::ApplyDoUndoSimpleMove< P, state::SimpleState >::doUndoSimpleMove().
int osl::state::SimpleState::countPiecesOnStand | ( | Player | pl | ) | const [inline] |
持駒の枚数を数える
simpleState.h の 174 行で定義されています。
参照先 osl::isBasic(), osl::PTYPE_BASIC_MIN, と stand_count.
参照元 countPiecesOnStand(), hasPieceOnStand(), PieceStandPredicate::match(), と osl::record::KanjiPrint::print().
int osl::state::SimpleState::countPiecesOnStandBit | ( | Player | pl, | |
Ptype | ptype | |||
) | const [inline, private] |
simpleState.h の 191 行で定義されています。
参照先 osl::PtypeTable::getIndex(), osl::PtypeTable::getMaskLow(), osl::Ptype_Table, と standMask().
void osl::state::SimpleState::doCaptureMove | ( | Position | from, | |
Position | to, | |||
Piece | target, | |||
int | promoteMask | |||
) |
osl::state::NumEffectStateで再定義されています。
osl::state::NumEffectStateで再定義されています。
osl::state::NumEffectStateで再定義されています。
bool osl::state::SimpleState::dump | ( | ) | const |
dump: 自分を cerr に表示する。abort 前などにデバッグに使う
参照元 osl::apply_move::ApplyDoUndoDropMove< P, state::SimpleState >::prologue().
const SimpleState osl::state::SimpleState::emulateCapture | ( | Piece | from, | |
Player | new_owner | |||
) | const |
from で表現されたPieceをnew_ownerの持駒にした局面を作る.
const SimpleState osl::state::SimpleState::emulateHandPiece | ( | Player | from, | |
Player | to, | |||
Ptype | ptype | |||
) | const |
from からto に ptypeの持駒を一枚渡した局面を作る.
const osl::state::SimpleState osl::state::SimpleState::flipHorizontal | ( | ) | const |
simpleState.h の 99 行で定義されています。
参照先 osl::BLACK, と osl::isValid().
const Piece osl::state::SimpleState::getKingPiece | ( | ) | const [inline] |
simpleState.h の 110 行で定義されています。
参照先 osl::BLACK, と osl::isValid().
Position osl::state::SimpleState::getKingPosition | ( | ) | const [inline] |
simpleState.h の 107 行で定義されています。
参照元 osl::eval::ml::King25Effect::countEffectAndPieces(), osl::eval::ml::King25EffectBoth::countEffectAndPiecesBoth(), osl::eval::ml::King25EmptyAbs< Opening >::evalOne(), osl::eval::ml::King8EffectBase::evalWithUpdateCommon(), osl::state::NumEffectState::findCheckPiece(), osl::state::NumEffectState::inCheck(), osl::state::NumEffectState::isConsistent(), main(), osl::state::NumEffectState::makePinOpen(), と osl::state::NumEffectState::recalcPinOpen().
pos | は isOnboardを満たす Position の12近傍(8近傍+桂馬の利き) ! isOnBoard(pos) の場合は PIECE_EDGE を返す |
simpleState.h の 160 行で定義されています。
参照先 board, と osl::Position::index().
参照元 osl::eval::ml::GoldFeatures::canRetreat(), osl::eval::ml::SilverFeatures::canRetreat(), osl::eval::ml::KnightAdvance::cantAdvance(), osl::eval::ml::King25EffectBoth::countEffectAndPiecesBoth(), osl::eval::ml::King25EmptyAbs< Opening >::evalOne(), osl::eval::ml::PawnAdvanceAll::evalWithUpdateBang(), osl::state::NumEffectState::forEachEffectOfPieceDir(), osl::state::NumEffectState::forEachEffectOfPieceLongDir(), getPieceOnBoard(), osl::state::NumEffectState::hasEffectByWithRemove(), isAlmostValidMove(), osl::state::NumEffectState::isAlmostValidMove(), isEmptyBetween(), osl::state::NumEffectState::makePinOpenDir(), nextPiece(), osl::state::operator==(), osl::apply_move::ApplyDoUndoCaptureMove< P, state::SimpleState >::prologue(), osl::apply_move::ApplyDoUndoSimpleMove< P, state::SimpleState >::prologue(), osl::state::NumEffectState::recalcPinOpen(), osl::state::NumEffectState::showEffect(), osl::search::StateElements::validCaptureMove(), と osl::search::StateElements::validSimpleMove().
const Piece osl::state::SimpleState::getPieceOf | ( | int | num | ) | const [inline] |
simpleState.h の 89 行で定義されています。
参照先 pieces.
参照元 osl::state::NumEffectState::effectPtype(), osl::state::NumEffectState::effectPtypeStrict(), osl::state::NumEffectState::findThreatenedPiece(), osl::state::NumEffectState::findThreatNotBy(), flipHorizontal(), osl::state::NumEffectState::forEachEffect(), osl::state::NumEffectState::forEachEffectPtype(), osl::state::NumEffectState::forEachOnBoard(), osl::state::NumEffectState::forEachOnBoardPtypeStrict(), getKingPiece(), osl::state::NumEffectState::hasEffectBy(), osl::state::NumEffectState::hasEffectByWithRemove(), osl::state::NumEffectState::hasEffectDir(), osl::state::NumEffectState::isConsistent(), isOnBoard(), osl::state::NumEffectState::longEffectOfDirection(), osl::state::NumEffectState::NumEffectState(), osl::apply_move::ApplyDoUndoDropMove< P, state::SimpleState >::prologue(), rotate180(), と osl::state::NumEffectState::selectCheapPiece().
simpleState.h の 161 行で定義されています。
参照先 board, と osl::Position::index().
Player osl::state::SimpleState::getTurn | ( | ) | const [inline] |
simpleState.h の 212 行で定義されています。
参照先 turn.
参照元 osl::ntesuki::NtesukiSimulationSearcher::attackForDisproof(), osl::ntesuki::NtesukiSimulationSearcher::attackForProof(), osl::ntesuki::NtesukiSimulationSearcher::defenseForDisproof(), osl::ntesuki::NtesukiSimulationSearcher::defenseForProof(), osl::state::NumEffectState::doCaptureMove(), osl::state::NumEffectState::doDropMove(), osl::state::NumEffectState::doSimpleMove(), flipHorizontal(), osl::state::NumEffectState::inCheck(), isAlmostValidMove(), osl::state::NumEffectState::isAlmostValidMove(), main(), osl::state::operator<<(), osl::record::KanjiPrint::print(), qsearch(), rotate180(), osl::ntesuki::NtesukiSimulationSearcher::startFromAttackProof(), osl::ntesuki::NtesukiSimulationSearcher::startFromDefenseDisproof(), と osl::ntesuki::NtesukiSimulationSearcher::startFromDefenseProof().
bool osl::state::SimpleState::hasPieceOnStand | ( | Player | P | ) | const [inline] |
simpleState.h の 187 行で定義されています。
参照先 countPiecesOnStand().
simpleState.h の 183 行で定義されています。
参照先 countPiecesOnStand().
参照元 isAlmostValidMove(), と osl::state::NumEffectState::isAlmostValidMove().
void osl::state::SimpleState::init | ( | Handicap | h | ) |
ハンディに応じた初期状態に初期化
void osl::state::SimpleState::init | ( | ) |
盤面が空の状態に初期化
void osl::state::SimpleState::initPawnMask | ( | ) |
参照元 flipHorizontal(), と rotate180().
bool osl::state::SimpleState::isAlmostValidMove | ( | Move | move | ) | const [inline] |
osl::state::NumEffectStateで再定義されています。
simpleState.cc の 303 行で定義されています。
参照先 osl::Move::capturePtype(), osl::Move::from(), osl::PtypeTable::getEffect(), getPieceAt(), getTurn(), hasPieceOnStand(), osl::EffectContent::hasUnblockableEffect(), osl::Piece::isEmpty(), isPawnMaskSet(), osl::Position::isPieceStand(), osl::Move::isPromote(), osl::Piece::isPromotedNotKingGold(), osl::Move::isValid(), isValidMoveByRule(), osl::EffectContent::offset(), osl::Piece::owner(), osl::PAWN, osl::Move::player(), osl::Piece::ptype(), osl::Move::ptype(), osl::Ptype_Table, osl::Piece::ptypeO(), osl::Move::to(), turn, osl::unpromote(), osl::Position::x(), と osl::Offset::zero().
bool osl::state::SimpleState::isAlmostValidMove | ( | Move | move, | |
bool | showError = true | |||
) | const |
合法手かどうかを簡単に検査する.局面に依存するチェックのみ. ルール上指せない手である可能性がある場合は,isValidMove を用いる.
局面に依存する検査でも,玉の素抜きや王手を防いでいるか, 千日手,打歩詰かどうかは検査しない.
osl::state::NumEffectStateで再定義されています。
bool osl::state::SimpleState::isAlmostValidMove | ( | Move | move | ) | const [inline] |
エラー表示をするかどうかをtemplateパラメータにした高速化版
osl::state::NumEffectStateで再定義されています。
bool osl::state::SimpleState::isConsistent | ( | bool | showError = true |
) | const |
bool osl::state::SimpleState::isEmptyBetween | ( | Position | from, | |
Position | to, | |||
bool | noSpaceAtTo = false | |||
) | const [inline] |
from | - マスの位置 | |
to | - マスの位置 fromとtoがクイーンで利きがある位置関係にあるという前提 で,間が全部空白かをチェック |
simpleState.h の 278 行で定義されています。
参照先 osl::Board_Table, osl::BoardTable::getShortOffset(), isEmptyBetween(), と osl::Position::isOnBoard().
bool osl::state::SimpleState::isEmptyBetween | ( | Position | from, | |
Position | to, | |||
Offset | offset, | |||
bool | pieceExistsAtTo = false | |||
) | const [inline] |
from | - マスの位置 | |
to | - マスの位置 | |
offset | - fromからtoへのshort offset fromとtoがクイーンで利きがある位置関係にあるという前提 で,間が全部空白かをチェック | |
pieceExistsAtTo | - toに必ず駒がある (toが空白でも動く) |
simpleState.h の 259 行で定義されています。
参照先 osl::Board_Table, getPieceAt(), osl::BoardTable::getShortOffset(), osl::Piece::isEmpty(), osl::Position::isOnBoard(), と osl::Offset::zero().
参照元 osl::state::NumEffectState::hasEffectFromTo(), isEmptyBetween(), osl::search::StateElements::validCaptureMove(), と osl::search::StateElements::validSimpleMove().
bool osl::state::SimpleState::isOffBoard | ( | int | num | ) | const [inline] |
simpleState.h の 131 行で定義されています。
参照先 osl::BLACK, standMask(), と osl::WHITE.
bool osl::state::SimpleState::isOnBoard | ( | int | num | ) | const [inline] |
simpleState.h の 168 行で定義されています。
参照先 getPieceOf(), と osl::Piece::isOnBoard().
bool osl::state::SimpleState::isPawnMaskSet | ( | int | x | ) | const [inline] |
bool osl::state::SimpleState::isPawnMaskSet | ( | Player | player, | |
int | x | |||
) | const [inline] |
simpleState.h の 145 行で定義されています。
参照先 pawnMask.
参照元 isAlmostValidMove(), と osl::state::NumEffectState::isAlmostValidMove().
bool osl::state::SimpleState::isValidMove | ( | Move | move, | |
bool | showError = true | |||
) | const |
合法手かどうかを検査する. isValidMoveByRule, isAlmostValidMove をおこなう. 玉の素抜きや王手を防いでいるか, 千日手,打歩詰かどうかは検査しない.
bool osl::state::SimpleState::isValidMoveByRule | ( | Move | move, | |
bool | showError | |||
) | const |
盤面以外の部分の反則のチェック
本来はstatic にできるが,急いでいるので後回し
参照元 isAlmostValidMove(), と osl::state::NumEffectState::isAlmostValidMove().
void osl::state::SimpleState::makeMovePass | ( | ) | [inline] |
diff方向にあるPiece を求める.
simpleState.h の 200 行で定義されています。
参照先 osl::Piece::EMPTY(), getPieceAt(), と osl::Offset::zero().
const osl::state::SimpleState osl::state::SimpleState::rotate180 | ( | ) | const |
simpleState.h の 118 行で定義されています。
参照先 board, と osl::Position::index().
参照元 osl::apply_move::ApplyDoUndoCaptureMove< P, state::SimpleState >::epilogue(), osl::apply_move::ApplyDoUndoDropMove< P, state::SimpleState >::epilogue(), osl::apply_move::ApplyDoUndoSimpleMove< P, state::SimpleState >::epilogue(), osl::apply_move::ApplyDoUndoCaptureMove< P, state::SimpleState >::prologue(), osl::apply_move::ApplyDoUndoDropMove< P, state::SimpleState >::prologue(), と osl::apply_move::ApplyDoUndoSimpleMove< P, state::SimpleState >::prologue().
(internal)
simpleState.h の 141 行で定義されています。
参照先 pawnMask.
参照元 osl::state::NumEffectState::doDropMove(), osl::apply_move::ApplyDoUndoCaptureMove< P, state::SimpleState >::doUndoCaptureMove(), osl::apply_move::ApplyDoUndoDropMove< P, state::SimpleState >::doUndoDropMove(), と osl::apply_move::ApplyDoUndoSimpleMove< P, state::SimpleState >::doUndoSimpleMove().
参照元 flipHorizontal(), と rotate180().
void osl::state::SimpleState::setPieceAll | ( | Player | player | ) |
void osl::state::SimpleState::setPieceOf | ( | int | num, | |
Piece | p | |||
) | [inline] |
simpleState.h の 92 行で定義されています。
参照先 pieces.
参照元 osl::apply_move::ApplyDoUndoCaptureMove< P, state::SimpleState >::epilogue(), osl::apply_move::ApplyDoUndoDropMove< P, state::SimpleState >::epilogue(), osl::apply_move::ApplyDoUndoSimpleMove< P, state::SimpleState >::epilogue(), osl::apply_move::ApplyDoUndoCaptureMove< P, state::SimpleState >::prologue(), osl::apply_move::ApplyDoUndoDropMove< P, state::SimpleState >::prologue(), と osl::apply_move::ApplyDoUndoSimpleMove< P, state::SimpleState >::prologue().
void osl::state::SimpleState::setTurn | ( | Player | player | ) | [inline] |
const PieceMask& osl::state::SimpleState::standMask | ( | Player | p | ) | const [inline] |
simpleState.h の 127 行で定義されています。
参照先 stand_mask.
PieceMask& osl::state::SimpleState::standMask | ( | Player | p | ) | [inline, protected] |
simpleState.h の 123 行で定義されています。
参照先 stand_mask.
参照元 countPiecesOnStandBit(), osl::apply_move::ApplyDoUndoCaptureMove< P, state::SimpleState >::epilogue(), osl::apply_move::ApplyDoUndoDropMove< P, state::SimpleState >::epilogue(), isOffBoard(), osl::apply_move::ApplyDoUndoCaptureMove< P, state::SimpleState >::prologue(), osl::apply_move::ApplyDoUndoDropMove< P, state::SimpleState >::prologue(), と osl::state::NumEffectState::showEffect().
const PieceMask& osl::state::SimpleState::usedMask | ( | ) | const [inline] |
simpleState.h の 130 行で定義されています。
参照先 used_mask.
std::ostream& operator<< | ( | std::ostream & | os, | |
const SimpleState & | state | |||
) | [friend] |
bool operator== | ( | const SimpleState & | st1, | |
const SimpleState & | st2 | |||
) | [friend] |
盤上の駒のみを比較する(持ち駒は見ない).
なお、駒番に非依存な局面比較をしたい場合は、oslrecord::CompactBoardや osl::hash::HashKeyを用いる.
friend class osl::apply_move::ApplyDoUndoCaptureMove< BLACK, SimpleState > [friend] |
simpleState.h の 71 行で定義されています。
friend class osl::apply_move::ApplyDoUndoCaptureMove< WHITE, SimpleState > [friend] |
simpleState.h の 72 行で定義されています。
friend class osl::apply_move::ApplyDoUndoDropMove< BLACK, SimpleState > [friend] |
simpleState.h の 73 行で定義されています。
friend class osl::apply_move::ApplyDoUndoDropMove< WHITE, SimpleState > [friend] |
simpleState.h の 74 行で定義されています。
friend class osl::apply_move::ApplyDoUndoSimpleMove< BLACK, SimpleState > [friend] |
simpleState.h の 69 行で定義されています。
friend class osl::apply_move::ApplyDoUndoSimpleMove< WHITE, SimpleState > [friend] |
simpleState.h の 70 行で定義されています。
friend class osl::misc::FastCopier [friend] |
osl::state::NumEffectStateで再定義されています。
simpleState.h の 75 行で定義されています。
CArray<Piece,Position::SIZE> osl::state::SimpleState::board [protected] |
simpleState.h の 52 行で定義されています。
参照元 getPieceAt(), getPiecePtr(), と setBoard().
const bool osl::state::SimpleState::hasPawnMask = true [static] |
simpleState.h の 46 行で定義されています。
CArray<BitXmask,2> osl::state::SimpleState::pawnMask [protected] |
simpleState.h の 62 行で定義されています。
参照元 clearPawn(), isPawnMaskSet(), osl::state::operator==(), と setPawn().
CArray<Piece,Piece::SIZE> osl::state::SimpleState::pieces [protected] |
全てのpieceが登録されている
simpleState.h の 60 行で定義されています。
参照元 osl::state::NumEffectState::findCheapThreatNotBy(), osl::state::NumEffectState::findThreatenedPiece(), osl::state::NumEffectState::findThreatNotBy(), osl::state::NumEffectState::forEachEffectNotBy(), getPieceOf(), osl::state::NumEffectState::selectCheapPiece(), と setPieceOf().
CArray<CArray<char,PTYPE_SIZE-PTYPE_BASIC_MIN>,2> osl::state::SimpleState::stand_count [protected] |
simpleState.h の 63 行で定義されています。
参照元 countPiecesOnStand(), osl::apply_move::ApplyDoUndoCaptureMove< P, state::SimpleState >::epilogue(), osl::apply_move::ApplyDoUndoDropMove< P, state::SimpleState >::epilogue(), osl::apply_move::ApplyDoUndoCaptureMove< P, state::SimpleState >::prologue(), と osl::apply_move::ApplyDoUndoDropMove< P, state::SimpleState >::prologue().
CArray<PieceMask,2> osl::state::SimpleState::stand_mask [protected] |
simpleState.h の 61 行で定義されています。
参照元 standMask().
Player osl::state::SimpleState::turn [protected] |
手番
simpleState.h の 66 行で定義されています。
参照元 changeTurn(), getTurn(), isAlmostValidMove(), osl::state::NumEffectState::isAlmostValidMove(), osl::state::operator==(), と setTurn().
PieceMask osl::state::SimpleState::used_mask [protected] |
simpleState.h の 67 行で定義されています。
参照元 usedMask().