mirror of
https://github.com/chesskit-app/chesskit-engine.git
synced 2026-05-19 15:50:35 +00:00
43 lines
960 B
C++
43 lines
960 B
C++
//
|
|
// stockfish+engine.m
|
|
// ChessKitEngine
|
|
//
|
|
|
|
#import "stockfish+engine.h"
|
|
|
|
#import "../Stockfish/src/bitboard.h"
|
|
#import "../Stockfish/src/endgame.h"
|
|
#import "../Stockfish/src/evaluate.h"
|
|
#import "../Stockfish/src/position.h"
|
|
#import "../Stockfish/src/psqt.h"
|
|
#import "../Stockfish/src/search.h"
|
|
#import "../Stockfish/src/thread.h"
|
|
#import "../Stockfish/src/uci.h"
|
|
#import "../Stockfish/src/types.h"
|
|
|
|
using namespace Stockfish;
|
|
|
|
void StockfishEngine::initialize() {
|
|
Options["Use NNUE"] = true;
|
|
|
|
UCI::init(Options);
|
|
Tune::init();
|
|
PSQT::init();
|
|
Bitboards::init();
|
|
Position::init();
|
|
Bitbases::init();
|
|
Endgames::init();
|
|
Threads.set(size_t(Stockfish::Options["Threads"]));
|
|
Search::clear(); // After threads are up
|
|
Eval::NNUE::init();
|
|
}
|
|
|
|
void StockfishEngine::deinitialize() {
|
|
Threads.clear();
|
|
Threads.end();
|
|
}
|
|
|
|
void StockfishEngine::send_command(const std::string &cmd) {
|
|
UCI::execute_command(cmd);
|
|
}
|