クラス osl::eval::endgame::AttackDefense

max(AttackKing, DefenseKing). [詳細]

#include <attackDefense.h>

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

すべてのメンバ一覧

Public メソッド

 AttackDefense (const SimpleState &)
void changeTurn ()
int value () const
int value (Player p) const
void update (const SimpleState &new_state, Move last_move)
int expect (const SimpleState &state, Move move) const

Static Public メソッド

static bool initialized ()
static int infty ()
static int valueOf (Piece black_king, Piece white_king, Piece target)
static int valueOf (Piece black_king, Piece white_king, PtypeO ptypeo, Position position)
static void setValues (const SimpleState &, container::PieceValues &)

Private メソッド

void reset ()
void addValue (Player owner, int value)
void addValue (Piece king_black, Piece king_white, Piece target)
void updateKingMove (const SimpleState &, Position from, Position to)
void updateKingMove (const SimpleState &, Position from, Position to, Piece target)

Private 変数

CArray< int, 2 > values

説明

max(AttackKing, DefenseKing).

うまく動くようなら統合した表を作る

attackDefense.h27 行で定義されています。


コンストラクタとデストラクタ

osl::eval::endgame::AttackDefense::AttackDefense ( const SimpleState &  state  )  [explicit]

attackDefense.cc21 行で定義されています。

参照先 addValue(), osl::BLACK, target, と osl::WHITE.


関数

void osl::eval::endgame::AttackDefense::addValue ( Piece  king_black,
Piece  king_white,
Piece  target 
) [inline, private]

attackDefense.h35 行で定義されています。

参照先 addValue(), osl::BLACK, osl::KING, osl::Piece::owner(), osl::Piece::ptype(), valueOf(), と osl::WHITE.

void osl::eval::endgame::AttackDefense::addValue ( Player  owner,
int  value 
) [inline, private]

attackDefense.h31 行で定義されています。

参照先 osl::playerToIndex(), と values.

参照元 addValue(), AttackDefense(), update(), と updateKingMove().

void osl::eval::endgame::AttackDefense::changeTurn (  )  [inline]

attackDefense.h45 行で定義されています。

int osl::eval::endgame::AttackDefense::expect ( const SimpleState &  state,
Move  move 
) const
static int osl::eval::endgame::AttackDefense::infty (  )  [inline, static]
static bool osl::eval::endgame::AttackDefense::initialized (  )  [inline, static]

attackDefense.h46 行で定義されています。

void osl::eval::endgame::AttackDefense::reset (  )  [inline, private]

attackDefense.h30 行で定義されています。

参照先 values.

参照元 update(), と updateKingMove().

static void osl::eval::endgame::AttackDefense::setValues ( const SimpleState &  ,
container::PieceValues  
) [static]
void osl::eval::endgame::AttackDefense::update ( const SimpleState &  new_state,
Move  last_move 
)
void osl::eval::endgame::AttackDefense::updateKingMove ( const SimpleState &  state,
Position  from,
Position  to,
Piece  target 
) [private]
void osl::eval::endgame::AttackDefense::updateKingMove ( const SimpleState &  state,
Position  from,
Position  to 
) [private]
int osl::eval::endgame::AttackDefense::value ( Player  p  )  const [inline]

attackDefense.h49 行で定義されています。

参照先 osl::playerToIndex(), と values.

int osl::eval::endgame::AttackDefense::value (  )  const [inline]
static int osl::eval::endgame::AttackDefense::valueOf ( Piece  black_king,
Piece  white_king,
PtypeO  ptypeo,
Position  position 
) [inline, static]

attackDefense.h70 行で定義されています。

参照先 osl::BLACK, osl::getOwner(), osl::eval::max(), osl::Piece::owner(), valueOf(), と osl::WHITE.

static int osl::eval::endgame::AttackDefense::valueOf ( Piece  black_king,
Piece  white_king,
Piece  target 
) [inline, static]

変数

attackDefense.h29 行で定義されています。

参照元 addValue(), reset(), と value().


このクラスの説明は次のファイルから生成されました:
 全て クラス ネームスペース ファイル 関数 変数 型定義 列挙型 列挙型の値 フレンド マクロ定義
Sun May 16 09:58:01 2010に生成されました。  doxygen 1.6.3