My Project
osl::move_probability::StateInfo Struct Reference

#include <stateInfo.h>

Public Types

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

Public Member Functions

 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 Member Functions

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

Public Attributes

const NumEffectStatestate
const MoveStackhistory
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::SIZEpattern_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 Member Functions

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

Detailed Description

Definition at line 20 of file stateInfo.h.

Member Typedef Documentation

◆ long_attack_t

◆ pattern_square_t

Definition at line 29 of file stateInfo.h.

◆ pinned_gs_t

Constructor & Destructor Documentation

◆ StateInfo() [1/2]

osl::move_probability::StateInfo::StateInfo ( )
inline

Definition at line 47 of file stateInfo.h.

References dirty, history, progress16, and state.

◆ StateInfo() [2/2]

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

Definition at line 50 of file stateInfo.h.

References clearOldCache(), dirty, finishUpdate(), history, progress16, state, and threatmate_move.

Member Function Documentation

◆ clearOldCache()

◆ findCheckmateDefender()

◆ findShortThreatmate()

◆ finishUpdate()

◆ king8Info()

King8Info osl::move_probability::StateInfo::king8Info ( Player pl) const
inline

Definition at line 88 of file stateInfo.h.

References state.

Referenced by clearOldCache(), and osl::move_probability::KingBlockade::match().

◆ makeLongAttacks()

void osl::move_probability::StateInfo::makeLongAttacks ( )
private

◆ makePinOfLongPieces()

◆ pinByOpposingSliders()

bool osl::move_probability::StateInfo::pinByOpposingSliders ( Piece p) const
inline

◆ progress8()

◆ reset()

void osl::move_probability::StateInfo::reset ( const NumEffectState & s,
Progress16 p,
const MoveStack & h,
Move threatmate_move = Move() )
inline

Definition at line 73 of file stateInfo.h.

References finishUpdate(), reset0(), reset1(), setThreatmate(), and threatmate_move.

◆ reset0()

void osl::move_probability::StateInfo::reset0 ( const NumEffectState & s,
Progress16 p )
inline

Definition at line 58 of file stateInfo.h.

References clearOldCache(), dirty, king8_long_pieces, long_attack_cache, pin_by_opposing_sliders, progress16, and state.

Referenced by reset().

◆ reset1()

void osl::move_probability::StateInfo::reset1 ( const MoveStack & h)
inline

Definition at line 68 of file stateInfo.h.

References history.

Referenced by reset().

◆ setThreatmate()

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

Definition at line 81 of file stateInfo.h.

References threatmate_move.

Referenced by reset().

◆ updateDelayed()

void osl::move_probability::StateInfo::updateDelayed ( )
private

◆ updatePinnedGenerals()

Member Data Documentation

◆ attack_shadow

◆ bookmove

CArray<Move,2> osl::move_probability::StateInfo::bookmove

Definition at line 44 of file stateInfo.h.

Referenced by clearOldCache(), finishUpdate(), and osl::move_probability::BookMove::match().

◆ changed_effects

BoardMask osl::move_probability::StateInfo::changed_effects

◆ checkmate_defender

◆ copy

NumEffectState osl::move_probability::StateInfo::copy
mutable

◆ dirty

bool osl::move_probability::StateInfo::dirty

◆ exchange_pins

CArray<pinned_gs_t,2> osl::move_probability::StateInfo::exchange_pins

◆ history

◆ king8_long_pieces

PieceVector osl::move_probability::StateInfo::king8_long_pieces

◆ last_add_effect

PieceMask osl::move_probability::StateInfo::last_add_effect

◆ last_move_ptype5

Ptype osl::move_probability::StateInfo::last_move_ptype5

◆ long_attack_cache

CArray2d<long_attack_t,40,8> osl::move_probability::StateInfo::long_attack_cache

◆ move_candidate_exists

CArray<bool,2> osl::move_probability::StateInfo::move_candidate_exists

◆ pattern_cache

◆ pin

◆ pin_by_opposing_sliders

◆ possible_threatmate_ptype

unsigned int osl::move_probability::StateInfo::possible_threatmate_ptype

Definition at line 43 of file stateInfo.h.

Referenced by clearOldCache(), and osl::move_probability::ThreatmateByCapture::match().

◆ progress16

Progress16 osl::move_probability::StateInfo::progress16

◆ sendoffs

Square8 osl::move_probability::StateInfo::sendoffs

◆ state

const NumEffectState* osl::move_probability::StateInfo::state

Definition at line 22 of file stateInfo.h.

Referenced by osl::move_probability::AddEffectLong::addOne(), osl::move_probability::BishopAttack::addOne(), osl::move_probability::King5x5Ptype::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(), osl::move_probability::BlockLong::findAll(), findCheckmateDefender(), findShortThreatmate(), finishUpdate(), osl::move_probability::FeatureSet::generateRating(), king8Info(), osl::move_probability::BlockLong::makeLongAttackOne(), makePinOfLongPieces(), osl::move_probability::AttackFromOpposingSliders::match(), osl::move_probability::AttackKing8Long::match(), osl::move_probability::AttackToOpposingSliders::match(), osl::move_probability::BreakThreatmate::match(), osl::move_probability::CapturePtype::match(), osl::move_probability::CheckFeature::match(), osl::move_probability::CheckmateIfCapture::match(), osl::move_probability::CoverFork::match(), osl::move_probability::CoverPawn::match(), osl::move_probability::DropAfterOpposingPawn::match(), osl::move_probability::EscapeThreatened::match(), osl::move_probability::FromEffect::match(), osl::move_probability::FromEffectLong::match(), osl::move_probability::King5x5Ptype::match(), osl::move_probability::KingBlockade::match(), osl::move_probability::KingRelativeX::match(), osl::move_probability::KingRelativeY::match(), osl::move_probability::LanceAttack::match(), osl::move_probability::LongRecapture::match(), osl::move_probability::LureDefender::match(), osl::move_probability::MoveFromOpposingSliders::match(), osl::move_probability::OpposingPawn::match(), osl::move_probability::PawnAttack::match(), osl::move_probability::PromotionBySacrifice::match(), osl::move_probability::RookAttack::match(), osl::move_probability::SacrificeAttack::match(), osl::move_probability::ToEffectLong::match(), osl::move_probability::PawnAttack::matchPtype(), osl::move_probability::operator==(), reset0(), StateInfo(), StateInfo(), osl::move_probability::ToEffect::supportAttack(), osl::move_probability::BlockLong::updateCache(), osl::move_probability::PatternCommon::updateCacheOne(), and updatePinnedGenerals().

◆ threatened

◆ threatmate_move


The documentation for this struct was generated from the following files: