All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Types | Public Member Functions | Static Public Member Functions | Static Private Member Functions | Static Private Attributes | List of all members
osl::eval::ml::NonPawnAttackedPtype Class Reference

#include <minorPiece.h>

Collaboration diagram for osl::eval::ml::NonPawnAttackedPtype:
Collaboration graph
[legend]

Public Types

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

Public Member Functions

template<osl::Player P>
void evalWithUpdateBang (const NumEffectState &state, Move moved, const CArray< PieceMask, 2 > &effected, CArray< PieceMask, 40 > &attacked_mask, MultiIntPair &result)
 

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 1102 of file minorPiece.h.

Member Enumeration Documentation

anonymous enum
Enumerator
ONE_DIM 
DIM 

Definition at line 1105 of file minorPiece.h.

Member Function Documentation

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

Definition at line 1125 of file minorPiece.h.

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

Referenced by evalOnePiece().

void osl::eval::ml::NonPawnAttackedPtype::eval ( const NumEffectState &  state,
CArray< PieceMask, 40 > &  attacked_mask,
MultiIntPair out 
)
static
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 1137 of file minorPiece.h.

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

template<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
template<osl::Player P>
void osl::eval::ml::NonPawnAttackedPtype::evalWithUpdateBang ( const NumEffectState &  state,
Move  moved,
const CArray< PieceMask, 2 > &  effected,
CArray< PieceMask, 40 > &  attacked_mask,
MultiIntPair result 
)
static int osl::eval::ml::NonPawnAttackedPtype::index ( bool  same_turn,
bool  has_support,
Ptype  ptype,
Ptype  attack_ptype 
)
inlinestaticprivate

Definition at line 1118 of file minorPiece.h.

References osl::PTYPE_SIZE.

Referenced by evalOnePiece().

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

Definition at line 1442 of file minorPiece.cc.

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

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

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

Definition at line 1347 of file minorPiece.h.

Referenced by adjust().


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