My Project
|
#include <minorPiece.h>
Public Types | |
enum | { DROP_DIM = PTYPE_SIZE*PTYPE_SIZE , ONE_DIM = DROP_DIM*2*2 , DIM = ONE_DIM * EvalStages } |
Public Member Functions | |
template<osl::Player Defense> | |
osl::MultiIntPair | evalOne (const NumEffectState &state, bool has_knight, BoardMask &knight_fork_squares, std::pair< Square, int > &knight_drop) |
template<osl::Player Defense> | |
osl::MultiIntPair | accumulate (const NumEffectState &state, bool has_knight, const BoardMask &knight_fork_squares, std::pair< Square, int > &knight_drop) |
template<osl::Player P> | |
osl::MultiIntPair | evalWithUpdate (const NumEffectState &state, Move moved, CArray< BoardMask, 2 > &knight_fork_squares, CArray< std::pair< Square, int >, 2 > &knight_drop) |
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 1667 of file minorPiece.h.
anonymous enum |
Enumerator | |
---|---|
DROP_DIM | |
ONE_DIM | |
DIM |
Definition at line 1670 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 | ||
) |
Definition at line 2829 of file minorPiece.cc.
References osl::container::BoardMask::any(), osl::Square::back(), osl::BLACK, osl::NumEffectState::hasEffectAt(), osl::Piece::isOnBoardByOwner(), osl::Piece::ptype(), osl::container::BoardMask::takeOneBit(), osl::UUL, osl::UUR, and osl::WHITE.
|
staticprivate |
|
static |
Definition at line 2736 of file minorPiece.cc.
References osl::alt(), osl::BLACK, osl::NumEffectState::effectedMask(), osl::PieceMask::getMask(), osl::SimpleState::hasPieceOnStand(), osl::KNIGHT, osl::NumEffectState::piecesOnBoard(), osl::PieceMask::selectBit(), and osl::WHITE.
Referenced by evalOne(), and 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 | ||
) |
Definition at line 2668 of file minorPiece.cc.
References osl::PieceMask::any(), osl::BLACK, osl::container::BoardMask::clear(), osl::PieceMask::clearBit(), osl::NumEffectState::hasEffectAt(), osl::Piece::isOnBoardByOwner(), osl::KNIGHT, osl::LANCE, osl::PAWN, osl::SimpleState::pieceOf(), osl::NumEffectState::piecesOnBoard(), osl::playerToIndex(), osl::Piece::ptype(), osl::container::BoardMask::set(), osl::sign(), osl::CArray< T, Capacity >::size(), osl::Piece::square(), osl::container::PieceMask64::takeOneBit(), osl::WHITE, osl::Square::x(), and osl::Square::y().
|
static |
References eval().
osl::MultiIntPair osl::eval::ml::KnightFork::evalWithUpdate | ( | const NumEffectState & | state, |
Move | moved, | ||
CArray< BoardMask, 2 > & | knight_fork_squares, | ||
CArray< std::pair< Square, int >, 2 > & | knight_drop | ||
) |
Definition at line 2871 of file minorPiece.cc.
References osl::alt(), osl::BLACK, osl::NumEffectState::effectedMask(), osl::PieceMask::getMask(), osl::SimpleState::hasPieceOnStand(), osl::KNIGHT, osl::NumEffectState::piecesOnBoard(), osl::PieceMask::selectBit(), and osl::WHITE.
|
static |
Definition at line 1692 of file minorPiece.h.
References osl::PTYPE_SIZE.
|
static |
|
inlinestatic |
Definition at line 1696 of file minorPiece.h.
References osl::KNIGHT, osl::LANCE, osl::PAWN, and osl::unpromote().
|
static |
Definition at line 2651 of file minorPiece.cc.
References osl::NStages, osl::PTYPE_SIZE, and osl::eval::ml::Weights::value().
|
staticprivate |
Definition at line 2786 of file minorPiece.cc.
References osl::BLACK, osl::Move::from(), osl::Move::isCapture(), osl::Move::isDrop(), osl::container::BoardMask::isInvalid(), osl::L, osl::Square::neighbor(), osl::Move::ptype(), osl::R, osl::container::BoardMask::reset(), osl::container::BoardMask::set(), osl::Move::to(), osl::U, osl::UUL, osl::UUR, osl::WHITE, osl::Square::x(), and osl::Square::y().
|
static |
Definition at line 1688 of file minorPiece.h.