#include "TimeManager.h" #include "UciParser.h" void TimeManager::startInfiniteSearch(void) { } void TimeManager::stop(void) { } void TimeManager::join(void) { searchThread.join(); } void TimeManager::startSearch(void) { startInfiniteSearch(); } bool TimeManager::isRunning(void) const { return running; } void FixedSearchTimer::startSearch(void) { /*TimeManager::searchThread = std::thread{ &FixedSearchTimer::search, this }; startPoint = std::chrono::steady_clock::now();*/ startPoint = std::chrono::steady_clock::now(); search(); } void FixedSearchTimer::search(void) { chessy::Move best; int depth = 2; while (true) { //best = minimax.calculateBest(depth); ++depth; auto now = std::chrono::steady_clock::now(); if ((now - startPoint) > thinkTime) { uci.sendCommand("bestmove", { best.asString() }); break; } } }