All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Private Member Functions | Private Attributes | List of all members
osl::move_action::EscapeFilter< P, OrigAction > Class Template Reference

利きのないまたは守りのあるところへ動くためのフィルタ More...

#include <escapeFilter.h>

Collaboration diagram for osl::move_action::EscapeFilter< P, OrigAction >:
Collaboration graph
[legend]

Public Member Functions

 EscapeFilter (const NumEffectState &s, OrigAction &action, Square pos, Ptype ptype)
 
void simpleMove (Square from, Square to, Ptype ptype, bool isPromote, Player, Move m)
 
void unknownMove (Square from, Square to, Piece p1, Ptype ptype, bool isPromote, Player, Move m)
 
void dropMove (Square to, Ptype ptype, Player, Move)
 

Private Member Functions

 BOOST_CLASS_REQUIRE (OrigAction, osl::move_action, Concept)
 
Piece findThreat (Square to) const
 
template<bool IsSimple>
bool suitable (Square to) const
 

Private Attributes

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
 

Detailed Description

template<Player P, class OrigAction>
class osl::move_action::EscapeFilter< P, OrigAction >

利きのないまたは守りのあるところへ動くためのフィルタ

Definition at line 18 of file escapeFilter.h.

Constructor & Destructor Documentation

template<Player P, class OrigAction >
osl::move_action::EscapeFilter< P, OrigAction >::EscapeFilter ( const NumEffectState &  s,
OrigAction &  action,
Square  pos,
Ptype  ptype 
)
inline

Member Function Documentation

template<Player P, class OrigAction >
osl::move_action::EscapeFilter< P, OrigAction >::BOOST_CLASS_REQUIRE ( OrigAction  ,
osl::move_action  ,
Concept   
)
private
template<Player P, class OrigAction >
void osl::move_action::EscapeFilter< P, OrigAction >::dropMove ( Square  to,
Ptype  ptype,
Player  ,
Move   
)
inline

Definition at line 103 of file escapeFilter.h.

template<Player P, class OrigAction >
Piece osl::move_action::EscapeFilter< P, OrigAction >::findThreat ( Square  to) const
inlineprivate
template<Player P, class OrigAction >
void osl::move_action::EscapeFilter< P, OrigAction >::simpleMove ( Square  from,
Square  to,
Ptype  ptype,
bool  isPromote,
Player  ,
Move  m 
)
inline
template<Player P, class OrigAction >
template<bool IsSimple>
bool osl::move_action::EscapeFilter< P, OrigAction >::suitable ( Square  to) const
inlineprivate
template<Player P, class OrigAction >
void osl::move_action::EscapeFilter< P, OrigAction >::unknownMove ( Square  from,
Square  to,
Piece  p1,
Ptype  ptype,
bool  isPromote,
Player  ,
Move  m 
)
inline

Member Data Documentation

template<Player P, class OrigAction >
OrigAction& osl::move_action::EscapeFilter< P, OrigAction >::action
private
template<Player P, class OrigAction >
PieceMask osl::move_action::EscapeFilter< P, OrigAction >::attack_pin
private
template<Player P, class OrigAction >
Ptype osl::move_action::EscapeFilter< P, OrigAction >::attacking
private
template<Player P, class OrigAction >
PieceMask osl::move_action::EscapeFilter< P, OrigAction >::defense_pin
private
template<Player P, class OrigAction >
bool osl::move_action::EscapeFilter< P, OrigAction >::has_long
private
template<Player P, class OrigAction >
bool osl::move_action::EscapeFilter< P, OrigAction >::has_long_support
private
template<Player P, class OrigAction >
int osl::move_action::EscapeFilter< P, OrigAction >::my_value
private
template<Player P, class OrigAction >
Piece osl::move_action::EscapeFilter< P, OrigAction >::removed
private
template<Player P, class OrigAction >
const NumEffectState& osl::move_action::EscapeFilter< P, OrigAction >::state
private
template<Player P, class OrigAction >
int osl::move_action::EscapeFilter< P, OrigAction >::value
private

The documentation for this class was generated from the following file: