クラス テンプレート osl::move_generator::AddEffect< P, isAttackToKing >

利きがないstateで使えるAddEffect. [詳細]

#include <addEffect_.h>

すべてのメンバ一覧

Static Public メソッド

template<class Action >
static void generateKing (const NumEffectState &state, Position target, Action &action, NearMask nearMask)
 promoteとは関係ないやつ
template<class Action >
static void generateGold (const NumEffectState &state, Position target, Action &action, NearMask nearMask)
template<class Action >
static void generate (const NumEffectState &state, Position target, Action &action)
 対象とするマスに利きを付ける手を生成する
static void generate (const NumEffectState &state, Position target, MoveVector &out)

説明

template<Player P, bool isAttackToKing = false>
class osl::move_generator::AddEffect< P, isAttackToKing >

利きがないstateで使えるAddEffect.

isAttackToKingがtrueの場合はKINGによる王手は自殺手なので生成しない 自分の手が自殺手かどうかのチェックをするか? isAttackToKing がfalseの時は,影利き,追加利きも生成する 扱う影利き,追加利きは間に駒が1個まで isAttackToKingがfalseの時は,影利き,追加利きかつopen attackを重複生成してしまうことがある. アルゴリズム:

addEffect_.h67 行で定義されています。


関数

template<Player P, bool isAttackToKing = false>
static void osl::move_generator::AddEffect< P, isAttackToKing >::generate ( const NumEffectState &  state,
Position  target,
MoveVector &  out 
) [inline, static]

addEffect_.h87 行で定義されています。

参照先 osl::move_generator::AddEffect< P, isAttackToKing >::generate(), と store().

template<osl::Player P, bool isAttackToKing>
template<class Action >
void osl::move_generator::AddEffect< P, isAttackToKing >::generate ( const NumEffectState &  state,
Position  target,
Action &  action 
) [inline, static]

対象とするマスに利きを付ける手を生成する

引数:
P(template) - 手番のプレイヤー
state - 対象とする局面
target - 利きをつけたいマス
action - 手が存在した時に呼び出すコールバック関数

addEffect_.tcc479 行で定義されています。

参照先 osl::move_generator::AddEffect< P, isAttackToKing >::generateGold(), と osl::move_generator::AddEffect< P, isAttackToKing >::generateKing().

参照元 osl::move_generator::AddEffect< P, isAttackToKing >::generate().

template<osl::Player P, bool isAttackToKing>
template<class Action >
void osl::move_generator::AddEffect< P, isAttackToKing >::generateGold ( const NumEffectState &  state,
Position  target,
Action &  action,
NearMask  nearMask 
) [inline, static]

drop move

addEffect_.tcc464 行で定義されています。

参照元 osl::move_generator::AddEffect< P, isAttackToKing >::generate().

template<osl::Player P, bool isAttackToKing>
template<class Action >
void osl::move_generator::AddEffect< P, isAttackToKing >::generateKing ( const NumEffectState &  state,
Position  target,
Action &  action,
NearMask  nearMask 
) [inline, static]

promoteとは関係ないやつ

addEffect_.tcc454 行で定義されています。

参照元 osl::move_generator::AddEffect< P, isAttackToKing >::generate().


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