自分の駒があるマスの8近傍の敵の利きの状態を得る. [詳細]
#include <liberty8.h>

Public メソッド | |
| Liberty8 (NumEffectState const &state, Position target) | |
| void | andMask (NearMask m) |
| NearMask | getMask () const |
| int | count () const |
| 8 bit のテーブルを使って速く計算できるが | |
Private メソッド | |
| template<Ptype T> | |
| void | addMaskPtype (NumEffectState const &state, Position target, NearMask nearMask) |
| template<typename U > | |
| void | addMask (NumEffectState const &state, Position target, NearMask nearMask, U) |
| void | addMask (NumEffectState const &, Position, NearMask, ptl::NullPtype) |
| template<Ptype T, typename Tail > | |
| void | addMask (NumEffectState const &state, Position target, NearMask nearMask, ptl::PtypeList< T, Tail >) |
Private 変数 | |
| NearMask | mask |
自分の駒があるマスの8近傍の敵の利きの状態を得る.
liberty8.h の 109 行で定義されています。
| osl::effect::Liberty8< P >::Liberty8 | ( | NumEffectState const & | state, | |
| Position | target | |||
| ) | [inline] |
targetには必ず P 側の駒があるべき
10近傍の駒の有無を記録 本当は8近傍で良いのだが
下位8ビットのみで良い TODO: これの型は NearMask とは別であるべき?
liberty8.h の 160 行で定義されています。
参照先 osl::effect::Liberty8< P >::addMask(), と osl::effect::Liberty8< P >::mask.
| void osl::effect::Liberty8< P >::addMask | ( | NumEffectState const & | state, | |
| Position | target, | |||
| NearMask | nearMask, | |||
| ptl::PtypeList< T, Tail > | ||||
| ) | [inline, private] |
liberty8.h の 129 行で定義されています。
| void osl::effect::Liberty8< P >::addMask | ( | NumEffectState const & | , | |
| Position | , | |||
| NearMask | , | |||
| ptl::NullPtype | ||||
| ) | [inline, private] |
liberty8.h の 126 行で定義されています。
| void osl::effect::Liberty8< P >::addMask | ( | NumEffectState const & | state, | |
| Position | target, | |||
| NearMask | nearMask, | |||
| U | ||||
| ) | [inline, private] |
| void osl::effect::Liberty8< P >::addMaskPtype | ( | NumEffectState const & | state, | |
| Position | target, | |||
| NearMask | nearMask | |||
| ) | [inline, private] |
liberty8.h の 116 行で定義されています。
| void osl::effect::Liberty8< P >::andMask | ( | NearMask | m | ) | [inline] |
liberty8.h の 136 行で定義されています。
| int osl::effect::Liberty8< P >::count | ( | ) | const [inline] |
| NearMask osl::effect::Liberty8< P >::getMask | ( | ) | const [inline] |
liberty8.h の 139 行で定義されています。
NearMask osl::effect::Liberty8< P >::mask [private] |
1.6.3