My Project
osl::eval::ml::GoldAndSilverNearKing Class Reference

#include <minorPiece.h>

Public Types

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

Public Member Functions

template<osl::Player P>
osl::MultiInt evalOne (const NumEffectState &state, const CArray2d< int, 2, 3 > &gs_count)

Static Public Member Functions

static void setUp (const Weights &weights)
static MultiInt eval (const NumEffectState &state, const CArray2d< int, 2, 3 > &gs_count)

Static Private Member Functions

template<Player Defense>
static int index (const Square king, int distance0, int count)
template<Player P>
static MultiInt evalOne (const NumEffectState &state, const CArray2d< int, 2, 3 > &gs_count)
template<Player Defense>
static int indexCombination (const Square king, int count0, int count1, int count2)

Static Private Attributes

static CArray< MultiInt, 1215 > table
static CArray< MultiInt, 9720 > combination_table

Friends

class GoldAndSilverNearKingCombination

Detailed Description

Definition at line 1563 of file minorPiece.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
ONE_DIM 
DIM 

Definition at line 1567 of file minorPiece.h.

Member Function Documentation

◆ eval()

osl::MultiInt osl::eval::ml::GoldAndSilverNearKing::eval ( const NumEffectState & state,
const CArray2d< int, 2, 3 > & gs_count )
static

◆ evalOne() [1/2]

template<osl::Player P>
osl::MultiInt osl::eval::ml::GoldAndSilverNearKing::evalOne ( const NumEffectState & state,
const CArray2d< int, 2, 3 > & gs_count )

◆ evalOne() [2/2]

template<Player P>
MultiInt osl::eval::ml::GoldAndSilverNearKing::evalOne ( const NumEffectState & state,
const CArray2d< int, 2, 3 > & gs_count )
staticprivate

Referenced by eval().

◆ index()

template<Player Defense>
int osl::eval::ml::GoldAndSilverNearKing::index ( const Square king,
int distance0,
int count )
inlinestaticprivate

Definition at line 1573 of file minorPiece.h.

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

Referenced by evalOne().

◆ indexCombination()

template<Player Defense>
int osl::eval::ml::GoldAndSilverNearKing::indexCombination ( const Square king,
int count0,
int count1,
int count2 )
inlinestaticprivate

Definition at line 1583 of file minorPiece.h.

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

Referenced by evalOne().

◆ setUp()

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

Definition at line 2206 of file minorPiece.cc.

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

◆ GoldAndSilverNearKingCombination

friend class GoldAndSilverNearKingCombination
friend

Definition at line 1565 of file minorPiece.h.

References GoldAndSilverNearKingCombination.

Referenced by GoldAndSilverNearKingCombination.

Member Data Documentation

◆ combination_table

osl::CArray< osl::MultiInt, 9720 > osl::eval::ml::GoldAndSilverNearKing::combination_table
staticprivate

◆ table

osl::CArray< osl::MultiInt, 1215 > osl::eval::ml::GoldAndSilverNearKing::table
staticprivate

Definition at line 1591 of file minorPiece.h.

Referenced by evalOne(), and setUp().


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