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

クラス osl::eval::ml::PtypeCount

#include <minorPiece.h>

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

すべてのメンバ一覧

Public 型

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

Public メソッド

template<osl::Player P, osl::Ptype T>
MultiInt evalPlayerPtype (const osl::CArray2d< int, 2, osl::PTYPE_SIZE > &ptype_count, const osl::CArray2d< int, 2, osl::PTYPE_SIZE > &ptype_board_count, const osl::CArray< int, 2 > &kings_x, const osl::CArray< int, 2 > &kings_y)

Static Public メソッド

static void setUp (const Weights &weights)
template<osl::Player P, osl::Ptype T>
static MultiInt evalPlayerPtype (const CArray2d< int, 2, PTYPE_SIZE > &ptype_count, const CArray2d< int, 2, PTYPE_SIZE > &ptype_board_count, const osl::CArray< int, 2 > &kings_x, const osl::CArray< int, 2 > &kings_y)
static void eval (const NumEffectState &state, const CArray2d< int, 2, PTYPE_SIZE > &ptype_count, const CArray2d< int, 2, PTYPE_SIZE > &ptype_board_count, MultiInt &out)
template<Player P>
static void evalWithUpdateBang (const NumEffectState &state, Move last_move, CArray2d< int, 2, PTYPE_SIZE > &ptype_count, CArray2d< int, 2, PTYPE_SIZE > &ptype_board_count, MultiInt &last_value_and_out, unsigned int &ptypeo_mask)

Static Private メソッド

static int indexCount (Ptype ptype, int count)
static int indexBoardCount (Ptype ptype, int count)
static int indexCountX (Ptype ptype, int count, int x)
static int indexCountY (Ptype ptype, int count, int y)
static int indexBoardCountX (Ptype ptype, int count, int x)
static int indexBoardCountY (Ptype ptype, int count, int y)
template<Ptype T>
static int indexCount (int count)
template<Ptype T>
static int indexBoardCount (int count)
template<Ptype T>
static int indexCountX (int count, int x)
template<Ptype T>
static int indexCountY (int count, int y)
template<Ptype T>
static int indexBoardCountX (int count, int x)
template<Ptype T>
static int indexBoardCountY (int count, int y)
static MultiInt valueAll (Ptype ptype, int count, int my_king_x, int my_king_y, int op_king_x, int op_king_y)
static MultiInt valueBoardAll (Ptype ptype, int count, int my_king_x, int my_king_y, int op_king_x, int op_king_y)

Static Private 変数

static CArray< MultiInt, 160 > table
static CArray< MultiInt, 2240 > xy_table
static CArray< MultiInt, 2240 > xy_attack_table
static CArray< MultiInt, 2240 > xy_table_diff
static CArray< MultiInt, 2240 > xy_attack_table_diff

フレンド

class PtypeCountXY
class PtypeCountXYAttack

説明

minorPiece.h1374 行で定義されています。


列挙型

anonymous enum
列挙型の値:
ONE_DIM 
DIM 

minorPiece.h1379 行で定義されています。


関数

void osl::eval::ml::PtypeCount::eval ( const NumEffectState state,
const CArray2d< int, 2, PTYPE_SIZE > &  ptype_count,
const CArray2d< int, 2, PTYPE_SIZE > &  ptype_board_count,
MultiInt out 
) [static]
template<osl::Player P, osl::Ptype T>
MultiInt osl::eval::ml::PtypeCount::evalPlayerPtype ( const osl::CArray2d< int, 2, osl::PTYPE_SIZE > &  ptype_count,
const osl::CArray2d< int, 2, osl::PTYPE_SIZE > &  ptype_board_count,
const osl::CArray< int, 2 > &  kings_x,
const osl::CArray< int, 2 > &  kings_y 
)

minorPiece.cc1784 行で定義されています。

参照先 osl::BLACK, osl::playerToIndex(), xy_attack_table, と xy_table.

template<osl::Player P, osl::Ptype T>
static MultiInt osl::eval::ml::PtypeCount::evalPlayerPtype ( const CArray2d< int, 2, PTYPE_SIZE > &  ptype_count,
const CArray2d< int, 2, PTYPE_SIZE > &  ptype_board_count,
const osl::CArray< int, 2 > &  kings_x,
const osl::CArray< int, 2 > &  kings_y 
) [static]
template<osl::Player P>
template void osl::eval::ml::PtypeCount::evalWithUpdateBang< WHITE > ( const NumEffectState state,
Move  last_move,
CArray2d< int, 2, PTYPE_SIZE > &  ptype_count,
CArray2d< int, 2, PTYPE_SIZE > &  ptype_board_count,
MultiInt last_value_and_out,
unsigned int &  ptypeo_mask 
) [static]
static int osl::eval::ml::PtypeCount::indexBoardCount ( Ptype  ptype,
int  count 
) [inline, static, private]
template<Ptype T>
static int osl::eval::ml::PtypeCount::indexBoardCount ( int  count  )  [inline, static, private]

