Files
dofs/docs/core/simulator.md

973 B

core/simulator.h

Free functions

std::numeric_limits<InstanceId>::max();

std::numeric_limits<LinkId>::max();

class Rng — public interface

Simulator() = default;

static std::pair<InstanceId, Simulator *> create_simulator(InstanceId id);

static Simulator *get_simulator(InstanceId id) noexcept;

Time now() const noexcept;

EventId schedule_at(Time abs_time, F&& f, Args&&... args) { ... }

_event_pq.push(std::move(it));

EventId schedule_after(Time delay, F&& f, Args&&... args) { ... }

bool cancel(EventId id);

bool run_next();

void run_until(Time end_time);

void lock() noexcept;

bool is_locked() const noexcept { ... }

void flush_after(Time grace) noexcept;

Rng* create_rng(std::uint64_t seed);

Rng* get_rng() noexcept;

Rng const* get_rng() const noexcept;