#include <effect5x3.h>
Public Member Functions | |
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 Member Functions | |
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 Member Functions | |
void | updateProgressBonuses (const NumEffectState &state, bool black=true, bool white=true) |
void | updateStand (Player pl, Move m) |
Static Private Member Functions | |
static int | attackEffect3 (const NumEffectState &state, Player attack, Square target) |
template<Player Defense> | |
static PieceMask | makeEffectMask (const NumEffectState &state) |
Private Attributes | |
CArray< int, 2 > | progress_bonuses |
CArray< PieceMask, 2 > | effect_mask |
Definition at line 88 of file effect5x3.h.
osl::progress::Effect5x3WithBonus::Effect5x3WithBonus | ( | const NumEffectState & | state | ) | [explicit] |
Definition at line 115 of file effect5x3.cc.
References osl::BLACK, effect_mask, progress_bonuses, updateProgressBonuses(), and osl::WHITE.
int osl::progress::Effect5x3WithBonus::attackEffect3 | ( | const NumEffectState & | state, |
Player | attack, | ||
Square | target | ||
) | [inline, static, private] |
Definition at line 150 of file effect5x3.cc.
References osl::alt().
int osl::progress::Effect5x3WithBonus::countEffectPieces | ( | const NumEffectState & | state, |
Player | attack | ||
) | const |
Definition at line 366 of file effect5x3.cc.
References osl::alt().
const PieceMask osl::progress::Effect5x3WithBonus::effect5x3Mask | ( | Player | p | ) | const [inline] |
Definition at line 107 of file effect5x3.h.
References effect_mask.
osl::progress::Effect5x3WithBonus osl::progress::Effect5x3WithBonus::expect | ( | const NumEffectState & | state, |
Move | move | ||
) | const |
Reimplemented from osl::progress::Effect5x3.
Definition at line 334 of file effect5x3.cc.
References osl::alt(), osl::Move::capturePtype(), old, osl::Move::player(), osl::playerToIndex(), osl::progress::Effect5x3::progresses, osl::PTYPE_EMPTY, osl::progress::Effect5x3::stand_progresses, and updateStand().
Referenced by osl::eval::ProgressEvalGeneral< OpeningEval >::expect().
osl::container::PieceMask osl::progress::Effect5x3WithBonus::makeEffectMask | ( | const NumEffectState & | state | ) | [static, private] |
Definition at line 126 of file effect5x3.cc.
References osl::Centering5x3::adjustCenter(), center, and target.
int osl::progress::Effect5x3WithBonus::makeProgressAreaBonus | ( | const NumEffectState & | state, |
Square | king | ||
) | [static] |
Definition at line 294 of file effect5x3.cc.
References osl::Centering5x3::adjustCenter(), center, and osl::Square::squareForBlack().
int osl::progress::Effect5x3WithBonus::makeProgressAreaBonus | ( | const NumEffectState & | state, |
Square | king, | ||
Square | center | ||
) | [static] |
Definition at line 201 of file effect5x3.cc.
References osl::Square::canPromote(), osl::progress::Effect5x3_Table, osl::progress::Effect5x3Table::getAttackEffect(), target, osl::Square::x(), and osl::Square::y().
const Progress16 osl::progress::Effect5x3WithBonus::progress16bonus | ( | Player | p | ) | const [inline] |
Definition at line 97 of file effect5x3.h.
References osl::progress::Effect5x3::progress16each(), progress_bonuses, and osl::progress::Effect5x3::stand_progresses.
Referenced by osl::eval::ProgressEvalGeneral< progress_eval_opening_t >::attackDefenseBonus(), osl::eval::ProgressEvalGeneral< progress_eval_opening_t >::progress16bonus(), and osl::eval::ProgressEvalGeneral< progress_eval_opening_t >::value().
void osl::progress::Effect5x3WithBonus::update | ( | const NumEffectState & | new_state, |
Move | last_move | ||
) |
Reimplemented from osl::progress::Effect5x3.
Definition at line 309 of file effect5x3.cc.
References osl::BLACK, osl::container::Board_Mask_Table5x3_Center, osl::Move::from(), osl::container::BoardMaskTable5x3Center::mask(), osl::Move::to(), osl::progress::Effect5x3::update(), and osl::WHITE.
void osl::progress::Effect5x3WithBonus::updateProgressBonuses | ( | const NumEffectState & | state, |
bool | black = true , |
||
bool | white = true |
||
) | [private] |
Definition at line 347 of file effect5x3.cc.
References osl::BLACK, osl::eval::min(), and osl::WHITE.
Referenced by Effect5x3WithBonus().
void osl::progress::Effect5x3WithBonus::updateStand | ( | Player | pl, |
Move | m | ||
) | [inline, private] |
Definition at line 113 of file effect5x3.h.
References osl::progress::Effect5x3::stand_progresses.
Referenced by expect().
CArray<PieceMask, 2> osl::progress::Effect5x3WithBonus::effect_mask [private] |
Definition at line 116 of file effect5x3.h.
Referenced by effect5x3Mask(), and Effect5x3WithBonus().
CArray<int,2> osl::progress::Effect5x3WithBonus::progress_bonuses [private] |
Definition at line 115 of file effect5x3.h.
Referenced by Effect5x3WithBonus(), and progress16bonus().