stellar

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

match.hpp (653B)


      1 #ifndef STELLAR_ARENA_MATCH_H
      2 #define STELLAR_ARENA_MATCH_H
      3 
      4 #include "engine.hpp"
      5 #include "game.hpp"
      6 
      7 class Match {
      8   public:
      9     struct Settings {
     10         uint64_t time = 30000, inc = 0, movetime = 0;
     11         uint8_t depth = 0, togo = 0;
     12     };
     13 
     14     Match(Engine &white, Engine &black);
     15     ~Match();
     16 
     17     Game play(Settings swhite, Settings sblack, const std::string &fen);
     18 
     19   private:
     20     static std::string get_go(Settings &swhite, Settings &sblack, Color side);
     21     static Move parse_move(const MoveList &list, const std::string &move_string);
     22 
     23     std::array<Engine *, 2> engines;
     24 
     25     static uint16_t id_t;
     26     uint16_t id = id_t++;
     27 };
     28 
     29 #endif