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

クラス osl::eval::ml::King25EffectEachBoth

#include <kingTable.h>

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

すべてのメンバ一覧

Static Public メソッド

static void eval (const NumEffectState &state, MultiIntPair &out)
static void evalWithUpdate (const NumEffectState &state, Move last_move, MultiIntPair &values)

Private 型

enum  EffectState {
  NO_ATTACK_DEFENSE_0, NO_ATTACK_DEFENSE_1, NO_ATTACK_DEFENSE_2, ATTACK_DIFF_N2,
  ATTACK_DIFF_N1, ATTACK_DIFF_0, ATTACK_DIFF_1, ATTACK_DIFF_2,
  STATE_MAX
}

Static Private メソッド

template<Player Defense>
static int effectStateIndex3 (const NumEffectState &state, Square target)
template<Player Defense>
static void index (const NumEffectState &state, Square target, int &index_xy, int rel_y, int king_x, int king_y, int x_diff)
template<osl::Player Defense>
static void evalOne (const NumEffectState &state, MultiInt &out)

Static Private 変数

static CArray< MultiInt, 5 *3 *8 *3 > table
static CArray< MultiInt, 3000 > x_table
static CArray< MultiInt, 3240 > y_table
static CArray< MultiInt, 27000 > xy_table
static CArray< int, 256 > effect_state_table

フレンド

class King25EffectEachBothOpening
class King25EffectEachBothMidgame
class King25EffectEachBothMidgame2
class King25EffectEachBothEnding
class King25EffectEachXY
class King25EffectEachKXY

説明

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


列挙型

列挙型の値:
NO_ATTACK_DEFENSE_0 
NO_ATTACK_DEFENSE_1 
NO_ATTACK_DEFENSE_2 
ATTACK_DIFF_N2 
ATTACK_DIFF_N1 
ATTACK_DIFF_0 
ATTACK_DIFF_1 
ATTACK_DIFF_2 
STATE_MAX 

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


関数

template<osl::Player Defense>
int osl::eval::ml::King25EffectEachBoth::effectStateIndex3 ( const NumEffectState state,
Square  target 
) [static, private]

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

参照先 osl::alt(), effect_state_table, と osl::NumEffectState::effectSetAt().

void osl::eval::ml::King25EffectEachBoth::eval ( const NumEffectState state,
MultiIntPair out 
) [static]

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

参照元 osl::eval::ml::OpenMidEndingEval::OpenMidEndingEval().

template<osl::Player Defense>
void osl::eval::ml::King25EffectEachBoth::evalOne ( const NumEffectState state,
MultiInt out 
) [static, private]
void osl::eval::ml::King25EffectEachBoth::evalWithUpdate ( const NumEffectState state,
Move  last_move,
MultiIntPair values 
) [static]
template<osl::Player Defense>
void osl::eval::ml::King25EffectEachBoth::index ( const NumEffectState state,
Square  target,
int &  index_xy,
int  rel_y,
int  king_x,
int  king_y,
int  x_diff 
) [static, private]

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

参照先 osl::BLACK, osl::SimpleState::pieceAt(), と osl::Piece::ptypeO().


フレンドと関連する関数

friend class King25EffectEachBothEnding [friend]

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

friend class King25EffectEachBothMidgame [friend]

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

friend class King25EffectEachBothMidgame2 [friend]

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

friend class King25EffectEachBothOpening [friend]

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

friend class King25EffectEachKXY [friend]

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

friend class King25EffectEachXY [friend]

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


変数

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

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

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

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


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