クラス osl::search::ThreatmateState

詰めろを考慮した詰将棋探索のための状態管理. [詳細]

#include <threatmateState.h>

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

すべてのメンバ一覧

Public 型

enum  Status {
  UNKNOWN = 0, THREATMATE, MAYBE_THREATMATE, CHECK_AFTER_THREATMATE,
  MAY_HAVE_CHECKMATE
}

Public メソッド

 ThreatmateState (Status s=UNKNOWN)
void setThreatmate (Status s)
bool isUnknown () const
bool isThreatmate () const
bool maybeThreatmate () const
bool mayHaveCheckmate () const
Status status () const
const ThreatmateState newStatus (bool is_check) const
void update (const ThreatmateState *parent, bool in_check)

Static Private 変数

static const CArray< Status, 5 *2 > transition

フレンド

class DualThreatmateState

説明

詰めろを考慮した詰将棋探索のための状態管理.

http://www31.ocn.ne.jp/~kfend/inside_kfend/ptc.html#c3

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


列挙型

列挙型の値:
UNKNOWN 
THREATMATE 

threatmate found by checkmate search

MAYBE_THREATMATE 

threatmate, not sure

CHECK_AFTER_THREATMATE 

status after threatmate responded by check

MAY_HAVE_CHECKMATE 

status after threatmate responded by non-check move

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


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

osl::search::ThreatmateState::ThreatmateState ( Status  s = UNKNOWN  )  [inline]

threatmateState.h47 行で定義されています。

参照先 osl::search::ThreatmateStateData::current_status.


関数

bool osl::search::ThreatmateState::isThreatmate (  )  const [inline]
bool osl::search::ThreatmateState::isUnknown (  )  const [inline]

threatmateState.h54 行で定義されています。

参照先 osl::search::ThreatmateStateData::current_status, と UNKNOWN.

bool osl::search::ThreatmateState::maybeThreatmate (  )  const [inline]
bool osl::search::ThreatmateState::mayHaveCheckmate (  )  const [inline]
const ThreatmateState osl::search::ThreatmateState::newStatus ( bool  is_check  )  const [inline]

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

参照先 osl::search::ThreatmateStateData::current_status, と transition.

参照元 update().

void osl::search::ThreatmateState::setThreatmate ( Status  s  )  [inline]
Status osl::search::ThreatmateState::status (  )  const [inline]
void osl::search::ThreatmateState::update ( const ThreatmateState parent,
bool  in_check 
) [inline]

threatmateState.h75 行で定義されています。

参照先 maybeThreatmate(), と newStatus().

参照元 osl::search::DualThreatmateState::updateInLock().


フレンドと関連する関数

friend class DualThreatmateState [friend]

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


変数

初期値:
 {{
   UNKNOWN, UNKNOWN,
   MAY_HAVE_CHECKMATE, CHECK_AFTER_THREATMATE,
   MAY_HAVE_CHECKMATE, CHECK_AFTER_THREATMATE,
   MAYBE_THREATMATE, UNKNOWN,
   UNKNOWN, UNKNOWN,
}}

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

参照元 newStatus().


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