Public メソッド | Static Public メソッド | Private メソッド | Static Private メソッド | Private 変数

構造体 osl::progress::Effect5x3WithBonus

#include <effect5x3.h>

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

すべてのメンバ一覧

Public メソッド

 Effect5x3WithBonus (const NumEffectState &state)
const Progress16 progress16bonus (Player p) const
void update (const NumEffectState &new_state, Move last_move)
Effect5x3WithBonus expect (const NumEffectState &state, Move move) const
int countEffectPieces (const NumEffectState &state, Player attack) const
const PieceMask effect5x3Mask (Player p) const

Static Public メソッド

template<Player Attack>
static int makeProgressAreaBonus (const NumEffectState &state, Square king)
template<Player Attack, bool AlwaysPromotable, bool AlwaysNotPromotable>
static int makeProgressAreaBonus (const NumEffectState &state, Square king, Square center)

Private メソッド

void updateProgressBonuses (const NumEffectState &state, bool black=true, bool white=true)
void updateStand (Player pl, Move m)

Static Private メソッド

static int attackEffect3 (const NumEffectState &state, Player attack, Square target)
template<Player Defense>
static PieceMask makeEffectMask (const NumEffectState &state)

Private 変数

CArray< int, 2 > progress_bonuses
CArray< PieceMask, 2 > effect_mask

説明

effect5x3.h88 行で定義されています。


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

osl::progress::Effect5x3WithBonus::Effect5x3WithBonus ( const NumEffectState state  )  [explicit]

関数

int osl::progress::Effect5x3WithBonus::attackEffect3 ( const NumEffectState state,
Player  attack,
Square  target 
) [inline, static, private]
int osl::progress::Effect5x3WithBonus::countEffectPieces ( const NumEffectState state,
Player  attack 
) const

effect5x3.cc364 行で定義されています。

参照先 osl::alt(), effect5x3Mask(), と osl::NumEffectState::piecesOnBoard().

参照元 updateProgressBonuses().

const PieceMask osl::progress::Effect5x3WithBonus::effect5x3Mask ( Player  p  )  const [inline]

effect5x3.h107 行で定義されています。

参照先 effect_mask.

参照元 countEffectPieces().

osl::progress::Effect5x3WithBonus osl::progress::Effect5x3WithBonus::expect ( const NumEffectState state,
Move  move 
) const
template<osl::Player Defense>
osl::PieceMask osl::progress::Effect5x3WithBonus::makeEffectMask ( const NumEffectState state  )  [static, private]
template<osl::Player Attack>
int osl::progress::Effect5x3WithBonus::makeProgressAreaBonus ( const NumEffectState state,
Square  king 
) [static]

effect5x3.cc292 行で定義されています。

参照先 osl::Centering5x3::adjustCenter(), と osl::Square::squareForBlack().

template<osl::Player Attack, bool AlwaysPromotable, bool AlwaysNotPromotable>
int osl::progress::Effect5x3WithBonus::makeProgressAreaBonus ( const NumEffectState state,
Square  king,
Square  center 
) [static]
const Progress16 osl::progress::Effect5x3WithBonus::progress16bonus ( Player  p  )  const [inline]
void osl::progress::Effect5x3WithBonus::update ( const NumEffectState new_state,
Move  last_move 
)
void osl::progress::Effect5x3WithBonus::updateProgressBonuses ( const NumEffectState state,
bool  black = true,
bool  white = true 
) [private]

effect5x3.cc345 行で定義されています。

参照先 osl::BLACK, countEffectPieces(), osl::eval::min(), progress_bonuses, と osl::WHITE.

参照元 Effect5x3WithBonus(), と update().

void osl::progress::Effect5x3WithBonus::updateStand ( Player  pl,
Move  m 
) [inline, private]

effect5x3.h113 行で定義されています。

参照先 osl::progress::Effect5x3::stand_progresses.

参照元 expect().


変数

effect5x3.h116 行で定義されています。

参照元 effect5x3Mask(), Effect5x3WithBonus(), と update().

effect5x3.h115 行で定義されています。

参照元 Effect5x3WithBonus(), progress16bonus(), update(), と updateProgressBonuses().


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