libscid 0.1.0
Chess applications made easy.
Loading...
Searching...
No Matches
primitives.h File Reference

Constants and definitions of the chess board. More...

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

Go to the source code of this file.

Classes

class  scid::core::PieceFromByte
 

Typedefs

typedef unsigned char scid::core::byte
 
typedef std::uint16_t scid::core::ushort
 
typedef std::uint32_t scid::core::uint
 
typedef std::int32_t scid::core::sint
 
typedef byte scid::core::pieceT
 
typedef byte scid::core::colorT
 
typedef byte scid::core::squareT
 
typedef byte scid::core::rankT
 
typedef byte scid::core::fyleT
 
typedef byte scid::core::directionT
 
typedef byte scid::core::leftDiagT
 
typedef byte scid::core::rightDiagT
 
typedef byte scid::core::castleDirT
 

Functions

colorT scid::core::color_Flip (colorT c)
 
char scid::core::color_Char (colorT c)
 
colorT scid::core::piece_Color (pieceT p)
 
colorT scid::core::piece_Color_NotEmpty (pieceT p)
 
pieceT scid::core::piece_Type (pieceT p)
 
pieceT scid::core::piece_Make (colorT c, pieceT p)
 
char scid::core::piece_Char (pieceT p)
 
rankT scid::core::rank_FromChar (char c)
 
fyleT scid::core::fyle_FromChar (char c)
 
constexpr squareT scid::core::square_Make (fyleT f, rankT r)
 
constexpr fyleT scid::core::square_Fyle (squareT sq)
 
constexpr rankT scid::core::square_Rank (squareT sq)
 
constexpr squareT scid::core::square_Relative (colorT c, squareT sq)
 
constexpr rankT scid::core::rank_Relative (colorT c, rankT r)
 

Variables

const castleDirT scid::core::QSIDE = 0
 
const castleDirT scid::core::KSIDE = 1
 
const unsigned scid::core::NUM_COLOR_TYPES = 2
 
const colorT scid::core::WHITE = 0
 
const colorT scid::core::BLACK = 1
 
const colorT scid::core::NOCOLOR = 2
 
const char scid::core::COLOR_CHAR [3] = {'W', 'B', '_'}
 
const pieceT scid::core::INVALID_PIECE = 0
 
const pieceT scid::core::KING = 1
 
const pieceT scid::core::QUEEN = 2
 
const pieceT scid::core::ROOK = 3
 
const pieceT scid::core::BISHOP = 4
 
const pieceT scid::core::KNIGHT = 5
 
const pieceT scid::core::PAWN = 6
 
const pieceT scid::core::EMPTY = 7
 
const pieceT scid::core::END_OF_BOARD = 0
 
const pieceT scid::core::WK = 1
 
const pieceT scid::core::WQ = 2
 
const pieceT scid::core::WR = 3
 
const pieceT scid::core::WB = 4
 
const pieceT scid::core::WN = 5
 
const pieceT scid::core::WP = 6
 
const pieceT scid::core::BK = 9
 
const pieceT scid::core::BQ = 10
 
const pieceT scid::core::BR = 11
 
const pieceT scid::core::BB = 12
 
const pieceT scid::core::BN = 13
 
const pieceT scid::core::BP = 14
 
const char scid::core::PIECE_CHAR [] = "xKQRBNP.xkqrbnpxMm"
 
constexpr auto scid::core::pieceFromByte = PieceFromByte()
 
const squareT scid::core::A1 = 0
 
const squareT scid::core::B1 = 1
 
const squareT scid::core::C1 = 2
 
const squareT scid::core::D1 = 3
 
const squareT scid::core::E1 = 4
 
const squareT scid::core::F1 = 5
 
const squareT scid::core::G1 = 6
 
const squareT scid::core::H1 = 7
 
const squareT scid::core::A2 = 8
 
const squareT scid::core::B2 = 9
 
const squareT scid::core::C2 = 10
 
const squareT scid::core::D2 = 11
 
const squareT scid::core::E2 = 12
 
const squareT scid::core::F2 = 13
 
const squareT scid::core::G2 = 14
 
const squareT scid::core::H2 = 15
 
const squareT scid::core::A3 = 16
 
const squareT scid::core::B3 = 17
 
const squareT scid::core::C3 = 18
 
const squareT scid::core::D3 = 19
 
const squareT scid::core::E3 = 20
 
const squareT scid::core::F3 = 21
 
const squareT scid::core::G3 = 22
 
const squareT scid::core::H3 = 23
 
const squareT scid::core::A4 = 24
 
const squareT scid::core::B4 = 25
 
const squareT scid::core::C4 = 26
 
const squareT scid::core::D4 = 27
 
const squareT scid::core::E4 = 28
 
const squareT scid::core::F4 = 29
 
const squareT scid::core::G4 = 30
 
const squareT scid::core::H4 = 31
 
const squareT scid::core::A5 = 32
 
const squareT scid::core::B5 = 33
 
const squareT scid::core::C5 = 34
 
const squareT scid::core::D5 = 35
 
const squareT scid::core::E5 = 36
 
const squareT scid::core::F5 = 37
 
const squareT scid::core::G5 = 38
 
const squareT scid::core::H5 = 39
 
const squareT scid::core::A6 = 40
 
const squareT scid::core::B6 = 41
 
const squareT scid::core::C6 = 42
 
const squareT scid::core::D6 = 43
 
const squareT scid::core::E6 = 44
 
const squareT scid::core::F6 = 45
 
const squareT scid::core::G6 = 46
 
const squareT scid::core::H6 = 47
 
const squareT scid::core::A7 = 48
 
const squareT scid::core::B7 = 49
 
const squareT scid::core::C7 = 50
 
const squareT scid::core::D7 = 51
 
const squareT scid::core::E7 = 52
 
const squareT scid::core::F7 = 53
 
const squareT scid::core::G7 = 54
 
const squareT scid::core::H7 = 55
 
const squareT scid::core::A8 = 56
 
const squareT scid::core::B8 = 57
 
const squareT scid::core::C8 = 58
 
const squareT scid::core::D8 = 59
 
const squareT scid::core::E8 = 60
 
const squareT scid::core::F8 = 61
 
const squareT scid::core::G8 = 62
 
const squareT scid::core::H8 = 63
 
const squareT scid::core::COLOR_SQUARE = 64
 
const squareT scid::core::NULL_SQUARE = 65
 
const squareT scid::core::NS = 65
 
const rankT scid::core::RANK_1 = 0
 
const rankT scid::core::RANK_2 = 1
 
const rankT scid::core::RANK_3 = 2
 
const rankT scid::core::RANK_4 = 3
 
const rankT scid::core::RANK_5 = 4
 
const rankT scid::core::RANK_6 = 5
 
const rankT scid::core::RANK_7 = 6
 
const rankT scid::core::RANK_8 = 7
 
const rankT scid::core::NO_RANK = 64
 
const fyleT scid::core::A_FYLE = 0
 
const fyleT scid::core::B_FYLE = 1
 
const fyleT scid::core::C_FYLE = 2
 
const fyleT scid::core::D_FYLE = 3
 
const fyleT scid::core::E_FYLE = 4
 
const fyleT scid::core::F_FYLE = 5
 
const fyleT scid::core::G_FYLE = 6
 
const fyleT scid::core::H_FYLE = 7
 
const fyleT scid::core::NO_FYLE = 64
 

Detailed Description

Constants and definitions of the chess board.