Scid  4.7.0
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Namespaces | Functions | Variables
movegen.h File Reference

Implements functions for the validation of chess moves. More...

#include <utility>
Include dependency graph for movegen.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 movegen
 

Functions

bool movegen::valid_king (squareT sqFrom, squareT sqTo)
 
bool movegen::valid_knight (squareT sqFrom, squareT sqTo)
 
int movegen::valid_slider (squareT sqFrom, squareT sqTo, pieceT pieceType)
 
bool movegen::attack_pawn (squareT sqFrom, squareT sqTo, colorT pieceCol)
 
template<typename TBoard >
bool movegen::attack_slider (squareT sqFrom, squareT sqTo, pieceT pieceType, const TBoard *board, const TBoard EMPTY_SQUARE)
 
template<typename TBoard >
bool movegen::attack (squareT sqFrom, squareT sqTo, pieceT pieceCol, pieceT pieceType, const TBoard *board, const TBoard EMPTY_SQUARE)
 Validate an ATTACK move, that is if a piece placed at sqFrom can capture an enemy piece at sqTo. More...
 
template<typename TBoard >
bool movegen::pseudo (squareT sqFrom, squareT sqTo, colorT, pieceT pieceType, const TBoard *board, const TBoard EMPTY_SQUARE)
 
template<typename TBoard >
std::pair< pieceT, squareTmovegen::opens_ray (squareT sqFrom, squareT sqTo, squareT sqRay, const TBoard *board, const TBoard EMPTY_SQUARE)
 Given a pseudo-legal move, this functions return the type and the location of the piece that can possibly pin the moving piece, making the move not legal. More...
 

Variables

const int movegen::NSQUARES = 8
 

Detailed Description

Implements functions for the validation of chess moves.

Definition in file movegen.h.