Belofte version 2.1.9
A promising chess program using the UCI or Winboard interface
bEmptyPiece Class Reference

#include <piece.h>

+ Inheritance diagram for bEmptyPiece:
+ Collaboration diagram for bEmptyPiece:

Public Member Functions

 bEmptyPiece ()
 
 ~bEmptyPiece () override
 
bool canMovePreflightCheck (bBasicBoard &b, case_t const &cf, case_t const &ct) const override
 
bool canMovePreflightCheck (bBasicBoard &b, case_t const &cf, int8_t const ri, int8_t const ci, uint_fast8_t nMax=0) const override
 
bool canPawnMovePreflightCheck (bBasicBoard &b, case_t const &cf, int8_t const ri, int8_t const ci) const override
 
bool isAttacked (bBasicBoard const &b, case_t const &cf) const override
 
movenum_t addMove (bBasicBoard const &b, case_t const &cf, case_t const &ct, bMoveList &ml) const override
 
movenum_t addMoves (bBasicBoard const &b, case_t const &cf, int8_t const ri, int8_t const ci, bMoveList &ml) const override
 
bool hasValidMovePreflightCheck (bBasicBoard &b, case_t const &cf) override
 
movenum_t GenerateMoves (bBasicBoard const &b, case_t const &cf, bMoveList &ml) override
 
- Public Member Functions inherited from bPiece
 bPiece ()
 
 bPiece (bPiece &&bp)
 
 bPiece (piece_t piece)
 
virtual ~bPiece ()
 
 bPiece (bPiece const &)=delete
 
bPieceoperator= (bPiece const &)=delete
 
bPieceoperator= (bPiece &&)=delete
 
constexpr piece_t getPiece () const
 
side_t toMove () const
 
- Public Member Functions inherited from bPieceColour
 bPieceColour (side_t s)
 
virtual ~bPieceColour ()
 
 bPieceColour (bPieceColour const &)=delete
 
 bPieceColour (bPieceColour &&)=delete
 
bPieceColouroperator= (bPieceColour const &)=delete
 
bPieceColouroperator= (bPieceColour &&)=delete
 
constexpr bool isWhite () const
 
constexpr bool isBlack () const
 
constexpr bool isEmpty () const
 
constexpr side_t opponent () const
 
constexpr side_t toMove () const
 
side_t invert ()
 

Additional Inherited Members

- Static Public Member Functions inherited from bPiece
static piece_t getPiece (cpiece_t const piece)
 static class member function
 
static cpiece_t getPieceChar (piece_t const piece)
 static class member function
 
static bPiecegetPieceClass (piece_t const piece)
 static class member function
 
static const std::string getPieceStrUpper (piece_t const piece)
 static class member function
 
static bool isOpponent (side_t const s, piece_t const piece)
 static class member function
 
static bool isOwnColour (side_t const s, piece_t const piece)
 static class member function
 
static bool isWhitePiece (piece_t const p)
 static class member function
 
static bool isBlackPiece (piece_t const p)
 static class member function
 
- Protected Member Functions inherited from bPieceColour
bool isAttackedBySlider (bBasicBoard const &b, case_t cf, column_t fromcol, rank_t fromrank, int8_t const ci, int8_t const ri, piece_t const cPiece, piece_t const cPiece2) const
 Return true if position is attacked by opponent respecting move offsets.
 
- Protected Attributes inherited from bPieceColour
side_t m_side = tSide::SIDE_UNDEFINED
 

Detailed Description

Todo
Candidate for template implementation

Definition at line 251 of file piece.h.

Constructor & Destructor Documentation

◆ bEmptyPiece()

bEmptyPiece::bEmptyPiece ( )
inline

Definition at line 253 of file piece.h.

+ Here is the call graph for this function:

◆ ~bEmptyPiece()

bEmptyPiece::~bEmptyPiece ( )
inlineoverride

Definition at line 256 of file piece.h.

Member Function Documentation

◆ canMovePreflightCheck() [1/2]

bool bEmptyPiece::canMovePreflightCheck ( bBasicBoard & b,
case_t const & cf,
case_t const & ct ) const
inlineoverridevirtual

Implements bPieceColour.

Definition at line 259 of file piece.h.

◆ canMovePreflightCheck() [2/2]

bool bEmptyPiece::canMovePreflightCheck ( bBasicBoard & b,
case_t const & cf,
int8_t const ri,
int8_t const ci,
uint_fast8_t nMax = 0 ) const
inlineoverridevirtual

Implements bPieceColour.

Definition at line 262 of file piece.h.

◆ canPawnMovePreflightCheck()

bool bEmptyPiece::canPawnMovePreflightCheck ( bBasicBoard & b,
case_t const & cf,
int8_t const ri,
int8_t const ci ) const
inlineoverridevirtual

Implements bPieceColour.

Definition at line 267 of file piece.h.

◆ isAttacked()

bool bEmptyPiece::isAttacked ( bBasicBoard const & b,
case_t const & cf ) const
inlineoverridevirtual

Reimplemented from bPieceColour.

Definition at line 271 of file piece.h.

◆ addMove()

movenum_t bEmptyPiece::addMove ( bBasicBoard const & b,
case_t const & cf,
case_t const & ct,
bMoveList & ml ) const
inlineoverridevirtual

Implements bPieceColour.

Definition at line 273 of file piece.h.

◆ addMoves()

movenum_t bEmptyPiece::addMoves ( bBasicBoard const & b,
case_t const & cf,
int8_t const ri,
int8_t const ci,
bMoveList & ml ) const
inlineoverridevirtual

Implements bPieceColour.

Definition at line 276 of file piece.h.

◆ hasValidMovePreflightCheck()

bool bEmptyPiece::hasValidMovePreflightCheck ( bBasicBoard & b,
case_t const & cf )
inlineoverridevirtual

Implements bPiece.

Definition at line 280 of file piece.h.

◆ GenerateMoves()

movenum_t bEmptyPiece::GenerateMoves ( bBasicBoard const & b,
case_t const & cf,
bMoveList & ml )
inlineoverridevirtual

Implements bPiece.

Definition at line 283 of file piece.h.