void idle_loop();
void start_searching();
void wait_for_search_finished();
- int best_move_count(Move move);
+ int best_move_count(Move move) const;
Pawns::Table pawnsTable;
Material::Table materialTable;
Depth rootDepth, completedDepth;
CounterMoveHistory counterMoves;
ButterflyHistory mainHistory;
+ LowPlyHistory lowPlyHistory;
CapturePieceToHistory captureHistory;
ContinuationHistory continuationHistory[2][2];
Score contempt;
void check_time();
double previousTimeReduction;
- Value previousScore;
+ Value bestPreviousScore;
Value iterValue[4];
int callsCnt;
bool stopOnPonderhit;
MainThread* main() const { return static_cast<MainThread*>(front()); }
uint64_t nodes_searched() const { return accumulate(&Thread::nodes); }
uint64_t tb_hits() const { return accumulate(&Thread::tbHits); }
+ Thread* get_best_thread() const;
+ void start_searching();
+ void wait_for_search_finished() const;
std::atomic_bool stop, increaseDepth;