osl::mobility::LanceMobility Struct Reference

盤上の香車の動けるマス More...

`#include <lanceMobility.h>`

## Static Public Member Functions

template<Player P>
static void | countBoth (const NumEffectState &state, Piece p, int &countAll, int &countSafe)
| 縦方向， P : 駒pの持ち主 countAll : 利きに関係なく動けるマス countSafe : 相手の利きがない動けるマス 両方を求める
static void | countBoth (Player pl, const NumEffectState &state, Piece p, int &countAll, int &countSafe)
template<Player P>
static int | countAll (const NumEffectState &state, Square pos, int num)
| 縦方向，利きに関係なく動けるマスの数
template<Player P>
static int | countAll (const NumEffectState &state, Piece p)
static int | countAll (Player pl, const NumEffectState &state, Piece p)
template<Player P>
static int | countSafe (const NumEffectState &state, Piece p)
| 縦方向，相手の利きがない動けるマスを求める
static int | countSafe (Player pl, const NumEffectState &state, Piece p)

## Detailed Description

盤上の香車の動けるマス

Definition at line 14 of file lanceMobility.h.

## Member Function Documentation

## countAll() [1/3]

template<Player P>

int osl::mobility::LanceMobility::countAll | ( | const NumEffectState & | state,
|  | Piece | p )

inline static

Definition at line 49 of file lanceMobility.h.

References countAll(), osl::Piece::isOnBoard(), osl::LANCE, osl::Piece::number(), osl::Piece::owner(), osl::Piece::ptype(), and osl::Piece::square().

## countAll() [2/3]

template<Player P>

int osl::mobility::LanceMobility::countAll | ( | const NumEffectState & | state,
|  | Square | pos,
|  | int | num )

inline static

縦方向，利きに関係なく動けるマスの数

Definition at line 42 of file lanceMobility.h.

References osl::BLACK, osl::NumEffectState::mobilityOf(), osl::SimpleState::pieceAt(), and osl::Square::y().

Referenced by countAll(), countAll(), countBoth(), countBoth(), and osl::eval::ml::LanceMobilityAll::eval().

## countAll() [3/3]

int osl::mobility::LanceMobility::countAll | ( | Player | pl,
|  | const NumEffectState & | state,
|  | Piece | p )

inline static

Definition at line 55 of file lanceMobility.h.

References osl::BLACK, and countAll().

## countBoth() [1/2]

template<Player P>

void osl::mobility::LanceMobility::countBoth | ( | const NumEffectState & | state,
|  | Piece | p,
|  | int & | countAll,
|  | int & | countSafe )

inline static

縦方向， P : 駒pの持ち主 countAll : 利きに関係なく動けるマス countSafe : 相手の利きがない動けるマス 両方を求める

Definition at line 25 of file lanceMobility.h.

References countAll(), osl::mobility::countMobilityBoth(), countSafe(), osl::Piece::isOnBoard(), osl::LANCE, osl::Piece::owner(), osl::Piece::ptype(), and osl::Piece::square().

Referenced by countBoth().

## countBoth() [2/2]

void osl::mobility::LanceMobility::countBoth | ( | Player | pl,
|  | const NumEffectState & | state,
|  | Piece | p,
|  | int & | countAll,
|  | int & | countSafe )

inline static

Definition at line 32 of file lanceMobility.h.

References osl::BLACK, countAll(), countBoth(), and countSafe().

## countSafe() [1/2]

template<Player P>

int osl::mobility::LanceMobility::countSafe | ( | const NumEffectState & | state,
|  | Piece | p )

inline static

縦方向，相手の利きがない動けるマスを求める

Definition at line 65 of file lanceMobility.h.

References osl::mobility::countMobilitySafe(), osl::Piece::isOnBoard(), osl::LANCE, osl::Piece::owner(), osl::Piece::ptype(), and osl::Piece::square().

Referenced by countBoth(), countBoth(), and countSafe().

## countSafe() [2/2]

int osl::mobility::LanceMobility::countSafe | ( | Player | pl,
|  | const NumEffectState & | state,
|  | Piece | p )

inline static

Definition at line 73 of file lanceMobility.h.

References osl::BLACK, and countSafe().

The documentation for this struct was generated from the following file:

- lanceMobility.h