All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Static Public Member Functions | Static Private Member Functions | Static Private Attributes | Friends
osl::eval::ml::RookMobilityAll Class Reference

#include <mobility.h>

Collaboration diagram for osl::eval::ml::RookMobilityAll:
Collaboration graph
[legend]

List of all members.

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

Detailed Description

Definition at line 20 of file mobility.h.


Member Function Documentation

template<int Sign>
void osl::eval::ml::RookMobilityAll::adjust ( const NumEffectState &  state,
bool  promoted,
int  vertical,
int  horizontal,
Square  pos,
MultiInt value 
) [inline, static]
void osl::eval::ml::RookMobilityAll::eval ( const NumEffectState &  state,
MultiInt out 
) [static]
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().

template<int Sign>
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().

template<int Sign>
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().


Friends And Related Function Documentation

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.


Member Data Documentation

Definition at line 63 of file mobility.h.

Definition at line 62 of file mobility.h.

Definition at line 64 of file mobility.h.

Definition at line 67 of file mobility.h.

Definition at line 65 of file mobility.h.

Definition at line 68 of file mobility.h.

Definition at line 66 of file mobility.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines