構成 | Public 型 | Static Public メソッド | Static Public 変数

クラス osl::eval::ml::PiecePair

#include <piecePair.h>

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

すべてのメンバ一覧

構成

struct  IndexTable

Public 型

enum  { plain_table_size = 1338, x_table_size = 4901, y_table_size = 7057, DIM = plain_table_size + x_table_size + y_table_size }
typedef CArray< int, 3 > index_t

Static Public メソッド

static int eval (const NumEffectState &, const Weights &)
template<int Direction, int Offset>
static int sum12One (const Piece *basePtr, const int *xbase, const int *ybase)
static int sum12 (NumEffectState const &state, Square base, PtypeO ptypeO)
template<int Direction, int Offset>
static int adjust12One (const Piece *basePtr, const int *xbase1, const int *ybase1, const int *xbase2, const int *ybase2)
static int adjust12 (NumEffectState const &state, Square base, PtypeO pos, PtypeO neg)
static int evalWithUpdate (const NumEffectState &state, Move moved, int last_value, const Weights &values)
static int evalWithUpdateCompiled (const NumEffectState &state, Move moved, int last_value)
static int pieceValue (const NumEffectState &state, Piece p, const Weights &values)
static int pieceValueDouble (const NumEffectState &state, Piece p, const Weights &)
static int weight (Player attack, int index, const Weights &values)
static index_t index (int offset_id, Piece p, Piece q)
static index_t index (int offset_id, Square p0, PtypeO o0, Square p1, PtypeO o1)
static int value (int offset_id, Piece p, Piece q, const Weights &values)
static int value (int offset_id, Piece p, Square p1, PtypeO o1, const Weights &values)
static int value (int offset_id, Square p0, PtypeO o0, Square p1, PtypeO o1, const Weights &values)
static void init ()
static void sanitize (Weights &values)
static void compile (const Weights &values)
 values を展開してクラス全体で使う
static int valueCompiled (int offset_id, Piece p, Square p1, PtypeO o1)
static int valueCompiled (int offset_id, Square p0, PtypeO o0, Square p1, PtypeO o1)

Static Public 変数

static IndexTable plain_table
static CArray< IndexTable, 10 > x_table
static CArray< IndexTable, 10 > y_table
static const CArray< Offset, 12 > offsets

説明

piecePair.h17 行で定義されています。


型定義

piecePair.h44 行で定義されています。


列挙型

anonymous enum
列挙型の値:
plain_table_size 
x_table_size 
y_table_size 
DIM 

piecePair.h20 行で定義されています。


関数

int osl::eval::ml::PiecePair::adjust12 ( NumEffectState const &  state,
Square  base,
PtypeO  pos,
PtypeO  neg 
) [inline, static]
template<int Direction, int Offset>
int osl::eval::ml::PiecePair::adjust12One ( const Piece basePtr,
const int *  xbase1,
const int *  ybase1,
const int *  xbase2,
const int *  ybase2 
) [inline, static]

piecePair.cc560 行で定義されています。

参照先 osl::Piece::ptypeO(), osl::eval::ml::ppair::x_values, と osl::eval::ml::ppair::y_values.

参照元 adjust12().

void osl::eval::ml::PiecePair::compile ( const Weights values  )  [static]
int osl::eval::ml::PiecePair::eval ( const NumEffectState state,
const Weights values 
) [static]
int osl::eval::ml::PiecePair::evalWithUpdate ( const NumEffectState state,
Move  moved,
int  last_value,
const Weights values 
) [static]
int osl::eval::ml::PiecePair::evalWithUpdateCompiled ( const NumEffectState state,
Move  moved,
int  last_value 
) [static]
osl::eval::ml::PiecePair::index_t osl::eval::ml::PiecePair::index ( int  offset_id,
Piece  p,
Piece  q 
) [static]

piecePair.cc440 行で定義されています。

参照先 osl::Piece::isOnBoard(), osl::Piece::isPiece(), osl::Piece::ptypeO(), と osl::Piece::square().

参照元 sanitize(), と value().

