Belofte version 2.1.8
A promising chess program using the UCI or Winboard interface
bBasicMove Class Reference

move More...

#include <move.h>

+ Inheritance diagram for bBasicMove:

Public Member Functions

 bBasicMove (bBasicMove const &bm)
 
 bBasicMove (bBasicMove &&bm)
 
 bBasicMove (basicmove_t const bmt)
 
 bBasicMove (case_t cf, case_t ct)
 
virtual ~bBasicMove ()
 
bBasicMoveoperator= (bBasicMove &&bm)
 
bBasicMoveoperator= (bBasicMove const &bm)
 
 operator std::string () const
 
MEMBER_CONSTEXPR case_t from () const
 
MEMBER_CONSTEXPR case_t to () const
 
rank_t fromrank () const
 
column_t fromcolumn () const
 
rank_t torank () const
 
column_t tocolumn () const
 
basicmove_t getBasicMoveT () const
 
ppiece_t getPromotion () const
 

Protected Attributes

union { 
 
   uint32_t   u_bmove = 0UL 
 
   struct { 
 
      basicmove_t   m_bmove 
 
      uint8_t   m_flag 
 
      ppiece_t   m_promotion 
 
   }  
 
};  
 

Friends

std::ostream & operator<< (std::ostream &os, bBasicMove const &m)
 

Detailed Description

move

Definition at line 12 of file move.h.

Constructor & Destructor Documentation

◆ bBasicMove() [1/4]

bBasicMove::bBasicMove ( bBasicMove const &  bm)
explicit

Definition at line 13 of file move.cpp.

◆ bBasicMove() [2/4]

bBasicMove::bBasicMove ( bBasicMove &&  bm)
explicit

Definition at line 18 of file move.cpp.

◆ bBasicMove() [3/4]

bBasicMove::bBasicMove ( basicmove_t const  bmt)
explicit
Todo:
add initial sorting score

Definition at line 23 of file move.cpp.

◆ bBasicMove() [4/4]

bBasicMove::bBasicMove ( case_t  cf,
case_t  ct 
)
explicit
Todo:
add initial sorting score

Definition at line 29 of file move.cpp.

◆ ~bBasicMove()

bBasicMove::~bBasicMove ( )
virtual

Definition at line 35 of file move.cpp.

Member Function Documentation

◆ operator=() [1/2]

bBasicMove & bBasicMove::operator= ( bBasicMove &&  bm)

Definition at line 45 of file move.cpp.

Referenced by bMove::operator=().

+ Here is the caller graph for this function:

◆ operator=() [2/2]

bBasicMove & bBasicMove::operator= ( bBasicMove const &  bm)

Definition at line 39 of file move.cpp.

◆ operator std::string()

bBasicMove::operator std::string ( ) const

Definition at line 51 of file move.cpp.

◆ from()

MEMBER_CONSTEXPR case_t bBasicMove::from ( ) const
inline

Definition at line 25 of file move.h.

Referenced by fromcolumn(), and fromrank().

+ Here is the caller graph for this function:

◆ to()

MEMBER_CONSTEXPR case_t bBasicMove::to ( ) const
inline

Definition at line 29 of file move.h.

Referenced by bMoveList::addBlackPromotionIfValid(), bMoveList::addWhitePromotionIfValid(), tocolumn(), and torank().

+ Here is the caller graph for this function:

◆ fromrank()

rank_t bBasicMove::fromrank ( ) const
inline

Definition at line 33 of file move.h.

+ Here is the call graph for this function:

◆ fromcolumn()

column_t bBasicMove::fromcolumn ( ) const
inline

Definition at line 34 of file move.h.

+ Here is the call graph for this function:

◆ torank()

rank_t bBasicMove::torank ( ) const
inline

Definition at line 35 of file move.h.

+ Here is the call graph for this function:

◆ tocolumn()

column_t bBasicMove::tocolumn ( ) const
inline

Definition at line 36 of file move.h.

+ Here is the call graph for this function:

◆ getBasicMoveT()

basicmove_t bBasicMove::getBasicMoveT ( ) const
inline

Definition at line 38 of file move.h.

Referenced by bMoveList::getMoveT().

+ Here is the caller graph for this function:

◆ getPromotion()

ppiece_t bBasicMove::getPromotion ( ) const
inline

Definition at line 39 of file move.h.

Friends And Related Symbol Documentation

◆ operator<<

std::ostream & operator<< ( std::ostream &  os,
bBasicMove const &  m 
)
friend

Definition at line 73 of file move.cpp.

Member Data Documentation

◆ u_bmove

uint32_t bBasicMove::u_bmove = 0UL

Definition at line 43 of file move.h.

Referenced by operator=(), and operator=().

◆ m_bmove

basicmove_t bBasicMove::m_bmove

Definition at line 45 of file move.h.

Referenced by bBasicMove(), from(), getBasicMoveT(), and to().

◆ m_flag

◆ m_promotion

◆ [union]

union { ... } bBasicMove