50 [[nodiscard]]
double alpha() const noexcept;
Statistics(double alpha=0.5)
Constructs statistics store.
void reset()
Clears statistics for all processes.
Statistics(Statistics &&) noexcept
Move-constructs statistics state.
std::unique_ptr< Impl > impl_
void clear(ProcessId pid)
Clears statistics for one process.
~Statistics()
Destroys statistics store.
Statistics(const Statistics &)=delete
Copy construction is disabled.
void recordBurst(ProcessId pid, Tick burst)
Records an observed CPU burst for the process.
bool hasPrediction(ProcessId pid) const noexcept
Returns true if the process already has a prediction.
Statistics & operator=(const Statistics &)=delete
Copy assignment is disabled.
double alpha() const noexcept
Returns EWMA alpha in range (0, 1].
Tick predictedBurst(ProcessId pid) const noexcept
Returns the current predicted burst (0 if unknown).
std::uint64_t Tick
Simulation clock tick counter.
std::uint32_t ProcessId
Unique identifier for a process.
Common type aliases, sentinel constants, and forward declarations used throughout the Contur 2 kernel...