osl::eval::ml::KingXBlockedYBase Class Reference

`#include <king8.h>`

Inheritance diagram for osl::eval::ml::KingXBlockedYBase:

## Public Types

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

## Static Public Member Functions

static const MultiIntPair | eval (const NumEffectState &state, const table_t &table)
static void | evalWithUpdateBang (const NumEffectState &state, Move laste_move, MultiIntPair &last_values_and_out)
template<osl::Player P>
static int | index (Square king, int diff)

## Static Private Member Functions

template<int Sign>
static void | adjust (int index, int index_y, MultiInt &out)

## Detailed Description

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

## Member Typedef Documentation

## table_t

typedef CArray<MultiInt, 90> osl::eval::ml::KingXBlockedYBase::table_t

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

## Member Enumeration Documentation

## anonymous enum

anonymous enum

Enumerator
DIM |

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

## Member Function Documentation

## adjust()

template<int Sign>

void osl::eval::ml::KingXBlockedYBase::adjust | ( | int | index,
|  | int | index_y,
|  | MultiInt & | out )

inline static private

Definition at line 812 of file king8.cc.

References index(), osl::eval::ml::KingXBlocked::table, and osl::eval::ml::KingXBlockedY::table.

Referenced by evalWithUpdateBang().

## eval()

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

static

Definition at line 742 of file king8.cc.

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

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

## evalWithUpdateBang()

void osl::eval::ml::KingXBlockedYBase::evalWithUpdateBang | ( | const NumEffectState & | state,
|  | Move | laste_move,
|  | MultiIntPair & | last_values_and_out )

inline static

Definition at line 823 of file king8.cc.

References adjust(), osl::eval::ml::KingXBothBlocked::adjust(), osl::BLACK, osl::Board_Mask_Table3x3, osl::NumEffectState::changedEffects(), osl::Move::from(), osl::eval::ml::KingXBlockedBase::index(), index(), osl::eval::ml::KingXBothBlocked::index(), osl::eval::ml::KingXBothBlocked::indexY(), osl::eval::ml::KingXBlockedBase::isBlocked(), osl::SimpleState::kingSquare(), osl::container::BoardMask::set(), osl::Move::to(), and osl::WHITE.

Referenced by osl::eval::ml::KingXBlockedBoth::evalWithUpdateBang().

## index()

template<osl::Player P>

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

inline static

Definition at line 879 of file king8.cc.

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

Referenced by adjust(), eval(), and evalWithUpdateBang().

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

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