#include <feature.h>


Public 型 | |
| 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 メソッド | |
| BreakThreatmate () | |
| double | match (const StateInfo &info, const MoveInfo &move, int offset, const double *w) const |
Static Public メソッド | |
| 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) |
move_probability/feature.h の 1022 行で定義されています。
| anonymous enum |
| PatternCacheSize | |
| AddEffectSize | |
| OpenRoadSize | |
| OpenRoadBase | |
| KingMoveSize | |
| KingMoveBase | |
| CaptureSize | |
| CaptureBase | |
| AddEffect8Size | |
| AddEffect8Base | |
| OtherMoveSize | |
| OtherMoveBase | |
| DIM |
move_probability/feature.h の 1025 行で定義されています。
| osl::move_probability::BreakThreatmate::BreakThreatmate | ( | ) | [inline] |
move_probability/feature.h の 1035 行で定義されています。
| static bool osl::move_probability::BreakThreatmate::isDefendingKing8 | ( | Move | move, | |
| Square | king, | |||
| const NumEffectState & | state | |||
| ) | [inline, static] |
| static bool osl::move_probability::BreakThreatmate::isDefendingThreatmate | ( | Move | move, | |
| Move | threatmate, | |||
| const NumEffectState & | state | |||
| ) | [inline, static] |
| static bool osl::move_probability::BreakThreatmate::isKingMove | ( | Move | move | ) | [inline, static] |
move_probability/feature.h の 1038 行で定義されています。
参照先 osl::Move::ptype().
| static bool osl::move_probability::BreakThreatmate::isOpeningKingRoad | ( | Move | move, | |
| Square | king | |||
| ) | [inline, static] |
move_probability/feature.h の 1042 行で定義されています。
参照先 osl::Move::from(), osl::Move::isDrop(), と osl::Square::isNeighboring8().
| double osl::move_probability::BreakThreatmate::match | ( | const StateInfo & | info, | |
| const MoveInfo & | move, | |||
| int | offset, | |||
| const double * | w | |||
| ) | const [inline, virtual] |
osl::move_probability::Featureを実装しています。
move_probability/feature.h の 1080 行で定義されています。
参照先 osl::captured(), osl::Square::index(), osl::Move::isNormal(), osl::Piece::isPiece(), osl::SimpleState::kingSquare(), osl::move_probability::MoveInfo::move, osl::move_probability::StateInfo::pattern_cache, osl::SimpleState::pieceOnBoard(), osl::move_probability::MoveInfo::player, osl::Piece::ptype(), osl::Move::ptype(), osl::PTYPE_SIZE, osl::Piece::ptypeO(), osl::PTYPEO_EDGE, osl::ptypeOIndex(), osl::CArray< T, Capacity >::size(), osl::Piece::square(), osl::move_probability::StateInfo::state, osl::move_probability::StateInfo::threatmate_move, と osl::Move::to().
1.7.1