osl::eval::ml::NonPawnAttackedPtypePair Class Reference

`#include <minorPiece.h>`

## Public Types

enum | { ONE_DIM = (PTYPE_SIZE * 2 * PTYPE_SIZE)*(PTYPE_SIZE * 2 * PTYPE_SIZE) , DIM = ONE_DIM * EvalStages }

## Public Member Functions

template<osl::Player Owner>
osl::MultiInt | evalOne (const NumEffectState &state)

## Static Public Member Functions

static void | setUp (const Weights &weights)
template<Player Owner>
static MultiInt | evalOne (const NumEffectState &state)
static MultiInt | eval (const NumEffectState &state)
static int | index1 (const NumEffectState &state, Piece piece)
static int | index2 (int i0, int i1)

## Static Public Attributes

static CArray< MultiInt, ONE_DIM > | table

## Detailed Description

Definition at line 1347 of file minorPiece.h.

## Member Enumeration Documentation

## anonymous enum

anonymous enum

Enumerator
ONE_DIM |
DIM |

Definition at line 1350 of file minorPiece.h.

## Member Function Documentation

## eval()

osl::MultiInt osl::eval::ml::NonPawnAttackedPtypePair::eval | ( | const NumEffectState & | state | ) |

static

Definition at line 1684 of file minorPiece.cc.

References evalOne().

Referenced by osl::eval::ml::OpenMidEndingEval::debugInfo(), evalOne(), osl::eval::ml::OpenMidEndingEval::OpenMidEndingEval(), and osl::eval::ml::OpenMidEndingEval::updateSub().

## evalOne() [1/2]

template<osl::Player Owner>

osl::MultiInt osl::eval::ml::NonPawnAttackedPtypePair::evalOne | ( | const NumEffectState & | state | ) |

Definition at line 1656 of file minorPiece.cc.

References osl::alt(), osl::PieceMask::any(), osl::BLACK, osl::PieceMask::clearBit(), osl::NumEffectState::effectedMask(), osl::PieceMask::getMask(), index1(), index2(), osl::SimpleState::kingPiece(), osl::Piece::number(), osl::PieceMask::orMask(), osl::PAWN, osl::SimpleState::pieceOf(), osl::NumEffectState::piecesOnBoard(), osl::NumEffectState::promotedPieces(), osl::FixedCapacityVector< T, Capacity >::push_back(), osl::PieceMask::reset(), osl::PieceMask::selectBit(), osl::FixedCapacityVector< T, Capacity >::size(), table, and osl::container::PieceMask64::takeOneBit().

## evalOne() [2/2]

template<Player Owner>

MultiInt osl::eval::ml::NonPawnAttackedPtypePair::evalOne | ( | const NumEffectState & | state | ) |

static

References eval().

Referenced by eval().

## index1()

int osl::eval::ml::NonPawnAttackedPtypePair::index1 | ( | const NumEffectState & | state,
|  | Piece | piece )

inline static

Definition at line 1358 of file minorPiece.h.

References osl::alt(), osl::NumEffectState::findCheapAttack(), osl::NumEffectState::hasEffectAt(), osl::Piece::owner(), osl::Piece::ptype(), osl::PTYPE_SIZE, and osl::Piece::square().

Referenced by evalOne().

## index2()

int osl::eval::ml::NonPawnAttackedPtypePair::index2 | ( | int | i0,
|  | int | i1 )

inline static

Definition at line 1367 of file minorPiece.h.

References osl::PTYPE_SIZE.

Referenced by evalOne(), setUp(), and osl::progress::ml::NewProgress::setUp().

## setUp()

void osl::eval::ml::NonPawnAttackedPtypePair::setUp | ( | const Weights & | weights | ) |

static

Definition at line 1643 of file minorPiece.cc.

References index2(), osl::NStages, ONE_DIM, osl::PTYPE_SIZE, table, and osl::eval::ml::Weights::value().

## Member Data Documentation

## table

osl::CArray< osl::MultiInt, 512 *512 > osl::eval::ml::NonPawnAttackedPtypePair::table

static

Definition at line 1371 of file minorPiece.h.

Referenced by evalOne(), and setUp().

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

- minorPiece.h
- minorPiece.cc