All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Private Member Functions | Private Attributes
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]

List of all members.

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 [inline, private]
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 [inline, private]
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:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines