Add assignment

This commit is contained in:
Job Noorman
2022-10-27 12:29:19 +02:00
commit 9f05ab03c1
49 changed files with 4339 additions and 0 deletions

34
Main.cpp Normal file
View File

@@ -0,0 +1,34 @@
#include "Uci.hpp"
#include "EngineFactory.hpp"
#include "Fen.hpp"
#include "Engine.hpp"
#include <fstream>
#include <iostream>
#include <cstdlib>
int main(int argc, char* argv[]) {
auto engine = EngineFactory::createEngine();
if (engine == nullptr) {
std::cerr << "Failed to create engine\n";
return EXIT_FAILURE;
}
if (argc > 1) {
auto fen = argv[1];
auto board = Fen::createBoard(fen);
if (!board.has_value()) {
std::cerr << "Parsing FEN failed\n";
return EXIT_FAILURE;
}
auto pv = engine->pv(board.value());
std::cout << "PV: " << pv << '\n';
} else {
auto uciLog = std::ofstream("uci-log.txt");
auto uci = Uci(std::move(engine), std::cin, std::cout, uciLog);
uci.run();
}
}