構造体 テンプレート osl::search::SearchBase< Eval, Table, Recorder, Probabilities >

MTDF と SearchFramework に共通の 小物のメソッド. [詳細]

#include <searchBase.h>

osl::search::SearchBase< Eval, Table, Recorder, Probabilities >に対する継承グラフ
Inheritance graph
[凡例]
osl::search::SearchBase< Eval, Table, Recorder, Probabilities >のコラボレーション図
Collaboration graph
[凡例]

すべてのメンバ一覧

Public 型

typedef Eval eval_t
typedef Probabilities Probabilities_t

Public メソッド

 SearchBase (Recorder &r, Table *t)
virtual ~SearchBase ()
virtual bool abort (Move) const
bool validTableMove (const NumEffectState &state, const MoveLogProb &move, int limit) const
 テーブルの指手の正しさを確かめる
void recordLowerBound (Player P, SimpleHashRecord *record, int limit, const MoveLogProb &best_move, int val) const
void recordUpperBound (Player P, SimpleHashRecord *record, int limit, const MoveLogProb &best_move, int val) const
void recordWinByCheckmate (Player P, SimpleHashRecord *record, Move check_move) const
 詰将棋の見つけた勝
void recordLoseByCheckmate (Player P, SimpleHashRecord *record) const
 詰将棋の見つけた敗

Protected 変数

Recorder & recorder
Table * table

Private メソッド

void recordCheckmateResult (Player P, SimpleHashRecord *record, int val, Move move) const

説明

template<typename Eval, typename Table, typename Recorder, typename Probabilities>
struct osl::search::SearchBase< Eval, Table, Recorder, Probabilities >

MTDF と SearchFramework に共通の 小物のメソッド.

searchBase.h28 行で定義されています。


型定義

template<typename Eval, typename Table, typename Recorder, typename Probabilities>
typedef Eval osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::eval_t

osl::search::AlphaBeta2Tree< EvalT >で再定義されています。

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

template<typename Eval, typename Table, typename Recorder, typename Probabilities>
typedef Probabilities osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::Probabilities_t

searchBase.h33 行で定義されています。


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

template<typename Eval, typename Table, typename Recorder, typename Probabilities>
osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::SearchBase ( Recorder &  r,
Table *  t 
) [inline]

searchBase.h38 行で定義されています。

template<typename Eval, typename Table, typename Recorder, typename Probabilities>
virtual osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::~SearchBase (  )  [inline, virtual]

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


関数

template<typename Eval, typename Table, typename Recorder, typename Probabilities>
virtual bool osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::abort ( Move   )  const [inline, virtual]

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

template<typename Eval, typename Table, typename Recorder, typename Probabilities>
void osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::recordCheckmateResult ( Player  P,
SimpleHashRecord record,
int  val,
Move  move 
) const [inline, private]
template<typename Eval, typename Table, typename Recorder, typename Probabilities>
void osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::recordLoseByCheckmate ( Player  P,
SimpleHashRecord record 
) const [inline]

詰将棋の見つけた敗

searchBase.h130 行で定義されています。

template<typename Eval, typename Table, typename Recorder, typename Probabilities>
void osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::recordLowerBound ( Player  P,
SimpleHashRecord record,
int  limit,
const MoveLogProb best_move,
int  val 
) const [inline]

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

template<typename Eval, typename Table, typename Recorder, typename Probabilities>
void osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::recordUpperBound ( Player  P,
SimpleHashRecord record,
int  limit,
const MoveLogProb best_move,
int  val 
) const [inline]

searchBase.h91 行で定義されています。

template<typename Eval, typename Table, typename Recorder, typename Probabilities>
void osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::recordWinByCheckmate ( Player  P,
SimpleHashRecord record,
Move  check_move 
) const [inline]

詰将棋の見つけた勝

searchBase.h123 行で定義されています。

template<typename Eval, typename Table, typename Recorder, typename Probabilities>
bool osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::validTableMove ( const NumEffectState &  state,
const MoveLogProb move,
int  limit 
) const [inline]

テーブルの指手の正しさを確かめる

ついでに実現確率のチェックもする HashKey のconflict があるとtable から牽いた move が不正であることがある conflict で turn の違いがあると isAlmostValidMove ではチェックできない ことに注意

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


変数

template<typename Eval, typename Table, typename Recorder, typename Probabilities>
Recorder& osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::recorder [protected]
template<typename Eval, typename Table, typename Recorder, typename Probabilities>
Table* osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::table [protected]

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