あるマスの10近傍(8近傍+桂馬の利き)の駒の有無を表すbitset. More...
#include <nearMask.h>
| Public Member Functions | |
| NearMask () | |
| NearMask & | operator|= (NearMask r) | 
| NearMask & | operator&= (NearMask r) | 
| unsigned int | spaceMask () const | 
| bool | isSet (int n) const | 
| int | takeOneBit () | 
| on の bit を一つoffにし,そのindexを返す  More... | |
| bool | any () const | 
| unsigned int | uintValue () const | 
| Static Public Member Functions | |
| static const NearMask | makeDirect (unsigned int value) | 
| template<Player P, Direction Dir> | |
| static const NearMask | make (NumEffectState const &state, Square target) | 
| あるマスに,利きをつけようとする場合に, 10近傍の状態を返す  More... | |
| template<Player P> | |
| static const NearMask | make (NumEffectState const &state, Square target) | 
| Private Member Functions | |
| NearMask (unsigned int value) | |
| Private Attributes | |
| unsigned int | mask | 
あるマスの10近傍(8近傍+桂馬の利き)の駒の有無を表すbitset.
手番の側からの固定視点 0-9 bit - Direction(UL=0, .., UUR=9)に対応するマスが空白または敵駒の時に1 16-25 bit - Direction+16(UL=16, .., UUR=25)に対応するマスが空白の時に1 先手番で,マス(3,3)に注目している時に,ULに対応するマスは,(4,2)ではなく (2,4)を指す.(2,4)にULの利きを持つ味方の駒を置くと(3,3)を攻撃できるから
Definition at line 20 of file nearMask.h.
| 
 | inlineexplicitprivate | 
Definition at line 23 of file nearMask.h.
| 
 | inline | 
Definition at line 25 of file nearMask.h.
Referenced by make(), and makeDirect().
| 
 | inline | 
Definition at line 87 of file nearMask.h.
References mask.
| 
 | inline | 
Definition at line 76 of file nearMask.h.
References mask.
| 
 | inlinestatic | 
あるマスに,利きをつけようとする場合に, 10近傍の状態を返す
| P(template) | - 攻撃側のプレイヤー | 
| Dir(template) | - この向きの利きをつける場合のマス | 
| state | - 盤面を表す | 
| target | - 利きをつけられるマス | 
攻撃する側のマス
Definition at line 40 of file nearMask.h.
References osl::Piece::canMoveOn(), osl::Piece::isEmpty(), and NearMask().
| 
 | inlinestatic | 
10近傍の駒の状態をチェック NOTE: Stateがsignature effectの時には特殊化した高速バージョンを 作成すべし
Definition at line 52 of file nearMask.h.
References target.
| 
 | inlinestatic | 
Definition at line 26 of file nearMask.h.
References NearMask().
Definition at line 73 of file nearMask.h.
References mask.
Definition at line 72 of file nearMask.h.
References mask.
| 
 | inline | 
Definition at line 75 of file nearMask.h.
References mask.
| 
 | inline | 
on の bit を一つoffにし,そのindexを返す
Definition at line 83 of file nearMask.h.
References mask, and osl::misc::BitOp::takeOneBit().
| 
 | inline | 
Definition at line 88 of file nearMask.h.
References mask.
Referenced by osl::container::operator<(), osl::container::operator<<(), and osl::container::operator==().
| 
 | private | 
Definition at line 22 of file nearMask.h.
Referenced by any(), isSet(), operator&=(), operator|=(), spaceMask(), takeOneBit(), and uintValue().
 1.8.4
 1.8.4