ネームスペース osl::move_generator::piece_on_board

関数

template<Player P, class Action , PromoteType CanP, Direction Dir, bool notPromoteCapture>
void generateLong (NumEffectState const &state, Piece p, const Piece *ptr, Position from, Action &action, Int2Type< true >, Move moveBase, Ptype ptype)
 ROOK, BISHOP, PROOK, PBISHOPのlong方向の手生成 CanPはNoPromoteかCanPromote, CheckPromoteのみ NoPromoteはpromoteできない点からの後ろ,横のdirection CanPromoteはpromoteできる点から CheckPromoteはpromoteできない点からの前向き direction.
template<Player P, class Action , PromoteType CanP, Direction Dir, bool notPromoteCapture>
void generateLong (NumEffectState const &, Piece, const Piece *, Position, Action &, Int2Type< false >, Move, Ptype)
template<Player P, Ptype T, class Action , PromoteType CanP, Direction Dir, bool notPromoteCapture>
void generateLong (NumEffectState const &state, Piece p, const Piece *ptr, Position pos, Action &action, Move moveBase, Ptype ptype)
template<Player P, class Action , PromoteType CanP, Direction Dir, bool notPromoteCapture>
void generateShort (const Piece *ptr, Position from, Action &action, Int2Type< true >, Move moveBase, Ptype ptype)
 短い利きの動き CanPromoteType - promote可能な動きの時 MustPromoteType - 2段目の歩,3,4段目の桂馬
template<Player P, class Action , PromoteType CanP, Direction Dir, bool notPromoteCapture>
void generateShort (const Piece *, Position, Action &, Int2Type< false >, Move, Ptype)
template<Player P, Ptype T, class Action , PromoteType CanP, Direction Dir, bool notPromoteCapture>
void generateShort (const Piece *ptr, Position from, Action &action, Move moveBase, Ptype)
template<Player P, Ptype T, class Action , PromoteType CanP, bool useDirMask, bool notPromoteCapture>
void generatePtypePromote (const NumEffectState &state, Piece p, Action &action, Position from, int dirMask)
template<Player P, Direction Dir, class Action , bool notPromoteCapture>
void generateKingDir (const Piece *ptr, Position from, Action &action, unsigned int liberty, Move const &moveBase)
template<Player P, class Action , bool useDirMask, bool notPromoteCapture>
void generateKing (const NumEffectState &state, Action &action, Position pos, int dirMask)
template<Player P, class Action , bool useDirMask, bool notPromoteCapture>
void generateLance (const NumEffectState &state, Piece p, Action &action, Position from, int dirMask)
template<Player P, class Action , bool useDirMask, bool notPromoteCapture>
void generatePawn (const NumEffectState &state, Piece p, Action &action, Position from, int dirMask)

関数

template<Player P, class Action , bool useDirMask, bool notPromoteCapture>
void osl::move_generator::piece_on_board::generateKing ( const NumEffectState &  state,
Action &  action,
Position  pos,
int  dirMask 
) [inline]
template<Player P, Direction Dir, class Action , bool notPromoteCapture>
void osl::move_generator::piece_on_board::generateKingDir ( const Piece *  ptr,
Position  from,
Action &  action,
unsigned int  liberty,
Move const &  moveBase 
) [inline]
template<Player P, class Action , bool useDirMask, bool notPromoteCapture>
void osl::move_generator::piece_on_board::generateLance ( const NumEffectState &  state,
Piece  p,
Action &  action,
Position  from,
int  dirMask 
) [inline]
template<Player P, Ptype T, class Action , PromoteType CanP, Direction Dir, bool notPromoteCapture>
void osl::move_generator::piece_on_board::generateLong ( NumEffectState const &  state,
Piece  p,
const Piece *  ptr,
Position  pos,
Action &  action,
Move  moveBase,
Ptype  ptype 
) [inline]

pieceOnBoard.tcc89 行で定義されています。

参照先 osl::CheckPromoteType, generateLong(), と osl::NoPromoteType.

