osl::move_probability::KingBlockade Class Reference

`#include <feature.h>`

Inheritance diagram for osl::move_probability::KingBlockade:

## Public Types

enum | { StandCount = SacrificeAttack::StandCount , BlockLastOne = 0 , BlockFront = 1 , BlockSideWide = 2 , BlockSideOther = 3 , BlockBack = 4 , DIM = 5 * StandCount }

## Public Member Functions

| KingBlockade ()
double | match (const StateInfo &si, const MoveInfo &mi, int offset, const double *w) const
Public Member Functions inherited from osl::move_probability::Feature
| Feature (std::string n, size_t d)
virtual | ~Feature ()
std::string | name () const
size_t | dimension () const

## Static Public Member Functions

static bool | blockAll (const King8Info &ki, Square king, Move move, const NumEffectState &state, const CArray< Direction, 3 > &directions)
Static Public Member Functions inherited from osl::move_probability::Feature
static int | classifyEffect9 (const NumEffectState &state, Player player, Square to)

## Detailed Description

Definition at line 1463 of file move_probability/feature.h.

## Member Enumeration Documentation

## anonymous enum

anonymous enum

Enumerator
StandCount |
BlockLastOne |
BlockFront |
BlockSideWide |
BlockSideOther |
BlockBack |
DIM |

Definition at line 1466 of file move_probability/feature.h.

## Constructor & Destructor Documentation

## KingBlockade()

osl::move_probability::KingBlockade::KingBlockade | ( |  | ) |

inline

Definition at line 1472 of file move_probability/feature.h.

References DIM, and osl::move_probability::Feature::Feature().

## Member Function Documentation

## blockAll()

bool osl::move_probability::KingBlockade::blockAll | ( | const King8Info & | ki,
|  | Square | king,
|  | Move | move,
|  | const NumEffectState & | state,
|  | const CArray< Direction, 3 > & | directions )

inline static

Definition at line 1475 of file move_probability/feature.h.

References osl::alt(), osl::Board_Table, osl::NumEffectState::hasEffectIf(), osl::checkmate::King8Info::liberty(), osl::Move::ptypeO(), osl::Move::to(), and osl::SimpleState::turn().

Referenced by match().

## match()

double osl::move_probability::KingBlockade::match | ( | const StateInfo & | si,
|  | const MoveInfo & | mi,
|  | int | offset,
|  | const double * | w ) const

inline virtual

Implements osl::move_probability::Feature.

Definition at line 1490 of file move_probability/feature.h.

References osl::alt(), osl::BLACK, blockAll(), BlockBack, BlockFront, BlockLastOne, BlockSideOther, BlockSideWide, osl::Board_Table, osl::misc::BitOp::bsf(), osl::D, osl::DL, osl::DR, osl::Neighboring8Direct::hasEffect(), osl::NumEffectState::hasEffectIf(), osl::move_probability::StateInfo::king8Info(), osl::SimpleState::kingSquare(), osl::L, osl::checkmate::King8Info::liberty(), osl::checkmate::King8Info::libertyCount(), osl::move_probability::MoveInfo::move, osl::move_probability::MoveInfo::player, osl::Move::ptypeO(), osl::R, osl::move_probability::MoveInfo::standIndex(), osl::move_probability::StateInfo::state, osl::Move::to(), osl::U, osl::UL, osl::UR, osl::WHITE, and osl::Square::x().

The documentation for this class was generated from the following file:

- move_probability/feature.h