stellar

Stellar - UCI Chess engine written in C++20
git clone git://git.dimitrijedobrota.com/stellar.git
Log | Files | Refs | README | LICENSE

uci.hpp (660B)


      1 #ifndef STELLAR_UCI_H
      2 #define STELLAR_UCI_H
      3 
      4 #include "board.hpp"
      5 #include "move.hpp"
      6 #include "movelist.hpp"
      7 #include "score.hpp"
      8 #include "utils.hpp"
      9 #include "utils_ui.hpp"
     10 
     11 namespace uci {
     12 
     13 struct Settings {
     14     mutable Board board;
     15 
     16     MoveList searchMoves;
     17     MoveList madeMoves;
     18 
     19     uint64_t starttime;
     20     uint64_t stoptime;
     21     uint16_t depth = 0;
     22 
     23     uint32_t nodes = 0;
     24     bool ponder = false;
     25     bool debug = false;
     26     bool mate = false;
     27     bool infinite = true;
     28     bool newgame = true;
     29 
     30     mutable bool stopped = false;
     31 };
     32 
     33 void loop();
     34 uint32_t get_time_ms();
     35 void communicate(const uci::Settings *settings);
     36 
     37 } // namespace uci
     38 #endif