template<Player P, class Action , PromoteType CanP, Direction Dir, bool notPromoteCapture>
void osl::move_generator::piece_on_board::generateLong ( NumEffectState const &  ,
Piece  ,
const Piece *  ,
Position  ,
Action &  ,
Int2Type< false >  ,
Move  ,
Ptype   
) [inline]

pieceOnBoard.tcc83 行で定義されています。

template<Player P, class Action , PromoteType CanP, Direction Dir, bool notPromoteCapture>
void osl::move_generator::piece_on_board::generateLong ( NumEffectState const &  state,
Piece  p,
const Piece *  ptr,
Position  from,
Action &  action,
Int2Type< true >  ,
Move  moveBase,
Ptype  ptype 
) [inline]

ROOK, BISHOP, PROOK, PBISHOPのlong方向の手生成 CanPはNoPromoteかCanPromote, CheckPromoteのみ NoPromoteはpromoteできない点からの後ろ,横のdirection CanPromoteはpromoteできる点から CheckPromoteはpromoteできない点からの前向き direction.

pieceOnBoard.tcc24 行で定義されています。

参照先 osl::BLACK, osl::Piece::canMoveOn(), osl::Position::canPromote(), osl::CanPromoteType, osl::CheckPromoteType, osl::Piece::intValue(), osl::Offset::intValue(), osl::inverse(), osl::LANCE, limit, osl::longToShort(), osl::Move::newAddCapture(), osl::Move::newAddTo(), osl::Piece::number(), osl::Move::promote(), osl::promote(), osl::Position::y1(), と osl::Offset::zero().

参照元 generateLong().

template<Player P, class Action , bool useDirMask, bool notPromoteCapture>
void osl::move_generator::piece_on_board::generatePawn ( const NumEffectState &  state,
Piece  p,
Action &  action,
Position  from,
int  dirMask 
) [inline]
template<Player P, Ptype T, class Action , PromoteType CanP, bool useDirMask, bool notPromoteCapture>
void osl::move_generator::piece_on_board::generatePtypePromote ( const NumEffectState &  state,
Piece  p,
Action &  action,
Position  from,
int  dirMask 
) [inline]
template<Player P, Ptype T, class Action , PromoteType CanP, Direction Dir, bool notPromoteCapture>
void osl::move_generator::piece_on_board::generateShort ( const Piece *  ptr,
Position  from,
Action &  action,
Move  moveBase,
Ptype   
) [inline]

pieceOnBoard.tcc126 行で定義されています。

参照先 osl::CanPromoteType, osl::CheckPromoteType, generateShort(), と osl::NoPromoteType.

template<Player P, class Action , PromoteType CanP, Direction Dir, bool notPromoteCapture>
void osl::move_generator::piece_on_board::generateShort ( const Piece *  ,
Position  ,
Action &  ,
Int2Type< false >  ,
Move  ,
Ptype   
) [inline]

pieceOnBoard.tcc120 行で定義されています。

template<Player P, class Action , PromoteType CanP, Direction Dir, bool notPromoteCapture>
void osl::move_generator::piece_on_board::generateShort ( const Piece *  ptr,
Position  from,
Action &  action,
Int2Type< true >  ,
Move  moveBase,
Ptype  ptype 
) [inline]

短い利きの動き CanPromoteType - promote可能な動きの時 MustPromoteType - 2段目の歩,3,4段目の桂馬

pieceOnBoard.tcc104 行で定義されています。

参照先 osl::Piece::canMoveOn(), osl::CanPromoteType, osl::Offset::intValue(), osl::Piece::isEmpty(), osl::MustPromoteType, osl::Move::newAddCapture(), osl::Move::newAddTo(), osl::Move::promote(), と osl::promote().

参照元 generateShort().

 全て クラス ネームスペース ファイル 関数 変数 型定義 列挙型 列挙型の値 フレンド マクロ定義
Sun May 16 09:58:25 2010に生成されました。  doxygen 1.6.3