Public Member Functions | Private Member Functions | Private Attributes
osl::effect::BoardBitMaskTable Class Reference

#include <boardBitMask.h>

Collaboration diagram for osl::effect::BoardBitMaskTable:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 BoardBitMaskTable ()
const BoardBitMask & getMask (Square pos) const
const BoardBitMask & getRookMask (Square from, Square to) const
const BoardBitMask & getBishopMask (Square from, Square to) const
const BoardBitMask & getLanceMask (Square from, Square to) const

Private Member Functions

void initMaskOfSquare ()
void initBetweenMask ()

Private Attributes

CArray< BoardBitMask,
Square::SIZE > 
maskOfSquare
CArray2d< BoardBitMask,
Square::SIZE, Square::SIZE > 
rookBetweenMask
 lanceに関しては作らなくても良いかも lanceBetweenMask[from][to] が non all 0 なら黒からの利きがある
CArray2d< BoardBitMask,
Square::SIZE, Square::SIZE > 
lanceBetweenMask
CArray2d< BoardBitMask,
Square::SIZE, Square::SIZE > 
bishopBetweenMask

Detailed Description

Definition at line 137 of file boardBitMask.h.


Constructor & Destructor Documentation

osl::effect::BoardBitMaskTable::BoardBitMaskTable ( )

Definition at line 70 of file boardBitMask.cc.

References initBetweenMask(), and initMaskOfSquare().


Member Function Documentation

const BoardBitMask& osl::effect::BoardBitMaskTable::getBishopMask ( Square  from,
Square  to 
) const [inline]

Definition at line 162 of file boardBitMask.h.

References bishopBetweenMask, osl::Square::index(), and osl::Square::isOnBoard().

const BoardBitMask& osl::effect::BoardBitMaskTable::getLanceMask ( Square  from,
Square  to 
) const [inline]

Definition at line 166 of file boardBitMask.h.

References osl::Square::index(), osl::Square::isOnBoard(), and lanceBetweenMask.

const BoardBitMask& osl::effect::BoardBitMaskTable::getMask ( Square  pos) const [inline]

Definition at line 154 of file boardBitMask.h.

References osl::Square::index(), osl::Square::isOnBoard(), and maskOfSquare.

const BoardBitMask& osl::effect::BoardBitMaskTable::getRookMask ( Square  from,
Square  to 
) const [inline]

Definition at line 158 of file boardBitMask.h.

References osl::Square::index(), osl::Square::isOnBoard(), and rookBetweenMask.

void osl::effect::BoardBitMaskTable::initBetweenMask ( ) [private]

利きがあったら対応するビットを立てる

Definition at line 46 of file boardBitMask.cc.

References osl::BISHOP, bishopBetweenMask, osl::Square::index(), osl::LANCE, lanceBetweenMask, osl::ROOK, rookBetweenMask, osl::effect::setBetweenMask(), and osl::Square::SIZE.

Referenced by BoardBitMaskTable().

void osl::effect::BoardBitMaskTable::initMaskOfSquare ( ) [private]

Member Data Documentation

CArray2d<BoardBitMask, Square::SIZE,Square::SIZE> osl::effect::BoardBitMaskTable::bishopBetweenMask [private]

Definition at line 148 of file boardBitMask.h.

Referenced by getBishopMask(), and initBetweenMask().

CArray2d<BoardBitMask, Square::SIZE,Square::SIZE> osl::effect::BoardBitMaskTable::lanceBetweenMask [private]

Definition at line 147 of file boardBitMask.h.

Referenced by getLanceMask(), and initBetweenMask().

Definition at line 138 of file boardBitMask.h.

Referenced by getMask(), and initMaskOfSquare().

CArray2d<BoardBitMask,Square::SIZE,Square::SIZE> osl::effect::BoardBitMaskTable::rookBetweenMask [private]

lanceに関しては作らなくても良いかも lanceBetweenMask[from][to] が non all 0 なら黒からの利きがある

Definition at line 143 of file boardBitMask.h.

Referenced by getRookMask(), and initBetweenMask().


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