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

#include <search_perft.h>

+ Inheritance diagram for SearchPerft:
+ Collaboration diagram for SearchPerft:

Public Member Functions

 SearchPerft ()
 
 ~SearchPerft () override
 
 SearchPerft (SearchPerft const &)=delete
 
 SearchPerft (SearchPerft &&)=delete
 
SearchPerftoperator= (SearchPerft const &)=delete
 
SearchPerftoperator= (SearchPerft &&)=delete
 
- Public Member Functions inherited from bSearchAlgorithm
 bSearchAlgorithm (std::string const &s)
 
 ~bSearchAlgorithm () override
 
 bSearchAlgorithm (bSearchAlgorithm const &)=delete
 
 bSearchAlgorithm (bSearchAlgorithm &&)=delete
 
bSearchAlgorithmoperator= (bSearchAlgorithm const &)=delete
 
bSearchAlgorithmoperator= (bSearchAlgorithm &&)=delete
 
constexpr int64_t getNodes () const
 
constexpr int64_t getNonLeafNodes () const
 
void StartSearch (bScore const sc)
 
void StopSearch ()
 
void InterruptSearch ()
 
void SearchBestMove (bBoard &b, bMoveList &ml)
 Generic search, will call (non-)recursive method per algorithm only when there are moves to be played.
 
void sendInfoSearching (bBoard const &b, depth_t const nDepth, std::string const &comment) const
 
bScore sendInfoSearching (bBoard const &b, depth_t const nDepth, std::string const &comment, bScore const sc) const
 
bScore RetrieveBoardEvaluation (bBoard &b, gameResult_t const gr=GR_UNSET) const
 Get score of board, eventually from cache.
 
constexpr bool isNoBench () const
 
void setBench ()
 
void clearBench ()
 
 operator std::string () const &
 
- Public Member Functions inherited from TimedExecution
 TimedExecution ()
 implementation of timing functions
 
virtual ~TimedExecution ()=default
 
std::string getDuration () const
 
long long getDurationMicroSec () const
 

Protected Member Functions

bScore CalcBestMove (bBoard &b, bMoveList &ml) override
 Entry point for SearchPerft.
 
- Protected Member Functions inherited from bSearchAlgorithm
void CheckIfAbortingSearch () const
 
void adjustMaxSearchedDepth (depth_t const nDepth)
 
constexpr depth_t getMaxSearchedDepth () const
 
void initMaxSearchedDepth ()
 
void setLevel (bLevel *l)
 
bLevelgetLevel ()
 
void sendInfoCurrMove (bBoard const &b, depth_t const nCurDepth, bMove const &m, movenum_t const moveid) const
 
- Protected Member Functions inherited from TimedExecution
void ClockStart ()
 
void ClockEnd ()
 
long long getDurationSec () const
 
long long getDurationMilliSec () const
 

Additional Inherited Members

- Public Attributes inherited from bSearchAlgorithm
int64_t m_leafnodes = 0LL
 
int64_t m_nonleafnodes = 0LL
 
bool m_iterativesearch = false
 

Detailed Description

Definition at line 14 of file search_perft.h.

Constructor & Destructor Documentation

◆ SearchPerft() [1/3]

SearchPerft::SearchPerft ( )
inlineexplicit

Definition at line 16 of file search_perft.h.

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

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ~SearchPerft()

SearchPerft::~SearchPerft ( )
inlineoverride

Definition at line 19 of file search_perft.h.

◆ SearchPerft() [2/3]

SearchPerft::SearchPerft ( SearchPerft const & )
delete
+ Here is the call graph for this function:

◆ SearchPerft() [3/3]

SearchPerft::SearchPerft ( SearchPerft && )
delete
+ Here is the call graph for this function:

Member Function Documentation

◆ operator=() [1/2]

SearchPerft & SearchPerft::operator= ( SearchPerft const & )
delete
+ Here is the call graph for this function:

◆ operator=() [2/2]

SearchPerft & SearchPerft::operator= ( SearchPerft && )
delete
+ Here is the call graph for this function:

◆ CalcBestMove()

bScore SearchPerft::CalcBestMove ( bBoard & b,
bMoveList & ml )
overrideprotectedvirtual

Entry point for SearchPerft.

Parameters
bposition
mlmovelist of this position

Implements bSearchAlgorithm.

Definition at line 22 of file search_perft.cpp.

Referenced by CalcBestMove().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: