クラス osl::game_playing::SpeculativeAllMoves

1threadで全ての手を順番に投機的探索をする [詳細]

#include <speculativeAllMoves.h>

osl::game_playing::SpeculativeAllMovesに対する継承グラフ
Inheritance graph
[凡例]
osl::game_playing::SpeculativeAllMovesのコラボレーション図
Collaboration graph
[凡例]

すべてのメンバ一覧

構成

class  ResultVector
struct  Runner
class  SearchAllMoves
 指手を生成し,結果をresultsにためる. run を別threadで動かすことを想定しているが,逐次でもテスト可 [詳細]

Public メソッド

 SpeculativeAllMoves ()
 ~SpeculativeAllMoves ()
void startSpeculative (const boost::shared_ptr< GameState > state, const SearchPlayer &main_player)
void stopOtherThan (Move)
void stopAll ()
void setMaxThreads (int new_max_threads)
const MoveWithComment waitResult (Move last_move, search::TimeAssigned wait_for, SearchPlayer &main_player, int byoyomi)
void selectBestMoveCleanUp ()
void clearResource ()
const HashKey searchState () const

Private 変数

boost::shared_ptr< SearchAllMovessearcher
boost::scoped_ptr< boost::thread > thread
boost::scoped_ptr< ResultVectorresults
boost::mutex mutex
int last_search_seconds
bool has_byoyomi
bool allowed
HashKey search_state

説明

1threadで全ての手を順番に投機的探索をする

speculativeAllMoves.h32 行で定義されています。


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

osl::game_playing::SpeculativeAllMoves::SpeculativeAllMoves (  ) 

speculativeAllMoves.cc371 行で定義されています。

osl::game_playing::SpeculativeAllMoves::~SpeculativeAllMoves (  ) 

speculativeAllMoves.cc378 行で定義されています。

参照先 selectBestMoveCleanUp(), と stopAll().


関数

void osl::game_playing::SpeculativeAllMoves::clearResource (  ) 

osl::game_playing::SpeculativeModelを再定義しています。

speculativeAllMoves.cc408 行で定義されています。

参照先 mutex, searcher, と thread.

const HashKey osl::game_playing::SpeculativeAllMoves::searchState (  )  const [inline, virtual]

osl::game_playing::SpeculativeModelを実装しています。

speculativeAllMoves.h66 行で定義されています。

参照先 search_state.

void osl::game_playing::SpeculativeAllMoves::selectBestMoveCleanUp (  )  [virtual]

osl::game_playing::SpeculativeModelを実装しています。

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

参照先 mutex, searcher, と thread.

参照元 ~SpeculativeAllMoves().

void osl::game_playing::SpeculativeAllMoves::setMaxThreads ( int  new_max_threads  )  [inline, virtual]

osl::game_playing::SpeculativeModelを再定義しています。

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

参照先 allowed, と mutex.

void osl::game_playing::SpeculativeAllMoves::startSpeculative ( const boost::shared_ptr< GameState state,
const SearchPlayer main_player 
) [virtual]

osl::game_playing::SpeculativeModelを実装しています。

speculativeAllMoves.cc385 行で定義されています。

参照先 allowed, has_byoyomi, last_search_seconds, mutex, results, search_state, searcher, と thread.

void osl::game_playing::SpeculativeAllMoves::stopAll (  )  [virtual]

osl::game_playing::SpeculativeModelを実装しています。

speculativeAllMoves.cc424 行で定義されています。

参照先 mutex, と searcher.

参照元 ~SpeculativeAllMoves().

void osl::game_playing::SpeculativeAllMoves::stopOtherThan ( Move  the_move  )  [virtual]

osl::game_playing::SpeculativeModelを実装しています。

speculativeAllMoves.cc416 行で定義されています。

参照先 mutex, と searcher.

const osl::search::MoveWithComment osl::game_playing::SpeculativeAllMoves::waitResult ( Move  last_move,
search::TimeAssigned  ,
SearchPlayer main_player,
int  byoyomi 
) [virtual]

変数

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

参照元 setMaxThreads(), startSpeculative(), と waitResult().

speculativeAllMoves.h42 行で定義されています。

参照元 startSpeculative(), と waitResult().

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

参照元 startSpeculative(), と waitResult().

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

参照元 searchState(), と startSpeculative().

boost::scoped_ptr<boost::thread> osl::game_playing::SpeculativeAllMoves::thread [private]

speculativeAllMoves.h39 行で定義されています。

参照元 clearResource(), selectBestMoveCleanUp(), と startSpeculative().


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