#include <kingTable.h>
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.h の 625 行で定義されています。
anonymous enum |
kingTable.h の 629 行で定義されています。
enum osl::eval::ml::King3Pieces::Direction [private] |
kingTable.h の 636 行で定義されています。
MultiInt osl::eval::ml::King3Pieces::eval | ( | const NumEffectState & | state | ) | [static] |
kingTable.cc の 1310 行で定義されています。
参照元 evalWithUpdate(), と osl::eval::ml::OpenMidEndingEval::OpenMidEndingEval().
void osl::eval::ml::King3Pieces::evalOne | ( | const NumEffectState & | state, | |
MultiInt & | result | |||
) | [static, private] |
kingTable.cc の 1233 行で定義されています。
参照先 osl::BLACK, osl::SimpleState::kingSquare(), osl::SimpleState::pieceAt(), osl::Piece::ptypeO(), と value().
MultiInt osl::eval::ml::King3Pieces::evalWithUpdate | ( | const NumEffectState & | state, | |
Move | last_move, | |||
MultiInt & | last_value | |||
) | [static] |
static int osl::eval::ml::King3Pieces::index | ( | PtypeO | p1, | |
PtypeO | p2 | |||
) | [inline, static, private] |
kingTable.h の 643 行で定義されています。
static int osl::eval::ml::King3Pieces::indexX | ( | const Square | king_position, | |
PtypeO | p1, | |||
PtypeO | p2 | |||
) | [inline, static, private] |
kingTable.h の 667 行で定義されています。
参照先 osl::altIfPiece(), osl::BLACK, osl::ptypeOIndex(), osl::WHITE, と osl::Square::x().
static int osl::eval::ml::King3Pieces::indexY | ( | const Square | king_position, | |
PtypeO | p1, | |||
PtypeO | p2 | |||
) | [inline, static, private] |
kingTable.h の 653 行で定義されています。
参照先 osl::altIfPiece(), osl::BLACK, osl::ptypeOIndex(), osl::WHITE, と osl::Square::y().
void osl::eval::ml::King3Pieces::setUp | ( | const Weights & | weights | ) | [static] |
kingTable.cc の 1209 行で定義されています。
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.h の 687 行で定義されています。
参照先 osl::eval::ml::ppair::x_table, と osl::eval::ml::ppair::y_table.
参照元 evalOne().
friend class King3PiecesXY [friend] |
kingTable.h の 627 行で定義されています。
osl::CArray< MultiInt, 3072 > osl::eval::ml::King3Pieces::table [static, private] |
kingTable.h の 705 行で定義されています。
参照元 setUp().
osl::CArray< MultiInt, 15360 > osl::eval::ml::King3Pieces::x_table [static, private] |
kingTable.h の 706 行で定義されています。
osl::CArray< MultiInt, 27648 > osl::eval::ml::King3Pieces::y_table [static, private] |
kingTable.h の 707 行で定義されています。