#include <boardBitMask.h>
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 |
Definition at line 137 of file boardBitMask.h.
Definition at line 70 of file boardBitMask.cc.
References initBetweenMask(), and initMaskOfSquare().
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] |
Definition at line 25 of file boardBitMask.cc.
References osl::Square::index(), maskOfSquare, osl::effect::BoardBitMask::positionToOffset(), and osl::Square::SIZE.
Referenced by BoardBitMaskTable().
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().
CArray<BoardBitMask, Square::SIZE> osl::effect::BoardBitMaskTable::maskOfSquare [private] |
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().