#include <minorPiece.h>

Public Types | |
| enum | { DROP_DIM = PTYPE_SIZE*PTYPE_SIZE, ONE_DIM = DROP_DIM*2*2, DIM = ONE_DIM * EvalStages } |
Static Public Member Functions | |
| static void | setUp (const Weights &weights) |
| template<Player Defense> | |
| static MultiIntPair | evalOne (const NumEffectState &state, bool has_knight, BoardMask &knight_fork_squares, std::pair< Square, int > &knight_drop) |
| static MultiIntPair | eval (const NumEffectState &state, CArray< BoardMask, 2 > &knight_fork_squares, CArray< std::pair< Square, int >, 2 > &knight_drop) |
| template<Player P> | |
| static MultiIntPair | evalWithUpdate (const NumEffectState &state, Move moved, CArray< BoardMask, 2 > &knight_fork_squares, CArray< std::pair< Square, int >, 2 > &knight_drop) |
| static bool | isForkSquare (const NumEffectState &state, Player defense, int y, int x0, int x1) |
| static int | index (Ptype a, Ptype b) |
| static bool | isTarget (Ptype ptype) |
Static Public Attributes | |
| static CArray< MultiInt, ONE_DIM > | table |
Static Private Member Functions | |
| template<Player P, Player Defense> | |
| static void | updateSquares (const NumEffectState &state, Move moved, BoardMask &knight_fork_squares) |
| template<osl::Player Defense> | |
| static MultiIntPair | accumulate (const NumEffectState &state, bool has_knight, const BoardMask &knight_fork_squares, std::pair< Square, int > &knight_drop) |
Definition at line 1670 of file minorPiece.h.
| anonymous enum |
Definition at line 1673 of file minorPiece.h.
| osl::MultiIntPair osl::eval::ml::KnightFork::accumulate | ( | const NumEffectState & | state, |
| bool | has_knight, | ||
| const BoardMask & | knight_fork_squares, | ||
| std::pair< Square, int > & | knight_drop | ||
| ) | [static, private] |
Definition at line 2830 of file minorPiece.cc.
References osl::Square::back(), osl::BLACK, osl::Piece::isOnBoardByOwner(), osl::Piece::ptype(), result, osl::UUL, osl::UUR, and osl::WHITE.
| osl::MultiIntPair osl::eval::ml::KnightFork::eval | ( | const NumEffectState & | state, |
| CArray< BoardMask, 2 > & | knight_fork_squares, | ||
| CArray< std::pair< Square, int >, 2 > & | knight_drop | ||
| ) | [static] |
Definition at line 2737 of file minorPiece.cc.
References osl::alt(), osl::BLACK, osl::KNIGHT, result, and osl::WHITE.
Referenced by osl::eval::ml::OpenMidEndingEval::OpenMidEndingEval().
| osl::MultiIntPair osl::eval::ml::KnightFork::evalOne | ( | const NumEffectState & | state, |
| bool | has_knight, | ||
| BoardMask & | knight_fork_squares, | ||
| std::pair< Square, int > & | knight_drop | ||
| ) | [static] |
Definition at line 2669 of file minorPiece.cc.
References osl::BLACK, osl::Piece::isOnBoardByOwner(), osl::KNIGHT, osl::LANCE, osl::PAWN, osl::playerToIndex(), osl::playerToMul(), osl::Piece::ptype(), result, osl::Piece::square(), target, osl::WHITE, osl::Square::x(), and osl::Square::y().
| template MultiIntPair osl::eval::ml::KnightFork::evalWithUpdate< WHITE > | ( | const NumEffectState & | state, |
| Move | moved, | ||
| CArray< BoardMask, 2 > & | knight_fork_squares, | ||
| CArray< std::pair< Square, int >, 2 > & | knight_drop | ||
| ) | [static] |
Definition at line 2872 of file minorPiece.cc.
References osl::alt(), osl::BLACK, osl::KNIGHT, result, and osl::WHITE.
| static int osl::eval::ml::KnightFork::index | ( | Ptype | a, |
| Ptype | b | ||
| ) | [inline, static] |
Definition at line 1695 of file minorPiece.h.
References osl::PTYPE_SIZE.
| static bool osl::eval::ml::KnightFork::isForkSquare | ( | const NumEffectState & | state, |
| Player | defense, | ||
| int | y, | ||
| int | x0, | ||
| int | x1 | ||
| ) | [static] |
| static bool osl::eval::ml::KnightFork::isTarget | ( | Ptype | ptype | ) | [inline, static] |
Definition at line 1699 of file minorPiece.h.
References osl::KNIGHT, osl::LANCE, osl::PAWN, and osl::unpromote().
| void osl::eval::ml::KnightFork::setUp | ( | const Weights & | weights | ) | [static] |
Definition at line 2651 of file minorPiece.cc.
References osl::NStages, osl::PTYPE_SIZE, and osl::eval::ml::Weights::value().
| void osl::eval::ml::KnightFork::updateSquares | ( | const NumEffectState & | state, |
| Move | moved, | ||
| BoardMask & | knight_fork_squares | ||
| ) | [static, private] |
Definition at line 2787 of file minorPiece.cc.
References osl::BLACK, osl::Move::from(), osl::Move::isCapture(), osl::Move::isDrop(), osl::L, osl::Square::neighbor(), osl::Move::ptype(), osl::R, osl::Move::to(), osl::U, osl::UUL, osl::UUR, osl::WHITE, and osl::Square::y().
osl::CArray< osl::MultiInt, 256 *2 *2 > osl::eval::ml::KnightFork::table [static] |
Definition at line 1691 of file minorPiece.h.
1.7.6.1