#include <mobility.h>

Static Public Member Functions | |
| template<int Sign> | |
| static void | adjust (const NumEffectState &, bool promoted, int vertical, int horizontal, Square pos, MultiInt &value) |
| static void | eval (const NumEffectState &, MultiInt &out) |
Static Private Member Functions | |
| static int | indexX (Square rook, bool promoted, int count, bool vertical) |
| template<int Sign> | |
| static int | indexY (Square rook, bool promoted, int count, bool vertical) |
| template<int Sign> | |
| static int | indexXKingX (Square rook, Square king, int count, bool vertical) |
Static Private Attributes | |
| static CArray< MultiInt, 18 > | rook_vertical_table |
| static CArray< MultiInt, 18 > | rook_horizontal_table |
| static CArray< MultiInt, 34 > | sum_table |
| static CArray< MultiInt, 324 > | x_table |
| static CArray< MultiInt, 324 > | y_table |
| static CArray< MultiInt, 17 *9 > | sumkingx_table |
| static CArray< MultiInt, 9 *2 *5 *9 > | xkingx_table |
Friends | |
| class | RookMobility |
| class | RookMobilityX |
| class | RookMobilityY |
| class | RookMobilitySum |
| class | RookMobilitySumKingX |
| class | RookMobilityXKingX |
Definition at line 20 of file mobility.h.
| void osl::eval::ml::RookMobilityAll::adjust | ( | const NumEffectState & | state, |
| bool | promoted, | ||
| int | vertical, | ||
| int | horizontal, | ||
| Square | pos, | ||
| MultiInt & | value | ||
| ) | [inline, static] |
Definition at line 103 of file mobility.cc.
References osl::BLACK, osl::WHITE, osl::eval::ml::ppair::x_table, and osl::eval::ml::ppair::y_table.
| void osl::eval::ml::RookMobilityAll::eval | ( | const NumEffectState & | state, |
| MultiInt & | out | ||
| ) | [static] |
Definition at line 145 of file mobility.cc.
References adjust(), osl::BLACK, osl::Piece::isOnBoard(), osl::Piece::isPromoted(), out, osl::Piece::owner(), and osl::Piece::square().
Referenced by osl::eval::ml::OpenMidEndingEval::OpenMidEndingEval(), and osl::eval::ml::OpenMidEndingEval::updateSub().
| static int osl::eval::ml::RookMobilityAll::indexX | ( | Square | rook, |
| bool | promoted, | ||
| int | count, | ||
| bool | vertical | ||
| ) | [inline, static, private] |
Definition at line 36 of file mobility.h.
References count, and osl::Square::x().
| static int osl::eval::ml::RookMobilityAll::indexXKingX | ( | Square | rook, |
| Square | king, | ||
| int | count, | ||
| bool | vertical | ||
| ) | [inline, static, private] |
Definition at line 53 of file mobility.h.
References osl::Square::rotate180(), and osl::Square::x().
| static int osl::eval::ml::RookMobilityAll::indexY | ( | Square | rook, |
| bool | promoted, | ||
| int | count, | ||
| bool | vertical | ||
| ) | [inline, static, private] |
Definition at line 45 of file mobility.h.
References count, and osl::Square::y().
friend class RookMobility [friend] |
Definition at line 22 of file mobility.h.
friend class RookMobilitySum [friend] |
Definition at line 25 of file mobility.h.
friend class RookMobilitySumKingX [friend] |
Definition at line 26 of file mobility.h.
friend class RookMobilityX [friend] |
Definition at line 23 of file mobility.h.
friend class RookMobilityXKingX [friend] |
Definition at line 27 of file mobility.h.
friend class RookMobilityY [friend] |
Definition at line 24 of file mobility.h.
osl::misc::CArray< MultiInt, 18 > osl::eval::ml::RookMobilityAll::rook_horizontal_table [static, private] |
Definition at line 63 of file mobility.h.
osl::misc::CArray< MultiInt, 18 > osl::eval::ml::RookMobilityAll::rook_vertical_table [static, private] |
Definition at line 62 of file mobility.h.
osl::misc::CArray< MultiInt, 34 > osl::eval::ml::RookMobilityAll::sum_table [static, private] |
Definition at line 64 of file mobility.h.
osl::misc::CArray< MultiInt, 17 *9 > osl::eval::ml::RookMobilityAll::sumkingx_table [static, private] |
Definition at line 67 of file mobility.h.
osl::misc::CArray< MultiInt, 324 > osl::eval::ml::RookMobilityAll::x_table [static, private] |
Definition at line 65 of file mobility.h.
osl::misc::CArray< MultiInt, 9 *2 *5 *9 > osl::eval::ml::RookMobilityAll::xkingx_table [static, private] |
Definition at line 68 of file mobility.h.
osl::misc::CArray< MultiInt, 324 > osl::eval::ml::RookMobilityAll::y_table [static, private] |
Definition at line 66 of file mobility.h.
1.7.6.1