クラス osl::checkmate::ProofNumberTable

#include <proofNumberTable.h>

すべてのメンバ一覧

構成

struct  Liberty
struct  Table

Public メソッド

 ProofNumberTable ()
const Liberty countLiberty (Ptype ptype, Direction d, unsigned int liberty_mask) const
 dir 方向からの王手をかけた時のlibertyの予想
const Liberty countLibertyShortNotKnight (Player player, Position to, Ptype ptype, Position king, King8Info info) const
 8近傍へのdropまたは取れない移動後のlibertyの予測値を返す.
const Liberty countLibertyLong (Player player, Position to, Ptype ptype, Position king, King8Info info) const
int countLiberty (const NumEffectState &state, int liberty_count, Move move, Position king, King8Info info) const
 move は王手である必要がある
int countLiberty (const NumEffectState &state, Move move) const
 テスト用
int libertyAfterAllDrop (const NumEffectState &state) const
 drop のみ
int libertyAfterAllDrop (const NumEffectState &state, Player attack, King8Info info) const
int libertyAfterAllMove (const NumEffectState &state) const
 移動 のみ
int libertyAfterAllMove (const NumEffectState &state, Player attack, King8Info info, Position king) const
int libertyAfterAllCheck (const NumEffectState &state) const
 全て
int disproofAfterAllCheck (const NumEffectState &, Player, King8Info) const
const ProofDisproof attackEstimation (const NumEffectState &state) const
 全て
const ProofDisproof attackEstimation (const NumEffectState &state, Player attack, King8Info info, Position king) const

Private 変数

boost::scoped_ptr< Tabletable

説明

proofNumberTable.h21 行で定義されています。


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

osl::checkmate::ProofNumberTable::ProofNumberTable (  ) 

関数

const osl::checkmate::ProofDisproof osl::checkmate::ProofNumberTable::attackEstimation ( const NumEffectState &  state,
Player  attack,
King8Info  info,
Position  king 
) const
const osl::checkmate::ProofDisproof osl::checkmate::ProofNumberTable::attackEstimation ( const NumEffectState &  state  )  const
int osl::checkmate::ProofNumberTable::countLiberty ( const NumEffectState &  state,
Move  move 
) const

テスト用

proofNumberTable.cc216 行で定義されています。

参照先 osl::alt(), countLiberty(), と osl::Move::player().

int osl::checkmate::ProofNumberTable::countLiberty ( const NumEffectState &  state,
int  liberty_count,
Move  move,
Position  king,
King8Info  info 
) const [inline]
const Liberty osl::checkmate::ProofNumberTable::countLiberty ( Ptype  ptype,
Direction  d,
unsigned int  liberty_mask 
) const [inline]

dir 方向からの王手をかけた時のlibertyの予想

proofNumberTable.h62 行で定義されています。

参照先 table, osl::UUL, と osl::UUR.

参照元 osl::checkmate::PureLibertyEstimator::attackH(), countLiberty(), countLibertyLong(), と countLibertyShortNotKnight().

const Liberty osl::checkmate::ProofNumberTable::countLibertyLong ( Player  player,
Position  to,
Ptype  ptype,
Position  king,
King8Info  info 
) const [inline]
const Liberty osl::checkmate::ProofNumberTable::countLibertyShortNotKnight ( Player  player,
Position  to,
Ptype  ptype,
Position  king,
King8Info  info 
) const [inline]

8近傍へのdropまたは取れない移動後のlibertyの予測値を返す.

玉は取り返せる時でも取り返さない値. 桂馬は表をひく必要がないので呼び出し側で処理する.

戻り値:
空王手の場合は 0 のことがある.

proofNumberTable.h74 行で定義されています。

参照先 osl::BLACK, osl::Board_Table, countLiberty(), osl::BoardTable::getShort8(), osl::Neighboring8::isNeighboring8(), osl::KNIGHT, osl::checkmate::King8Info::liberty(), と osl::WHITE.

参照元 countLiberty().

int osl::checkmate::ProofNumberTable::disproofAfterAllCheck ( const NumEffectState &  state,
Player  attack,
King8Info  info 
) const
int osl::checkmate::ProofNumberTable::libertyAfterAllCheck ( const NumEffectState &  state  )  const

全て

proofNumberTable.cc357 行で定義されています。

参照先 attackEstimation(), と osl::checkmate::ProofDisproof::proof().

int osl::checkmate::ProofNumberTable::libertyAfterAllDrop ( const NumEffectState &  state,
Player  attack,
King8Info  info 
) const
int osl::checkmate::ProofNumberTable::libertyAfterAllDrop ( const NumEffectState &  state  )  const

drop のみ

proofNumberTable.cc246 行で定義されています。

参照先 osl::alt().

参照元 attackEstimation().

int osl::checkmate::ProofNumberTable::libertyAfterAllMove ( const NumEffectState &  state,
Player  attack,
King8Info  info,
Position  king 
) const
int osl::checkmate::ProofNumberTable::libertyAfterAllMove ( const NumEffectState &  state  )  const

移動 のみ

proofNumberTable.cc312 行で定義されています。

参照先 osl::alt().

参照元 attackEstimation().


変数

boost::scoped_ptr<Table> osl::checkmate::ProofNumberTable::table [private]

proofNumberTable.h55 行で定義されています。

参照元 countLiberty(), libertyAfterAllDrop(), libertyAfterAllMove(), と ProofNumberTable().


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