#include <feature.h>
Public Types | |
enum | { PatternCacheSize = PatternCommon::PatternCacheSize, AddEffectSize = PTYPE_SIZE * PatternCacheSize, OpenRoadSize = PTYPE_SIZE * PatternCacheSize, OpenRoadBase = AddEffectSize, KingMoveSize = PatternCacheSize, KingMoveBase = OpenRoadBase + OpenRoadSize, CaptureSize = PTYPE_SIZE*PTYPE_SIZE, CaptureBase = KingMoveBase + KingMoveSize, AddEffect8Size = PTYPE_SIZE*PatternCacheSize, AddEffect8Base = CaptureBase + CaptureSize, OtherMoveSize = 1, OtherMoveBase = AddEffect8Base + AddEffect8Size, DIM = OtherMoveBase + OtherMoveSize } |
Public Member Functions | |
BreakThreatmate () | |
double | match (const StateInfo &info, const MoveInfo &move, int offset, const double *w) const |
Static Public Member Functions | |
static bool | isKingMove (Move move) |
static bool | isOpeningKingRoad (Move move, Square king) |
static bool | isDefendingThreatmate (Move move, Move threatmate, const NumEffectState &state) |
static bool | isDefendingKing8 (Move move, Square king, const NumEffectState &state) |
Definition at line 1024 of file move_probability/feature.h.
anonymous enum |
PatternCacheSize | |
AddEffectSize | |
OpenRoadSize | |
OpenRoadBase | |
KingMoveSize | |
KingMoveBase | |
CaptureSize | |
CaptureBase | |
AddEffect8Size | |
AddEffect8Base | |
OtherMoveSize | |
OtherMoveBase | |
DIM |
Definition at line 1027 of file move_probability/feature.h.
Definition at line 1037 of file move_probability/feature.h.
static bool osl::move_probability::BreakThreatmate::isDefendingKing8 | ( | Move | move, |
Square | king, | ||
const NumEffectState & | state | ||
) | [inline, static] |
Definition at line 1066 of file move_probability/feature.h.
References osl::alt(), osl::move_generator::addeffect8::hasEffect(), osl::Piece::ptypeO(), osl::Move::ptypeO(), osl::Piece::square(), and osl::Move::to().
static bool osl::move_probability::BreakThreatmate::isDefendingThreatmate | ( | Move | move, |
Move | threatmate, | ||
const NumEffectState & | state | ||
) | [inline, static] |
Definition at line 1049 of file move_probability/feature.h.
References osl::Move::from(), osl::PtypeTable::getEffect(), osl::Move::isDrop(), osl::Ptype_Table, osl::Move::ptypeO(), and osl::Move::to().
static bool osl::move_probability::BreakThreatmate::isKingMove | ( | Move | move | ) | [inline, static] |
Definition at line 1040 of file move_probability/feature.h.
References osl::KING, and osl::Move::ptype().
static bool osl::move_probability::BreakThreatmate::isOpeningKingRoad | ( | Move | move, |
Square | king | ||
) | [inline, static] |
Definition at line 1044 of file move_probability/feature.h.
References osl::Move::from(), osl::Move::isDrop(), and osl::Neighboring8::isNeighboring8().
double osl::move_probability::BreakThreatmate::match | ( | const StateInfo & | info, |
const MoveInfo & | move, | ||
int | offset, | ||
const double * | w | ||
) | const [inline, virtual] |
Implements osl::move_probability::Feature.
Definition at line 1082 of file move_probability/feature.h.
References osl::captured(), osl::move_generator::addeffect8::hasEffect(), osl::Square::index(), osl::Move::isNormal(), osl::Piece::isPiece(), osl::move_probability::MoveInfo::move, osl::move_probability::StateInfo::pattern_cache, osl::move_probability::MoveInfo::player, osl::Piece::ptype(), osl::Move::ptype(), osl::PTYPE_EDGE, osl::PTYPE_SIZE, osl::Piece::ptypeO(), osl::PTYPEO_EDGE, osl::ptypeOIndex(), osl::Piece::square(), osl::move_probability::PatternCommon::SquareDim, osl::move_probability::StateInfo::state, osl::move_probability::StateInfo::threatmate_move, and osl::Move::to().