Public 型 | Static Public メソッド | Private 型 | Static Private メソッド | Static Private 変数 | フレンド

クラス osl::eval::ml::King3Pieces

#include <kingTable.h>

osl::eval::ml::King3Piecesのコラボレーション図
Collaboration graph
[凡例]

すべてのメンバ一覧

Public 型

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

Static Public メソッド

static void setUp (const Weights &weights)
static MultiInt eval (const NumEffectState &state)
static MultiInt evalWithUpdate (const NumEffectState &state, Move last_move, MultiInt &last_value)

Private 型

enum  Direction { HORIZONTAL = 0, VERTICAL, DIAGONAL }

Static Private メソッド

template<Player King, Direction Dir>
static int index (PtypeO p1, PtypeO p2)
template<Player King, Direction Dir>
static int indexY (const Square king_position, PtypeO p1, PtypeO p2)
template<Player King, Direction Dir>
static int indexX (const Square king_position, PtypeO p1, PtypeO p2)
static MultiInt value (int vertical_index, int horizontal_index, int diagonal_index1, int diagonal_index2, int vertical_index_x, int horizontal_index_x, int diagonal_index1_x, int diagonal_index2_x, int vertical_index_y, int horizontal_index_y, int diagonal_index1_y, int diagonal_index2_y)
template<Player King>
static void evalOne (const NumEffectState &state, MultiInt &result)

Static Private 変数

static CArray< MultiInt, 3072 > table
static CArray< MultiInt, 15360 > x_table
static CArray< MultiInt, 27648 > y_table

フレンド

class King3PiecesXY

説明

kingTable.h625 行で定義されています。


列挙型

anonymous enum
列挙型の値:
ONE_DIM 
DIM 

kingTable.h629 行で定義されています。

列挙型の値:
HORIZONTAL 
VERTICAL 
DIAGONAL 

kingTable.h636 行で定義されています。


関数

MultiInt osl::eval::ml::King3Pieces::eval ( const NumEffectState state  )  [static]

kingTable.cc1310 行で定義されています。

参照元 evalWithUpdate(), と osl::eval::ml::OpenMidEndingEval::OpenMidEndingEval().

template<osl::Player King>
void osl::eval::ml::King3Pieces::evalOne ( const NumEffectState state,
MultiInt result 
) [static, private]
MultiInt osl::eval::ml::King3Pieces::evalWithUpdate ( const NumEffectState state,
Move  last_move,
MultiInt last_value 
) [static]
template<Player King, Direction Dir>
static int osl::eval::ml::King3Pieces::index ( PtypeO  p1,
PtypeO  p2 
) [inline, static, private]

kingTable.h643 行で定義されています。

参照先 osl::altIfPiece(), osl::ptypeOIndex(), と osl::WHITE.

template<Player King, Direction Dir>
static int osl::eval::ml::King3Pieces::indexX ( const Square  king_position,
PtypeO  p1,
PtypeO  p2 
) [inline, static, private]

kingTable.h667 行で定義されています。

参照先 osl::altIfPiece(), osl::BLACK, osl::ptypeOIndex(), osl::WHITE, と osl::Square::x().

template<Player King, Direction Dir>
static int osl::eval::ml::King3Pieces::indexY ( const Square  king_position,
PtypeO  p1,
PtypeO  p2 
) [inline, static, private]

kingTable.h653 行で定義されています。

参照先 osl::altIfPiece(), osl::BLACK, osl::ptypeOIndex(), osl::WHITE, と osl::Square::y().

void osl::eval::ml::King3Pieces::setUp ( const Weights weights  )  [static]

kingTable.cc1209 行で定義されています。

参照先 osl::NStages, table, と osl::eval::ml::Weights::value().

static MultiInt osl::eval::ml::King3Pieces::value ( int  vertical_index,
int  horizontal_index,
int  diagonal_index1,
int  diagonal_index2,
int  vertical_index_x,
int  horizontal_index_x,
int  diagonal_index1_x,
int  diagonal_index2_x,
int  vertical_index_y,
int  horizontal_index_y,
int  diagonal_index1_y,
int  diagonal_index2_y 
) [inline, static, private]

kingTable.h687 行で定義されています。

参照先 osl::eval::ml::ppair::x_table, と osl::eval::ml::ppair::y_table.

参照元 evalOne().


フレンドと関連する関数

friend class King3PiecesXY [friend]

kingTable.h627 行で定義されています。


変数

kingTable.h705 行で定義されています。

参照元 setUp().

kingTable.h706 行で定義されています。

参照元 osl::eval::ml::King3PiecesXY::setUp().

kingTable.h707 行で定義されています。

参照元 osl::eval::ml::King3PiecesXY::setUp().


このクラスの説明は次のファイルから生成されました:
 全て クラス ネームスペース ファイル 関数 変数 型定義 列挙型 列挙型の値 フレンド マクロ定義