#include <minorPiece.h>
Public Types | |
enum | { DROP_DIM = PTYPE_SIZE*PTYPE_SIZE, ONE_DIM = 2*DROP_DIM*2, DIM = ONE_DIM * EvalStages } |
Static Public Member Functions | |
static const Square | isBishopForkSquare (const NumEffectState &state, Player defense, const Square a, const Square b, bool maybe_empty=false) |
static const Square | isRookForkSquare (const NumEffectState &state, Player defense, const Square a, const Square b) |
static int | bishopIndex (Ptype a, Ptype b) |
static int | rookIndex (Ptype a, Ptype b) |
static void | setUp (const Weights &weights) |
template<Player Defense> | |
static MultiIntPair | evalOne (const NumEffectState &state, const PieceVector &target, std::pair< Square, int > &bishop_drop, std::pair< Square, int > &rook_drop) |
static MultiIntPair | eval (const NumEffectState &state, CArray< std::pair< Square, int >, 2 > &bishop_drop, CArray< std::pair< Square, int >, 2 > &rook_drop) |
Static Public Attributes | |
static CArray< MultiInt, ONE_DIM > | table |
Static Private Member Functions | |
static const Square | findDropInLine (const NumEffectState &state, Player defense, const Square a, const Square b, Piece king) |
static bool | testCenter (const NumEffectState &state, Player defense, const Square a, const Square b, Piece king, Square center, bool maybe_empty=false) |
Definition at line 1641 of file minorPiece.h.
anonymous enum |
Definition at line 1644 of file minorPiece.h.
static int osl::eval::ml::BishopRookFork::bishopIndex | ( | Ptype | a, |
Ptype | b | ||
) | [inline, static] |
Definition at line 1650 of file minorPiece.h.
References osl::PTYPE_SIZE.
Referenced by rookIndex().
osl::MultiIntPair osl::eval::ml::BishopRookFork::eval | ( | const NumEffectState & | state, |
CArray< std::pair< Square, int >, 2 > & | bishop_drop, | ||
CArray< std::pair< Square, int >, 2 > & | rook_drop | ||
) | [static] |
Definition at line 2608 of file minorPiece.cc.
References osl::BISHOP, osl::BLACK, osl::KING, osl::PAWN, result, osl::ROOK, target, and osl::WHITE.
Referenced by osl::eval::ml::OpenMidEndingEval::OpenMidEndingEval(), and osl::eval::ml::OpenMidEndingEval::updateSub().
osl::MultiIntPair osl::eval::ml::BishopRookFork::evalOne | ( | const NumEffectState & | state, |
const PieceVector & | target, | ||
std::pair< Square, int > & | bishop_drop, | ||
std::pair< Square, int > & | rook_drop | ||
) | [static] |
Definition at line 2542 of file minorPiece.cc.
References osl::alt(), osl::BISHOP, osl::BLACK, center, osl::Piece::isOnBoardByOwner(), osl::Square::isPieceStand(), osl::Piece::ptype(), result, osl::ROOK, osl::Piece::square(), and osl::WHITE.
Referenced by isRookForkSquare().
const osl::Square osl::eval::ml::BishopRookFork::findDropInLine | ( | const NumEffectState & | state, |
Player | defense, | ||
const Square | a, | ||
const Square | b, | ||
Piece | king | ||
) | [inline, static, private] |
Definition at line 2461 of file minorPiece.cc.
References osl::alt(), osl::Board_Table, osl::BoardTable::getShortOffset(), osl::Piece::isEmpty(), and osl::Square::isPieceStand().
const osl::Square osl::eval::ml::BishopRookFork::isBishopForkSquare | ( | const NumEffectState & | state, |
Player | defense, | ||
const Square | a, | ||
const Square | b, | ||
bool | maybe_empty = false |
||
) | [static] |
Definition at line 2495 of file minorPiece.cc.
References osl::Square::x(), and osl::Square::y().
Referenced by osl::move_probability::MoveInfo::adhocAdjustBishopFork().
const osl::Square osl::eval::ml::BishopRookFork::isRookForkSquare | ( | const NumEffectState & | state, |
Player | defense, | ||
const Square | a, | ||
const Square | b | ||
) | [inline, static] |
Definition at line 2522 of file minorPiece.cc.
References evalOne(), osl::Square::x(), and osl::Square::y().
static int osl::eval::ml::BishopRookFork::rookIndex | ( | Ptype | a, |
Ptype | b | ||
) | [inline, static] |
Definition at line 1651 of file minorPiece.h.
References bishopIndex(), and DROP_DIM.
void osl::eval::ml::BishopRookFork::setUp | ( | const Weights & | weights | ) | [static] |
Definition at line 2443 of file minorPiece.cc.
References osl::NStages, osl::PTYPE_SIZE, and osl::eval::ml::Weights::value().
bool osl::eval::ml::BishopRookFork::testCenter | ( | const NumEffectState & | state, |
Player | defense, | ||
const Square | a, | ||
const Square | b, | ||
Piece | king, | ||
Square | center, | ||
bool | maybe_empty = false |
||
) | [inline, static, private] |
Definition at line 2480 of file minorPiece.cc.
References osl::alt(), and osl::Piece::isEmpty().
osl::CArray< osl::MultiInt, 256 *2 *2 > osl::eval::ml::BishopRookFork::table [static] |
Definition at line 1660 of file minorPiece.h.