My Project
osl::mobility::RookMobility Struct Reference

盤上の飛車および竜の動けるマス More...

#include <rookMobility.h>

Static Public Member Functions

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

Detailed Description

盤上の飛車および竜の動けるマス

Definition at line 15 of file rookMobility.h.

Member Function Documentation

◆ countHorizontalAll() [1/3]

template<Player P>
static int osl::mobility::RookMobility::countHorizontalAll ( const NumEffectState & state,
int num )
inlinestatic

◆ countHorizontalAll() [2/3]

template<Player P>
static int osl::mobility::RookMobility::countHorizontalAll ( const NumEffectState & state,
Piece p )
inlinestatic

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

Definition at line 116 of file rookMobility.h.

References countHorizontalAll(), and osl::Piece::number().

◆ countHorizontalAll() [3/3]

static int osl::mobility::RookMobility::countHorizontalAll ( Player pl,
const NumEffectState & state,
Piece p )
inlinestatic

Definition at line 119 of file rookMobility.h.

References osl::BLACK, and countHorizontalAll().

◆ countHorizontalBoth() [1/2]

template<Player P>
static void osl::mobility::RookMobility::countHorizontalBoth ( const NumEffectState & state,
Piece p,
int & countAll,
int & countSafe )
inlinestatic

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

Definition at line 87 of file rookMobility.h.

References osl::mobility::countMobilityBoth(), osl::Piece::isOnBoard(), osl::Piece::owner(), osl::PROOK, osl::Piece::ptype(), osl::ROOK, and osl::Piece::square().

Referenced by countHorizontalBoth().

◆ countHorizontalBoth() [2/2]

static void osl::mobility::RookMobility::countHorizontalBoth ( Player pl,
const NumEffectState & state,
Piece p,
int & countAll,
int & countSafe )
inlinestatic

Definition at line 95 of file rookMobility.h.

References osl::BLACK, and countHorizontalBoth().

◆ countHorizontalSafe() [1/2]

template<Player P>
static int osl::mobility::RookMobility::countHorizontalSafe ( const NumEffectState & state,
Piece p )
inlinestatic

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

Definition at line 129 of file rookMobility.h.

References osl::mobility::countMobilitySafe(), and osl::Piece::square().

Referenced by countHorizontalSafe().

◆ countHorizontalSafe() [2/2]

static int osl::mobility::RookMobility::countHorizontalSafe ( Player pl,
const NumEffectState & state,
Piece p )
inlinestatic

Definition at line 135 of file rookMobility.h.

References osl::BLACK, and countHorizontalSafe().

◆ countVerticalAll() [1/3]

template<Player P>
static int osl::mobility::RookMobility::countVerticalAll ( const NumEffectState & state,
int num )
inlinestatic

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

Definition at line 44 of file rookMobility.h.

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

Referenced by countVerticalAll(), countVerticalAll(), and osl::eval::ml::RookMobilityAll::eval().

◆ countVerticalAll() [2/3]

template<Player P>
static int osl::mobility::RookMobility::countVerticalAll ( const NumEffectState & state,
Piece p )
inlinestatic

Definition at line 54 of file rookMobility.h.

References countVerticalAll(), and osl::Piece::number().

◆ countVerticalAll() [3/3]

static int osl::mobility::RookMobility::countVerticalAll ( Player pl,
const NumEffectState & state,
Piece p )
inlinestatic

Definition at line 57 of file rookMobility.h.

References osl::BLACK, and countVerticalAll().

◆ countVerticalBoth() [1/2]

template<Player P>
static void osl::mobility::RookMobility::countVerticalBoth ( const NumEffectState & state,
Piece p,
int & countAll,
int & countSafe )
inlinestatic

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

Definition at line 26 of file rookMobility.h.

References osl::mobility::countMobilityBoth(), osl::Piece::isOnBoard(), osl::Piece::owner(), osl::PROOK, osl::Piece::ptype(), osl::ROOK, and osl::Piece::square().

Referenced by countVerticalBoth().

◆ countVerticalBoth() [2/2]

static void osl::mobility::RookMobility::countVerticalBoth ( Player pl,
const NumEffectState & state,
Piece p,
int & countAll,
int & countSafe )
inlinestatic

Definition at line 34 of file rookMobility.h.

References osl::BLACK, and countVerticalBoth().

◆ countVerticalSafe() [1/2]

template<Player P>
static int osl::mobility::RookMobility::countVerticalSafe ( const NumEffectState & state,
Piece p )
inlinestatic

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

Definition at line 67 of file rookMobility.h.

References osl::mobility::countMobilitySafe(), and osl::Piece::square().

Referenced by countVerticalSafe().

◆ countVerticalSafe() [2/2]

static int osl::mobility::RookMobility::countVerticalSafe ( Player pl,
const NumEffectState & state,
Piece p )
inlinestatic

Definition at line 73 of file rookMobility.h.

References osl::BLACK, and countVerticalSafe().


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