#include "osl/move_generator/promoteType.h"
#include "osl/move_action/store.h"
#include "osl/move_generator/pieceOnBoard.h"
#include "osl/move_action/concept.h"
#include "osl/checkmate/king8Info.h"
#include <iostream>
ネームスペース | |
namespace | osl |
| |
namespace | osl::move_generator |
低レベルの指手生成 | |
namespace | osl::move_generator::piece_on_board |
関数 | |
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) |
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 | osl::move_generator::piece_on_board::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 | osl::move_generator::piece_on_board::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 | osl::move_generator::piece_on_board::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 | osl::move_generator::piece_on_board::generateShort (const Piece *, Position, Action &, Int2Type< false >, Move, Ptype) |
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) |
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) |
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) |
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) |
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) |
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) |