osl::eval::ml::PiecePair::index_t osl::eval::ml::PiecePair::index ( int  offset_id,
Square  p0,
PtypeO  o0,
Square  p1,
PtypeO  o1 
) [static]
void osl::eval::ml::PiecePair::init (  )  [static]
int osl::eval::ml::PiecePair::pieceValue ( const NumEffectState state,
Piece  p,
const Weights values 
) [static]

piecePair.cc669 行で定義されています。

参照先 pieceValueDouble().

int osl::eval::ml::PiecePair::pieceValueDouble ( const NumEffectState state,
Piece  p,
const Weights values 
) [static]
void osl::eval::ml::PiecePair::sanitize ( Weights values  )  [static]
int osl::eval::ml::PiecePair::sum12 ( NumEffectState const &  state,
Square  base,
PtypeO  ptypeO 
) [inline, static]
template<int Direction, int Offset>
int osl::eval::ml::PiecePair::sum12One ( const Piece basePtr,
const int *  xbase,
const int *  ybase 
) [inline, static]

piecePair.cc529 行で定義されています。

参照先 osl::Piece::ptypeO(), osl::eval::ml::ppair::x_values, と osl::eval::ml::ppair::y_values.

参照元 sum12().

static int osl::eval::ml::PiecePair::value ( int  offset_id,
Piece  p,
Square  p1,
PtypeO  o1,
const Weights values 
) [inline, static]

piecePair.h53 行で定義されています。

参照先 osl::Piece::ptypeO(), osl::Piece::square(), と value().

static int osl::eval::ml::PiecePair::value ( int  offset_id,
Square  p0,
PtypeO  o0,
Square  p1,
PtypeO  o1,
const Weights values 
) [inline, static]

piecePair.h57 行で定義されています。

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

static int osl::eval::ml::PiecePair::value ( int  offset_id,
Piece  p,
Piece  q,
const Weights values 
) [inline, static]

piecePair.h48 行で定義されています。

参照先 osl::Piece::isOnBoard(), osl::Piece::ptypeO(), と osl::Piece::square().

参照元 evalWithUpdate(), pieceValueDouble(), と value().

static int osl::eval::ml::PiecePair::valueCompiled ( int  offset_id,
Piece  p,
Square  p1,
PtypeO  o1 
) [inline, static]

piecePair.h72 行で定義されています。

参照先 osl::Piece::ptypeO(), と osl::Piece::square().

int osl::eval::ml::PiecePair::valueCompiled ( int  offset_id,
Square  p0,
PtypeO  o0,
Square  p1,
PtypeO  o1 
) [static]
static int osl::eval::ml::PiecePair::weight ( Player  attack,
int  index,
const Weights values 
) [inline, static]

piecePair.h40 行で定義されています。

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


変数

初期値:
 {
  
  DirectionPlayerTraits<UUL, BLACK>::offset(), 
  DirectionPlayerTraits<UL, BLACK>::offset(), 
  DirectionPlayerTraits<L, BLACK>::offset(), 
  DirectionPlayerTraits<DL, BLACK>::offset(), 
  DirectionPlayerTraits<UUR, WHITE>::offset(), 
  DirectionPlayerTraits<D, BLACK>::offset(), 
  
  DirectionPlayerTraits<UUL, WHITE>::offset(), 
  DirectionPlayerTraits<DR, BLACK>::offset(), 
  DirectionPlayerTraits<R, BLACK>::offset(), 
  DirectionPlayerTraits<UR, BLACK>::offset(), 
  DirectionPlayerTraits<UUR, BLACK>::offset(), 
  DirectionPlayerTraits<U, BLACK>::offset(), 
    }

piecePair.h95 行で定義されています。

参照元 osl::eval::ml::PiecePair::IndexTable::amplify(), compile(), evalWithUpdate(), index(), osl::eval::ml::ppair::makeOffsetIndex(), osl::eval::ml::ppair::makeTableX(), osl::eval::ml::ppair::makeTableY(), pieceValueDouble(), sanitize(), と valueCompiled().

piecePair.h93 行で定義されています。

参照元 compile(), と index().

piecePair.h94 行で定義されています。

参照元 compile(), と index().

piecePair.h94 行で定義されています。

参照元 compile(), と index().


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