Chess 0.0.1
A library written in c
|
Represents the position in a chess game. More...
#include <position.h>
Data Fields | |
ChessPiece | board [128] |
ChessColor | side_to_move |
ChessCastlingRights | castling_rights |
ChessSquare | en_passant_square |
unsigned int | half_move_clock |
unsigned int | full_move_number |
ChessSquare | king_squares [CHESS_COLOR_BLACK+1] |
ChessPositionCounter | position_counter |
Represents the position in a chess game.
ChessPiece ChessPosition::board[128] |
Array representing the pieces on each square (0x88 board).
ChessCastlingRights ChessPosition::castling_rights |
The current castling rights for both sides.
ChessSquare ChessPosition::en_passant_square |
The square over which a pawn has just passed while moving two squares, or CHESS_SQUARE_NONE
if not available.
unsigned int ChessPosition::full_move_number |
The number of the full moves. It starts at 1 and is incremented after Black's move.
unsigned int ChessPosition::half_move_clock |
The number of halfmoves since the last capture or pawn advance, used for the fifty-move rule.
ChessSquare ChessPosition::king_squares[CHESS_COLOR_BLACK+1] |
The squares of the White and Black kings.
ChessPositionCounter ChessPosition::position_counter |
Counter for position repetitions (for threefold repetition rule).
ChessColor ChessPosition::side_to_move |
The color of the side to move next.