My Project
Public Types | Static Public Member Functions | Static Private Member Functions | Static Private Attributes | List of all members
osl::eval::ml::NonPawnAttackedPtype Class Reference

#include <minorPiece.h>

Public Types

enum  { ONE_DIM = 1024 , DIM = ONE_DIM * EvalStages }
 

Static Public Member Functions

static void setUp (const Weights &weights)
 
static void eval (const NumEffectState &state, CArray< PieceMask, 40 > &attacked_mask, MultiIntPair &out)
 
template<Player P>
static void evalWithUpdateBang (const NumEffectState &state, Move moved, const CArray< PieceMask, 2 > &effected_mask, CArray< PieceMask, 40 > &attacked_mask, MultiIntPair &last_value_and_out)
 

Static Private Member Functions

static int index (bool same_turn, bool has_support, Ptype ptype, Ptype attack_ptype)
 
template<int Sign>
static void adjust (int black, int white, MultiIntPair &result)
 
template<bool Plus>
static void evalOnePiece (const Player player, const Ptype ptype, const Ptype attack_ptype, bool with_support, MultiIntPair &result)
 
template<Player P>
static void updateChanged (const NumEffectState &state, const Piece p, Move moved, int captured_number, const CArray< PieceMask, 2 > &effected_mask, const CArray< PieceMask, 2 > &new_mask, CArray< PieceMask, 40 > &attacked_mask, MultiIntPair &result)
 

Static Private Attributes

static CArray< MultiInt, 1024 > table
 

Detailed Description

Definition at line 1099 of file minorPiece.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
ONE_DIM 
DIM 

Definition at line 1102 of file minorPiece.h.

Member Function Documentation

◆ adjust()

template<int Sign>
static void osl::eval::ml::NonPawnAttackedPtype::adjust ( int  black,
int  white,
MultiIntPair result 
)
inlinestaticprivate

Definition at line 1122 of file minorPiece.h.

References osl::BLACK, table, and osl::WHITE.

Referenced by evalOnePiece().

◆ eval()

void osl::eval::ml::NonPawnAttackedPtype::eval ( const NumEffectState state,
CArray< PieceMask, 40 > &  attacked_mask,
MultiIntPair out 
)
static

◆ evalOnePiece()

template<bool Plus>
static void osl::eval::ml::NonPawnAttackedPtype::evalOnePiece ( const Player  player,
const Ptype  ptype,
const Ptype  attack_ptype,
bool  with_support,
MultiIntPair result 
)
inlinestaticprivate

Definition at line 1134 of file minorPiece.h.

References adjust(), osl::BLACK, index(), and osl::WHITE.

◆ evalWithUpdateBang()

template<osl::Player P>
template void osl::eval::ml::NonPawnAttackedPtype::evalWithUpdateBang< WHITE > ( const NumEffectState state,
Move  moved,
const CArray< PieceMask, 2 > &  effected_mask,
CArray< PieceMask, 40 > &  attacked_mask,
MultiIntPair last_value_and_out 
)
static

◆ index()

static int osl::eval::ml::NonPawnAttackedPtype::index ( bool  same_turn,
bool  has_support,
Ptype  ptype,
Ptype  attack_ptype 
)
inlinestaticprivate

Definition at line 1115 of file minorPiece.h.

References osl::PTYPE_SIZE.

Referenced by evalOnePiece().

◆ setUp()

void osl::eval::ml::NonPawnAttackedPtype::setUp ( const Weights weights)
static

Definition at line 1441 of file minorPiece.cc.

References osl::NStages, and osl::eval::ml::Weights::value().

◆ updateChanged()

template<Player P>
static void osl::eval::ml::NonPawnAttackedPtype::updateChanged ( const NumEffectState state,
const Piece  p,
Move  moved,
int  captured_number,
const CArray< PieceMask, 2 > &  effected_mask,
const CArray< PieceMask, 2 > &  new_mask,
CArray< PieceMask, 40 > &  attacked_mask,
MultiIntPair result 
)
inlinestaticprivate

Member Data Documentation

◆ table

osl::CArray< MultiInt, 1024 > osl::eval::ml::NonPawnAttackedPtype::table
staticprivate

Definition at line 1344 of file minorPiece.h.

Referenced by adjust().


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