All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Static Public Member Functions | Static Private Member Functions | List of all members
osl::effect_util::AdditionalEffect Struct Reference

追加利きを求める More...

#include <additionalEffect.h>

Public Member Functions

template<int count_max>
int count (const NumEffectState &state, Square target, Player attack)
 

Static Public Member Functions

static bool hasEffect (const NumEffectState &, Square target, Player attack)
 target に attack の追加利きが一つでもあるか. 相手の影利きが先にある場合は対象としない. More...
 
static bool hasEffectStable (const NumEffectState &, Square target, Player attack)
 
static int count2 (const NumEffectState &, Square target, Player attack)
 target に attack の追加利きを二つまで数える. More...
 
static void find (const NumEffectState &, Square target, PieceVector &black, PieceVector &white)
 target に対する追加利きのある Piece を black, white に求める. More...
 
static void count (const NumEffectState &, Square target, int &black, int &white)
 
static int count (const NumEffectState &state, Player pl, Square target)
 

Static Private Member Functions

static void find (const NumEffectState &, Square target, const PieceVector &direct_effects, PieceVector &black, PieceVector &white)
 
template<int count_max>
static int count (const NumEffectState &, Square target, Player attack)
 

Detailed Description

追加利きを求める

Definition at line 16 of file additionalEffect.h.

Member Function Documentation

template<int count_max>
static int osl::effect_util::AdditionalEffect::count ( const NumEffectState &  ,
Square  target,
Player  attack 
)
staticprivate

Referenced by count().

template<int count_max>
int osl::effect_util::AdditionalEffect::count ( const NumEffectState &  state,
Square  target,
Player  attack 
)

Definition at line 29 of file additionalEffect.cc.

References target.

void osl::effect_util::AdditionalEffect::count ( const NumEffectState &  state,
Square  target,
int &  black,
int &  white 
)
static

Definition at line 99 of file additionalEffect.cc.

References osl::find().

static int osl::effect_util::AdditionalEffect::count ( const NumEffectState &  state,
Player  pl,
Square  target 
)
inlinestatic

Definition at line 48 of file additionalEffect.h.

References osl::BLACK, and count().

int osl::effect_util::AdditionalEffect::count2 ( const NumEffectState &  state,
Square  target,
Player  attack 
)
static

target に attack の追加利きを二つまで数える.

相手の影利きの駒以降は対象としない.

Definition at line 46 of file additionalEffect.cc.

References target.

void osl::effect_util::AdditionalEffect::find ( const NumEffectState &  state,
Square  target,
const PieceVector &  direct_effects,
PieceVector &  black,
PieceVector &  white 
)
staticprivate
void osl::effect_util::AdditionalEffect::find ( const NumEffectState &  state,
Square  target,
PieceVector &  black,
PieceVector &  white 
)
static

target に対する追加利きのある Piece を black, white に求める.

[*] +KI -HI +HI の場合,-HIも+HIもカウント.

Definition at line 86 of file additionalEffect.cc.

References osl::BLACK, osl::find(), and osl::WHITE.

bool osl::effect_util::AdditionalEffect::hasEffect ( const NumEffectState &  state,
Square  target,
Player  attack 
)
static

target に attack の追加利きが一つでもあるか. 相手の影利きが先にある場合は対象としない.

Definition at line 8 of file additionalEffect.cc.

References osl::BLACK, osl::Board_Table, osl::BoardTable::getShort8(), osl::KNIGHT, osl::Square::square, and target.

Referenced by osl::checkmate::ProofNumberTable::countLiberty(), osl::checkmate::ImmediateCheckmate::hasCheckmateMoveDir(), and osl::checkmate::King8Info::moveCandidateDir().

bool osl::effect_util::AdditionalEffect::hasEffectStable ( const NumEffectState &  state,
Square  target,
Player  attack 
)
static

Definition at line 39 of file additionalEffect.cc.

References target.


The documentation for this struct was generated from the following files: