All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Static Public Member Functions | Private Types | Static Private Member Functions | Static Private Attributes | Friends | List of all members
osl::eval::ml::PawnDropBoth Class Reference

#include <minorPiece.h>

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

Static Public Member Functions

static MultiInt value (int attack_index, int defense_index, int attack_index_y, int defense_index_y, int attack_index_x, int defense_index_x)
 
static MultiInt standValue (int attack_index, int defense_index, int attack_index_y, int defense_index_y, int attack_index_x, int defense_index_x)
 
static MultiInt eval (const NumEffectState &state)
 
template<Player P>
static MultiInt evalWithUpdate (const NumEffectState &state, Move moved, MultiInt &last_value)
 

Private Types

enum  { BOTH_ON_BOARD, SELF_ON_BOARD, OPP_ON_BOARD, BOTH_ON_STAND }
 

Static Private Member Functions

template<Player Owner>
static int indexY (const Piece king, int x)
 
static int index (const Square king, int x)
 
template<bool Attack>
static int indexX (const Piece king, int x)
 

Static Private Attributes

static CArray< MultiInt, 9 > attack_table
 
static CArray< MultiInt, 9 > defense_table
 
static CArray< MultiInt, 81 > attack_y_table
 
static CArray< MultiInt, 81 > defense_y_table
 
static CArray< MultiInt, 90 > x_table
 
static CArray< MultiInt, 18 > stand_table
 
static CArray< MultiInt, 90 > x_stand_table
 
static CArray< MultiInt, 162 > y_stand_table
 
static CArray< MultiInt, 10 > drop_non_drop_table
 
static CArray< MultiInt, 36 > state_king_relative_table
 

Friends

class PawnDrop
 
class PawnDropY
 
class PawnDropX
 
class PawnDropPawnStand
 
class PawnDropPawnStandX
 
class PawnDropPawnStandY
 
class PawnDropNonDrop
 
class PawnStateKingRelative
 

Detailed Description

Definition at line 35 of file minorPiece.h.

Member Enumeration Documentation

anonymous enum
private
Enumerator
BOTH_ON_BOARD 
SELF_ON_BOARD 
OPP_ON_BOARD 
BOTH_ON_STAND 

Definition at line 46 of file minorPiece.h.

Member Function Documentation

osl::MultiInt osl::eval::ml::PawnDropBoth::eval ( const NumEffectState &  state)
static
template<Player P>
static MultiInt osl::eval::ml::PawnDropBoth::evalWithUpdate ( const NumEffectState &  state,
Move  moved,
MultiInt last_value 
)
inlinestatic
static int osl::eval::ml::PawnDropBoth::index ( const Square  king,
int  x 
)
inlinestaticprivate

Definition at line 63 of file minorPiece.h.

References osl::Square::x().

Referenced by evalWithUpdate().

template<bool Attack>
static int osl::eval::ml::PawnDropBoth::indexX ( const Piece  king,
int  x 
)
inlinestaticprivate

Definition at line 68 of file minorPiece.h.

References osl::Piece::owner(), osl::Piece::square(), osl::WHITE, and osl::Square::x().

template<Player Owner>
static int osl::eval::ml::PawnDropBoth::indexY ( const Piece  king,
int  x 
)
inlinestaticprivate
static MultiInt osl::eval::ml::PawnDropBoth::standValue ( int  attack_index,
int  defense_index,
int  attack_index_y,
int  defense_index_y,
int  attack_index_x,
int  defense_index_x 
)
inlinestatic

Definition at line 89 of file minorPiece.h.

References stand_table, x_stand_table, and y_stand_table.

Referenced by evalWithUpdate().

static MultiInt osl::eval::ml::PawnDropBoth::value ( int  attack_index,
int  defense_index,
int  attack_index_y,
int  defense_index_y,
int  attack_index_x,
int  defense_index_x 
)
inlinestatic

Definition at line 77 of file minorPiece.h.

References attack_table, attack_y_table, defense_table, defense_y_table, and x_table.

Referenced by evalWithUpdate().

Friends And Related Function Documentation

friend class PawnDrop
friend

Definition at line 37 of file minorPiece.h.

friend class PawnDropNonDrop
friend

Definition at line 43 of file minorPiece.h.

friend class PawnDropPawnStand
friend

Definition at line 40 of file minorPiece.h.

friend class PawnDropPawnStandX
friend

Definition at line 41 of file minorPiece.h.

friend class PawnDropPawnStandY
friend

Definition at line 42 of file minorPiece.h.

friend class PawnDropX
friend

Definition at line 39 of file minorPiece.h.

friend class PawnDropY
friend

Definition at line 38 of file minorPiece.h.

friend class PawnStateKingRelative
friend

Definition at line 44 of file minorPiece.h.

Member Data Documentation

osl::misc::CArray< osl::MultiInt, 9 > osl::eval::ml::PawnDropBoth::attack_table
staticprivate

Definition at line 47 of file minorPiece.h.

Referenced by osl::eval::ml::PawnDrop::setUp(), and value().

osl::misc::CArray< osl::MultiInt, 81 > osl::eval::ml::PawnDropBoth::attack_y_table
staticprivate

Definition at line 48 of file minorPiece.h.

Referenced by osl::eval::ml::PawnDropY::setUp(), and value().

osl::misc::CArray< osl::MultiInt, 9 > osl::eval::ml::PawnDropBoth::defense_table
staticprivate

Definition at line 47 of file minorPiece.h.

Referenced by osl::eval::ml::PawnDrop::setUp(), and value().

osl::misc::CArray< osl::MultiInt, 81 > osl::eval::ml::PawnDropBoth::defense_y_table
staticprivate

Definition at line 48 of file minorPiece.h.

Referenced by osl::eval::ml::PawnDropY::setUp(), and value().

osl::misc::CArray< osl::MultiInt, 10 > osl::eval::ml::PawnDropBoth::drop_non_drop_table
staticprivate

Definition at line 53 of file minorPiece.h.

Referenced by evalWithUpdate(), and osl::eval::ml::PawnDropNonDrop::setUp().

osl::misc::CArray< osl::MultiInt, 18 > osl::eval::ml::PawnDropBoth::stand_table
staticprivate

Definition at line 50 of file minorPiece.h.

Referenced by osl::eval::ml::PawnDropPawnStand::setUp(), and standValue().

osl::misc::CArray< osl::MultiInt, 36 > osl::eval::ml::PawnDropBoth::state_king_relative_table
staticprivate

Definition at line 54 of file minorPiece.h.

Referenced by evalWithUpdate(), and osl::eval::ml::PawnStateKingRelative::setUp().

osl::misc::CArray< osl::MultiInt, 90 > osl::eval::ml::PawnDropBoth::x_stand_table
staticprivate

Definition at line 51 of file minorPiece.h.

Referenced by osl::eval::ml::PawnDropPawnStandX::setUp(), and standValue().

osl::misc::CArray< osl::MultiInt, 90 > osl::eval::ml::PawnDropBoth::x_table
staticprivate

Definition at line 49 of file minorPiece.h.

Referenced by osl::eval::ml::PawnDropX::setUp(), and value().

osl::misc::CArray< osl::MultiInt, 162 > osl::eval::ml::PawnDropBoth::y_stand_table
staticprivate

Definition at line 52 of file minorPiece.h.

Referenced by osl::eval::ml::PawnDropPawnStandY::setUp(), and standValue().


The documentation for this class was generated from the following files: