Belofte version 2.1.9
A promising chess program using the UCI or Winboard interface
search_ab.h
Go to the documentation of this file.
1/*---------------------------------------------------------------------+
2 * File: search_ab.h
3 * Project: part of belofte - A Promising Chess Program
4 * Author: yves
5 * SPDX-License-Identifier: GPL-2.0-only
6+----------------------------------------------------------------------*/
7
8#if !defined(SEARCH_AB_H)
9#define SEARCH_AB_H
10
11//-----------------------------------------------------------------------
12
14protected:
15 explicit SearchAlphaBeta(std::string const& s)
18 { m_iterativesearch = true; }
19
20public:
26 {}
27
28 // no copy or move ctor nor assignment defined
33
34protected:
35 bScore CalcBestMove(bBoard& b, bMoveList& ml) override;
36 virtual bScore CalcBestMove(bBoard& b,
37 bMoveList& ml, depth_t const nDepth,
38 bSearchScore alpha, bSearchScore beta);
40 depth_t const nDepth,
41 bSearchScore alpha, bSearchScore beta, uint8_t nCheckCount);
42
44};
45
46//-----------------------------------------------------------------------
47
48#endif // defined SEARCH_AB_H
49
50// eof
int_fast8_t depth_t
Definition belofte.h:103
bScore CalcBestMove(bBoard &b, bMoveList &ml) override
Root search for algorithm.
Definition search_ab.cpp:18
~SearchAlphaBeta() override
Definition search_ab.h:25
bScore m_nBetaCutOffMargin
Definition search_ab.h:43
SearchAlphaBeta(SearchAlphaBeta const &)=delete
SearchAlphaBeta & operator=(SearchAlphaBeta &&)=delete
bScore Quiescence(bBoard &b, depth_t const nDepth, bSearchScore alpha, bSearchScore beta, uint8_t nCheckCount)
Calculate best move from this position considering only non-silent moves.
SearchAlphaBeta(SearchAlphaBeta &&)=delete
SearchAlphaBeta & operator=(SearchAlphaBeta const &)=delete
SearchAlphaBeta(std::string const &s)
Definition search_ab.h:15
board
Definition board.h:45
bool m_iterativesearch
Definition search.h:126
bSearchAlgorithm(std::string const &s)
Definition search.h:75
int16_t bScore
Definition eval.h:11
constexpr bScore SCORE_BETAMARGIN
Definition eval.h:31
#define ALPHABETA
Definition search.h:56