All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Static Public Member Functions | Protected Attributes
osl::progress::Effect5x3 Struct Reference

玉の周囲5x3の領域の利きの数と持駒から計算した進行度. More...

#include <effect5x3.h>

Inheritance diagram for osl::progress::Effect5x3:
Inheritance graph
[legend]
Collaboration diagram for osl::progress::Effect5x3:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 Effect5x3 (const NumEffectState &state)
void changeTurn ()
int progress (Player p) const
const Progress16 progress16 () const
const Progress16 progress16 (Player p) const
Effect5x3 expect (const NumEffectState &state, Move move) const
void update (const NumEffectState &new_state, Move last_move)

Static Public Member Functions

static void updateStand (int &old_stand, Move last_move)
static int makeProgressAll (Player defense, const NumEffectState &state, Square king)
static int makeProgressArea (Player attack, const NumEffectState &state, Square king)
static int makeProgressStand (Player attack, const NumEffectState &state)
static int makeProgress (Player defense, const NumEffectState &state)
 王の位置を指定したprogressの計算.
static int makeProgress (const NumEffectState &state)
static const Progress16 progress16 (int progress)
 0-15 の値を返す
static const Progress16 progress16each (int progress)
 0-15 の値を返す.

Protected Attributes

CArray< int, 2 > progresses
CArray< int, 2 > stand_progresses
CArray< int, 2 > area_progresses

Detailed Description

玉の周囲5x3の領域の利きの数と持駒から計算した進行度.

5x3領域は盤面内になるように補正する. 黒と白の両方の進行度を持つ. 持駒の重みは PAWN 1 LANCE 4 KNIGHT,SILVER,GOLD 8 BISHOP,ROOK 12 利きの数は8の重みを持つ.

Definition at line 26 of file effect5x3.h.


Constructor & Destructor Documentation

osl::progress::Effect5x3::Effect5x3 ( const NumEffectState &  state) [explicit]

Definition at line 9 of file effect5x3.cc.

References osl::BLACK, and osl::WHITE.


Member Function Documentation

Definition at line 74 of file effect5x3.h.

osl::progress::Effect5x3 osl::progress::Effect5x3::expect ( const NumEffectState &  state,
Move  move 
) const
static int osl::progress::Effect5x3::makeProgress ( Player  defense,
const NumEffectState &  state 
) [inline, static]

王の位置を指定したprogressの計算.

Parameters:
defense- こちらの玉に注目したprogress
state- 盤面
king- 玉の位置がここにあるとする. 一般には,盤面から玉の位置は特定できるが,差分計算の途中では 一致しないとして呼び出すことがある.

Definition at line 44 of file effect5x3.h.

References makeProgressAll().

Referenced by makeProgress().

static int osl::progress::Effect5x3::makeProgress ( const NumEffectState &  state) [inline, static]

Definition at line 47 of file effect5x3.h.

References osl::BLACK, makeProgress(), and osl::WHITE.

int osl::progress::Effect5x3::makeProgressAll ( Player  defense,
const NumEffectState &  state,
Square  king 
) [static]

Definition at line 20 of file effect5x3.cc.

References osl::alt().

Referenced by makeProgress().

int osl::progress::Effect5x3::makeProgressArea ( Player  attack,
const NumEffectState &  state,
Square  king 
) [static]
int osl::progress::Effect5x3::makeProgressStand ( Player  attack,
const NumEffectState &  state 
) [static]

Definition at line 52 of file effect5x3.cc.

References osl::BISHOP, osl::GOLD, osl::KNIGHT, osl::LANCE, osl::PAWN, osl::ROOK, and osl::SILVER.

int osl::progress::Effect5x3::progress ( Player  p) const [inline]

Definition at line 75 of file effect5x3.h.

References progresses.

Referenced by progress16().

static const Progress16 osl::progress::Effect5x3::progress16 ( int  progress) [inline, static]

Definition at line 76 of file effect5x3.h.

References progresses.

Definition at line 80 of file effect5x3.h.

References progress(), and progress16each().

static const Progress16 osl::progress::Effect5x3::progress16each ( int  progress) [inline, static]

0-15 の値を返す.

プレイヤ個人毎

Definition at line 64 of file effect5x3.h.

References osl::eval::min().

Referenced by progress16(), and osl::progress::Effect5x3WithBonus::progress16bonus().

void osl::progress::Effect5x3::update ( const NumEffectState &  new_state,
Move  last_move 
)
void osl::progress::Effect5x3::updateStand ( int &  old_stand,
Move  last_move 
) [static]

Member Data Documentation

CArray<int,2> osl::progress::Effect5x3::area_progresses [protected]

Definition at line 71 of file effect5x3.h.

CArray<int,2> osl::progress::Effect5x3::progresses [protected]
CArray<int,2> osl::progress::Effect5x3::stand_progresses [protected]

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