osl::eval::ml::KingXBlockedBase Struct Reference

`#include <king8.h>`

Inheritance diagram for osl::eval::ml::KingXBlockedBase:

## Public Types

enum | { DIM = 10 }
typedef CArray< MultiInt, 10 > | table_t

## Static Public Member Functions

static const MultiIntPair | eval (const NumEffectState &state, const table_t &table)
template<osl::Player P>
static int | index (Square king, int diff)
template<osl::Player P>
static bool | isBlocked (const NumEffectState &state, int diff)

## Detailed Description

Definition at line 180 of file core/osl/eval/king8.h.

## Member Typedef Documentation

## table_t

typedef CArray<MultiInt, 10> osl::eval::ml::KingXBlockedBase::table_t

Definition at line 183 of file core/osl/eval/king8.h.

## Member Enumeration Documentation

## anonymous enum

anonymous enum

Enumerator
DIM |

Definition at line 182 of file core/osl/eval/king8.h.

## Member Function Documentation

## eval()

const MultiIntPair osl::eval::ml::KingXBlockedBase::eval | ( | const NumEffectState & | state,
|  | const table_t & | table )

static

Definition at line 723 of file king8.cc.

References osl::BLACK, index(), isBlocked(), osl::SimpleState::kingSquare(), osl::playerToIndex(), and osl::WHITE.

Referenced by osl::eval::ml::KingXBlocked::eval().

## index()

template<osl::Player P>

int osl::eval::ml::KingXBlockedBase::index | ( | Square | king,
|  | int | diff )

static

Definition at line 669 of file king8.cc.

References osl::BLACK, and osl::Square::x().

Referenced by eval(), and osl::eval::ml::KingXBlockedYBase::evalWithUpdateBang().

## isBlocked()

template<osl::Player P>

bool osl::eval::ml::KingXBlockedBase::isBlocked | ( | const NumEffectState & | state,
|  | int | diff )

static

Definition at line 692 of file king8.cc.

References osl::alt(), osl::BLACK, osl::NumEffectState::hasEffectAt(), osl::NumEffectState::Iking8Info(), osl::Piece::isEdge(), osl::Piece::isOnBoardByOwner(), osl::SimpleState::kingSquare(), osl::checkmate::King8Info::liberty(), osl::DirectionTraits< Dir >::mask, osl::SimpleState::pieceAt(), osl::WHITE, osl::Square::x(), and osl::Square::y().

Referenced by eval(), osl::eval::ml::KingXBlockedYBase::eval(), and osl::eval::ml::KingXBlockedYBase::evalWithUpdateBang().

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

- core/osl/eval/king8.h
- king8.cc