利きのないまたは守りのあるところへ動くためのフィルタ [詳細]
#include <escapeFilter.h>

Public メソッド | |
| EscapeFilter (const NumEffectState &s, OrigAction &action, Position pos, Ptype ptype) | |
| void | simpleMove (Position from, Position to, Ptype ptype, bool isPromote, Player, Move m) |
| void | unknownMove (Position from, Position to, Piece p1, Ptype ptype, bool isPromote, Player, Move m) |
| void | dropMove (Position to, Ptype ptype, Player, Move) |
Private メソッド | |
| BOOST_CLASS_REQUIRE (OrigAction, osl::move_action, Concept) | |
| Piece | findThreat (Position to) const |
| template<bool IsSimple> | |
| bool | suitable (Position to) const |
Private 変数 | |
| const NumEffectState & | state |
| OrigAction & | action |
| PieceMask | attack_pin |
| PieceMask | defense_pin |
| Piece | removed |
| Ptype | attacking |
| int | value |
| int | my_value |
| bool | has_long |
| bool | has_long_support |
利きのないまたは守りのあるところへ動くためのフィルタ
escapeFilter.h の 18 行で定義されています。
| osl::move_action::EscapeFilter< P, OrigAction >::EscapeFilter | ( | const NumEffectState & | s, | |
| OrigAction & | action, | |||
| Position | pos, | |||
| Ptype | ptype | |||
| ) | [inline] |
escapeFilter.h の 78 行で定義されています。
参照先 osl::alt(), osl::move_action::EscapeFilter< P, OrigAction >::attacking, osl::Piece::isPiece(), osl::move_action::EscapeFilter< P, OrigAction >::my_value, osl::newPtypeO(), osl::Piece::owner(), osl::PAWN, osl::Piece::ptype(), osl::PTYPE_EMPTY, osl::eval::Ptype_Eval_Table, osl::move_action::EscapeFilter< P, OrigAction >::removed, osl::move_action::EscapeFilter< P, OrigAction >::state, osl::move_action::EscapeFilter< P, OrigAction >::value, と osl::WHITE.
| osl::move_action::EscapeFilter< P, OrigAction >::BOOST_CLASS_REQUIRE | ( | OrigAction | , | |
| osl::move_action | , | |||
| Concept | ||||
| ) | [private] |
| void osl::move_action::EscapeFilter< P, OrigAction >::dropMove | ( | Position | to, | |
| Ptype | ptype, | |||
| Player | , | |||
| Move | ||||
| ) | [inline] |
escapeFilter.h の 103 行で定義されています。
| Piece osl::move_action::EscapeFilter< P, OrigAction >::findThreat | ( | Position | to | ) | const [inline, private] |
escapeFilter.h の 29 行で定義されています。
参照先 osl::alt(), osl::BLACK, osl::Board_Table, osl::Piece::EMPTY(), osl::BoardTable::getLongDirection(), osl::move_action::EscapeFilter< P, OrigAction >::has_long, osl::Piece::isEmpty(), osl::Piece::isEmptyNum(), osl::isLong(), osl::longToShort(), osl::Piece::number(), osl::Piece::owner(), osl::Piece::position(), osl::move_action::EscapeFilter< P, OrigAction >::removed, と osl::move_action::EscapeFilter< P, OrigAction >::state.
参照元 osl::move_action::EscapeFilter< P, OrigAction >::suitable().
| void osl::move_action::EscapeFilter< P, OrigAction >::simpleMove | ( | Position | from, | |
| Position | to, | |||
| Ptype | ptype, | |||
| bool | isPromote, | |||
| Player | , | |||
| Move | m | |||
| ) | [inline] |
escapeFilter.h の 95 行で定義されています。
参照先 osl::move_action::EscapeFilter< P, OrigAction >::action.
| bool osl::move_action::EscapeFilter< P, OrigAction >::suitable | ( | Position | to | ) | const [inline, private] |
escapeFilter.h の 48 行で定義されています。
参照先 osl::alt(), osl::move_action::EscapeFilter< P, OrigAction >::attack_pin, osl::BLACK, osl::Board_Table, osl::ntesuki::capture(), osl::move_action::EscapeFilter< P, OrigAction >::defense_pin, osl::move_action::EscapeFilter< P, OrigAction >::findThreat(), osl::BoardTable::getLongDirection(), osl::move_action::EscapeFilter< P, OrigAction >::has_long_support, osl::Piece::isEmpty(), osl::Piece::isEmptyNum(), osl::isLong(), osl::longToShort(), osl::move_action::EscapeFilter< P, OrigAction >::my_value, osl::newPtypeO(), osl::Piece::number(), osl::Piece::position(), osl::Piece::ptype(), osl::PTYPE_EMPTY, osl::eval::Ptype_Eval_Table, osl::move_action::EscapeFilter< P, OrigAction >::removed, osl::move_action::EscapeFilter< P, OrigAction >::state, osl::move_action::EscapeFilter< P, OrigAction >::value, と osl::WHITE.
| void osl::move_action::EscapeFilter< P, OrigAction >::unknownMove | ( | Position | from, | |
| Position | to, | |||
| Piece | p1, | |||
| Ptype | ptype, | |||
| bool | isPromote, | |||
| Player | , | |||
| Move | m | |||
| ) | [inline] |
escapeFilter.h の 99 行で定義されています。
参照先 osl::move_action::EscapeFilter< P, OrigAction >::action.
OrigAction& osl::move_action::EscapeFilter< P, OrigAction >::action [private] |
PieceMask osl::move_action::EscapeFilter< P, OrigAction >::attack_pin [private] |
escapeFilter.h の 23 行で定義されています。
参照元 osl::move_action::EscapeFilter< P, OrigAction >::suitable().
Ptype osl::move_action::EscapeFilter< P, OrigAction >::attacking [private] |
escapeFilter.h の 25 行で定義されています。
参照元 osl::move_action::EscapeFilter< P, OrigAction >::EscapeFilter().
PieceMask osl::move_action::EscapeFilter< P, OrigAction >::defense_pin [private] |
escapeFilter.h の 23 行で定義されています。
参照元 osl::move_action::EscapeFilter< P, OrigAction >::suitable().
bool osl::move_action::EscapeFilter< P, OrigAction >::has_long [private] |
escapeFilter.h の 27 行で定義されています。
参照元 osl::move_action::EscapeFilter< P, OrigAction >::findThreat().
bool osl::move_action::EscapeFilter< P, OrigAction >::has_long_support [private] |
escapeFilter.h の 27 行で定義されています。
参照元 osl::move_action::EscapeFilter< P, OrigAction >::suitable().
int osl::move_action::EscapeFilter< P, OrigAction >::my_value [private] |
Piece osl::move_action::EscapeFilter< P, OrigAction >::removed [private] |
const NumEffectState& osl::move_action::EscapeFilter< P, OrigAction >::state [private] |
int osl::move_action::EscapeFilter< P, OrigAction >::value [private] |
1.6.3