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

構造体 osl::move_probability::StateInfo

#include <stateInfo.h>

osl::move_probability::StateInfoのコラボレーション図
Collaboration graph
[凡例]

すべてのメンバ一覧

Public 型

typedef FixedCapacityVector
< int, 8 > 
long_attack_t
typedef CArray< int, 16 > pattern_square_t
typedef FixedCapacityVector
< PinnedGeneral, 64 > 
pinned_gs_t

Public メソッド

 StateInfo ()
 StateInfo (const NumEffectState &s, Progress16 p, const MoveStack &h, Move t=Move())
void reset0 (const NumEffectState &s, Progress16 p)
void reset1 (const MoveStack &h)
void finishUpdate ()
void reset (const NumEffectState &s, Progress16 p, const MoveStack &h, Move threatmate_move=Move())
void setThreatmate (Move move)
bool pinByOpposingSliders (Piece p) const
King8Info king8Info (Player pl) const
int progress8 () const

Static Public メソッド

static std::pair< Piece, SquarefindCheckmateDefender (const NumEffectState &state, Player king)
static Move findShortThreatmate (const NumEffectState &, Move last_move)

Public 変数

const NumEffectStatestate
const MoveStack * history
Progress16 progress16
PieceVector pin_by_opposing_sliders
PieceVector king8_long_pieces
CArray< Piece, 2 > threatened
CArray2d< long_attack_t, 40, 8 > long_attack_cache
CArray< pattern_square_t,
Square::SIZE > 
pattern_cache
CArray2d< bool, 40, 2 > attack_shadow
PieceMask last_add_effect
Ptype last_move_ptype5
CArray< PieceMask, 2 > pin
Move threatmate_move
Square8 sendoffs
CArray< pinned_gs_t, 2 > exchange_pins
CArray< bool, 2 > move_candidate_exists
NumEffectState copy
BoardMask changed_effects
CArray< std::pair< Piece,
Square >, 2 > 
checkmate_defender
unsigned int possible_threatmate_ptype
CArray< Move, 2 > bookmove
bool dirty

Private メソッド

void clearOldCache ()
void updateDelayed ()
void makePinOfLongPieces ()
void makeLongAttacks ()
void updatePinnedGenerals (Player owner)

説明

stateInfo.h20 行で定義されています。


型定義

stateInfo.h27 行で定義されています。

stateInfo.h29 行で定義されています。

stateInfo.h37 行で定義されています。


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

osl::move_probability::StateInfo::StateInfo (  )  [inline]

stateInfo.h47 行で定義されています。

osl::move_probability::StateInfo::StateInfo ( const NumEffectState s,
Progress16  p,
const MoveStack &  h,
Move  t = Move() 
) [inline]

stateInfo.h50 行で定義されています。

参照先 clearOldCache(), finishUpdate(), と threatmate_move.


関数

void osl::move_probability::StateInfo::clearOldCache (  )  [private]
std::pair< osl::Piece, osl::Square > osl::move_probability::StateInfo::findCheckmateDefender ( const NumEffectState state,
Player  king 
) [static]
osl::Move osl::move_probability::StateInfo::findShortThreatmate ( const NumEffectState state,
Move  last_move 
) [static]
void osl::move_probability::StateInfo::finishUpdate (  ) 
King8Info osl::move_probability::StateInfo::king8Info ( Player  pl  )  const [inline]

stateInfo.h88 行で定義されています。

参照先 osl::NumEffectState::Iking8Info(), と state.

参照元 clearOldCache(), と osl::move_probability::KingBlockade::match().

void osl::move_probability::StateInfo::makeLongAttacks (  )  [private]
void osl::move_probability::StateInfo::makePinOfLongPieces (  )  [private]
bool osl::move_probability::StateInfo::pinByOpposingSliders ( Piece  p  )  const [inline]
int osl::move_probability::StateInfo::progress8 (  )  const [inline]
void osl::move_probability::StateInfo::reset ( const NumEffectState s,
Progress16  p,
const MoveStack &  h,
Move  threatmate_move = Move() 
) [inline]

stateInfo.h73 行で定義されています。

参照先 finishUpdate(), reset0(), reset1(), setThreatmate(), と threatmate_move.

void osl::move_probability::StateInfo::reset0 ( const NumEffectState s,
Progress16  p 
) [inline]
void osl::move_probability::StateInfo::reset1 ( const MoveStack &  h  )  [inline]

stateInfo.h68 行で定義されています。

参照先 history.

参照元 reset().

void osl::move_probability::StateInfo::setThreatmate ( Move  move  )  [inline]

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

参照先 threatmate_move.

参照元 reset().

void osl::move_probability::StateInfo::updateDelayed (  )  [private]
void osl::move_probability::StateInfo::updatePinnedGenerals ( Player  owner  )  [private]

変数

stateInfo.h44 行で定義されています。

参照元 clearOldCache(), finishUpdate(), と osl::move_probability::BookMove::match().

stateInfo.h41 行で定義されています。

参照元 clearOldCache(), と osl::move_probability::PatternCommon::updateCacheOne().

stateInfo.h45 行で定義されています。

参照元 finishUpdate(), osl::move_probability::FeatureSet::generateRating(), と reset0().

stateInfo.h43 行で定義されています。

参照元 clearOldCache(), と osl::move_probability::ThreatmateByCapture::match().

stateInfo.h24 行で定義されています。

参照元 osl::move_probability::operator==(), progress8(), と reset0().

stateInfo.h22 行で定義されています。

参照元 osl::move_probability::King5x5Ptype::addOne(), osl::move_probability::BishopAttack::addOne(), osl::move_probability::AddEffectLong::addOne(), osl::move_probability::PatternCommon::addOne(), osl::move_probability::BlockLong::addPiece(), osl::move_probability::MoveInfo::adhocAdjustAttackCheckmateDefender(), osl::move_probability::MoveInfo::adhocAdjustBishopFork(), osl::move_probability::MoveInfo::adhocAdjustBreakThreatmate(), osl::move_probability::MoveInfo::adhocAdjustKeepCheckmateDefender(), osl::move_probability::MoveInfo::adhocAdjustSlider(), clearOldCache(), osl::move_probability::BlockLong::findAll(), finishUpdate(), osl::move_probability::FeatureSet::generateRating(), king8Info(), osl::move_probability::BlockLong::makeLongAttackOne(), makePinOfLongPieces(), osl::move_probability::EscapeThreatened::match(), osl::move_probability::PromotionBySacrifice::match(), osl::move_probability::CoverFork::match(), osl::move_probability::KingBlockade::match(), osl::move_probability::King5x5Ptype::match(), osl::move_probability::SacrificeAttack::match(), osl::move_probability::CoverPawn::match(), osl::move_probability::DropAfterOpposingPawn::match(), osl::move_probability::OpposingPawn::match(), osl::move_probability::AttackKing8Long::match(), osl::move_probability::CheckmateIfCapture::match(), osl::move_probability::LureDefender::match(), osl::move_probability::BreakThreatmate::match(), osl::move_probability::LanceAttack::match(), osl::move_probability::LongRecapture::match(), osl::move_probability::PawnAttack::match(), osl::move_probability::AttackToOpposingSliders::match(), osl::move_probability::AttackFromOpposingSliders::match(), osl::move_probability::MoveFromOpposingSliders::match(), osl::move_probability::ToEffectLong::match(), osl::move_probability::FromEffectLong::match(), osl::move_probability::FromEffect::match(), osl::move_probability::KingRelativeX::match(), osl::move_probability::KingRelativeY::match(), osl::move_probability::CapturePtype::match(), osl::move_probability::CheckFeature::match(), osl::move_probability::PawnAttack::matchPtype(), osl::move_probability::operator==(), reset0(), osl::move_probability::ToEffect::supportAttack(), osl::move_probability::BlockLong::updateCache(), osl::move_probability::PatternCommon::updateCacheOne(), と updatePinnedGenerals().


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