All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Types | Public Member Functions | Private Member Functions | Private Attributes
osl::progress::Effect5x3Table Class Reference

Effect5x3の差分計算で使うテーブル. More...

#include <effect5x3Table.h>

Collaboration diagram for osl::progress::Effect5x3Table:
Collaboration graph
[legend]

List of all members.

Public Types

enum  {
  StandPAWN = 1, StandLANCE = 4, StandKNIGHT = 8, StandSILVER = 8,
  StandGOLD = 8, StandBISHOP = 12, StandROOK = 12
}

Public Member Functions

 Effect5x3Table ()
unsigned int piecesOnStand (Ptype ptype) const
 持駒のPtypeごとの寄与を表すテーブルの参照.
unsigned int countShortEffect (PtypeO ptypeO, Offset32 offset32) const
 5x3領域への短い利きの数の計算.
LongEffect4 const & getLongEffect (PtypeO ptypeO, Offset32 offset32) const
 5x3領域へのPtypeOを限定した長い利きの計算.
LongEffect const & getBlockEffect (Direction d, Offset32 offset32) const
 5x3領域へのdirectionを限定した長い利きの計算.
unsigned int getAttackEffect (Player pl, Square pos, int x, int y) const
unsigned int getDefenseEffect (Player pl, Square pos, int x, int y) const

Private Member Functions

void setupOnStand ()
void setupShortEffect ()
void setupLongEffect ()
void setupBlockEffect ()
void setupAttackEffect ()
void setupDefenseEffect ()

Private Attributes

CArray< unsigned int, PTYPE_SIZEonStand
CArray2d< unsigned int,
PTYPEO_SIZE, Offset32::SIZE
shortEffect
CArray2d< LongEffect4,
PTYPEO_SIZE, Offset32::SIZE
longEffect
CArray2d< LongEffect,
8, Offset32::SIZE
blockEffect
CArray3d< unsigned int,
2, Square::SIZE, 5 *3 > 
attackEffect
CArray3d< unsigned int,
2, Square::SIZE, 5 *3 > 
defenseEffect

Detailed Description

Effect5x3の差分計算で使うテーブル.

Definition at line 39 of file effect5x3Table.h.


Member Enumeration Documentation

anonymous enum
Enumerator:
StandPAWN 
StandLANCE 
StandKNIGHT 
StandSILVER 
StandGOLD 
StandBISHOP 
StandROOK 

Definition at line 42 of file effect5x3Table.h.


Constructor & Destructor Documentation

Definition at line 232 of file effect5x3Table.cc.


Member Function Documentation

unsigned int osl::progress::Effect5x3Table::countShortEffect ( PtypeO  ptypeO,
Offset32  offset32 
) const [inline]

5x3領域への短い利きの数の計算.

ただし8倍したものを返す

Parameters:
ptypeO- 利きをつけようとする駒のptypeO
o32- (to - from)のOffset32版

Definition at line 85 of file effect5x3Table.h.

References osl::Offset32Base< Width, Width2 >::index(), osl::PTYPEO_MIN, and shortEffect.

unsigned int osl::progress::Effect5x3Table::getAttackEffect ( Player  pl,
Square  pos,
int  x,
int  y 
) const [inline]
LongEffect const& osl::progress::Effect5x3Table::getBlockEffect ( Direction  d,
Offset32  offset32 
) const [inline]

5x3領域へのdirectionを限定した長い利きの計算.

Parameters:
d- 長い利きの方向
o32- (to - from)のOffset32版

Definition at line 104 of file effect5x3Table.h.

References blockEffect, and osl::Offset32Base< Width, Width2 >::index().

unsigned int osl::progress::Effect5x3Table::getDefenseEffect ( Player  pl,
Square  pos,
int  x,
int  y 
) const [inline]
LongEffect4 const& osl::progress::Effect5x3Table::getLongEffect ( PtypeO  ptypeO,
Offset32  offset32 
) const [inline]

5x3領域へのPtypeOを限定した長い利きの計算.

ただし8倍したものを返す

Parameters:
ptypeO- 利きをつけようとする駒のptypeO
o32- (to - from)のOffset32版

Definition at line 95 of file effect5x3Table.h.

References osl::Offset32Base< Width, Width2 >::index(), longEffect, and osl::PTYPEO_MIN.

unsigned int osl::progress::Effect5x3Table::piecesOnStand ( Ptype  ptype) const [inline]

持駒のPtypeごとの寄与を表すテーブルの参照.

以下の重みで計算 PAWN 1 LANCE 4 KNIGHT,SILVER,GOLD 8 BISHOP,ROOK 12

Parameters:
ptype- 持駒のptype

Definition at line 75 of file effect5x3Table.h.

References onStand.

Referenced by osl::progress::Effect5x3::updateStand().


Member Data Documentation

CArray3d<unsigned int,2,Square::SIZE,5*3> osl::progress::Effect5x3Table::attackEffect [private]

Definition at line 56 of file effect5x3Table.h.

Referenced by getAttackEffect().

Definition at line 55 of file effect5x3Table.h.

Referenced by getBlockEffect().

CArray3d<unsigned int,2,Square::SIZE,5*3> osl::progress::Effect5x3Table::defenseEffect [private]

Definition at line 57 of file effect5x3Table.h.

Referenced by getDefenseEffect().

Definition at line 54 of file effect5x3Table.h.

Referenced by getLongEffect().

CArray<unsigned int,PTYPE_SIZE> osl::progress::Effect5x3Table::onStand [private]

Definition at line 52 of file effect5x3Table.h.

Referenced by piecesOnStand(), and setupOnStand().

Definition at line 53 of file effect5x3Table.h.

Referenced by countShortEffect().


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