minorPiece.h1445 行で定義されています。

参照先 osl::isPromoted().

static int osl::eval::ml::PtypeCount::indexBoardCountX ( Ptype  ptype,
int  count,
int  x 
) [inline, static, private]

minorPiece.h1424 行で定義されています。

参照先 osl::PtypeTable::getIndexMin(), osl::isPromoted(), osl::Ptype_Table, と osl::unpromote().

参照元 valueBoardAll().

template<Ptype T>
static int osl::eval::ml::PtypeCount::indexBoardCountX ( int  count,
int  x 
) [inline, static, private]

minorPiece.h1465 行で定義されています。

参照先 osl::isPromoted().

template<Ptype T>
static int osl::eval::ml::PtypeCount::indexBoardCountY ( int  count,
int  y 
) [inline, static, private]

minorPiece.h1472 行で定義されています。

参照先 osl::isPromoted().

static int osl::eval::ml::PtypeCount::indexBoardCountY ( Ptype  ptype,
int  count,
int  y 
) [inline, static, private]

minorPiece.h1431 行で定義されています。

参照先 osl::PtypeTable::getIndexMin(), osl::isPromoted(), osl::Ptype_Table, と osl::unpromote().

参照元 valueBoardAll().

template<Ptype T>
static int osl::eval::ml::PtypeCount::indexCount ( int  count  )  [inline, static, private]

minorPiece.h1439 行で定義されています。

参照先 osl::isPromoted().

static int osl::eval::ml::PtypeCount::indexCount ( Ptype  ptype,
int  count 
) [inline, static, private]
template<Ptype T>
static int osl::eval::ml::PtypeCount::indexCountX ( int  count,
int  x 
) [inline, static, private]

minorPiece.h1451 行で定義されています。

参照先 osl::isPromoted().

static int osl::eval::ml::PtypeCount::indexCountX ( Ptype  ptype,
int  count,
int  x 
) [inline, static, private]

minorPiece.h1410 行で定義されています。

参照先 osl::PtypeTable::getIndexMin(), osl::isPromoted(), osl::Ptype_Table, と osl::unpromote().

参照元 valueAll().

static int osl::eval::ml::PtypeCount::indexCountY ( Ptype  ptype,
int  count,
int  y 
) [inline, static, private]

minorPiece.h1417 行で定義されています。

参照先 osl::PtypeTable::getIndexMin(), osl::isPromoted(), osl::Ptype_Table, と osl::unpromote().

参照元 valueAll().

template<Ptype T>
static int osl::eval::ml::PtypeCount::indexCountY ( int  count,
int  y 
) [inline, static, private]

minorPiece.h1458 行で定義されています。

参照先 osl::isPromoted().

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

minorPiece.cc1701 行で定義されています。

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

static MultiInt osl::eval::ml::PtypeCount::valueAll ( Ptype  ptype,
int  count,
int  my_king_x,
int  my_king_y,
int  op_king_x,
int  op_king_y 
) [inline, static, private]

minorPiece.h1478 行で定義されています。

参照先 indexCountX(), indexCountY(), xy_attack_table_diff, と xy_table_diff.

参照元 evalWithUpdateBang().

static MultiInt osl::eval::ml::PtypeCount::valueBoardAll ( Ptype  ptype,
int  count,
int  my_king_x,
int  my_king_y,
int  op_king_x,
int  op_king_y 
) [inline, static, private]

minorPiece.h1487 行で定義されています。

参照先 indexBoardCountX(), indexBoardCountY(), xy_attack_table_diff, と xy_table_diff.

参照元 evalWithUpdateBang().


フレンドと関連する関数

friend class PtypeCountXY [friend]

minorPiece.h1376 行で定義されています。

friend class PtypeCountXYAttack [friend]

minorPiece.h1377 行で定義されています。


変数

minorPiece.h1496 行で定義されています。

参照元 osl::eval::ml::PtypeCountXY::setUp(), と setUp().

minorPiece.h1498 行で定義されています。

参照元 evalPlayerPtype(), と osl::eval::ml::PtypeCountXYAttack::setUp().

minorPiece.h1500 行で定義されています。

参照元 osl::eval::ml::PtypeCountXYAttack::setUp(), valueAll(), と valueBoardAll().

minorPiece.h1497 行で定義されています。

参照元 evalPlayerPtype(), と osl::eval::ml::PtypeCountXY::setUp().

minorPiece.h1499 行で定義されています。

参照元 osl::eval::ml::PtypeCountXY::setUp(), valueAll(), と valueBoardAll().


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