47 : callbacks { std::move(callbacksToUse) }
75 void abort() noexcept { exitFlag.store(
true, std::memory_order::release); }
92 transTable.resize(sizeMB);
97 -> std::optional<TTData>
99 return transTable.find(pos);
103 [[nodiscard]]
auto in_progress() const noexcept ->
bool {
return activeFlag.load(std::memory_order::acquire); }
114 void set_pondering(
const bool isPonderMode)
noexcept { pondering.store(isPonderMode, std::memory_order::release); }
119 void ponder_hit() noexcept { pondering.store(
false, std::memory_order::release); }
130 options.movesToSearch.clear();
157 callbacks = std::move(callbacksToUse);
164 std::atomic_bool exitFlag {
false };
166 std::atomic_bool activeFlag {
false };
168 std::atomic_bool pondering {
false };
176 TranspositionTable transTable;
178 KillerMoves killerMoves;
void clear_transposition_table()
void resize_transposition_table(size_t sizeMB)
Context(Callbacks &&callbacksToUse)
void ponder_hit() noexcept
void set_options(const chess::uci::GoCommandOptions &opts)
Context(const Context &)=delete
auto probe_transposition_table(const Position &pos) const -> std::optional< TTData >
void set_callbacks(Callbacks &&callbacksToUse)
Context & operator=(Context &&)=delete
auto in_progress() const noexcept -> bool
Context(Context &&)=delete
auto get_position() const noexcept -> const Position &
void set_position(const Position &pos)
void set_pondering(const bool isPonderMode) noexcept
Context & operator=(const Context &)=delete
void set_options(const Options &opts)