Sunshine master
Self-hosted game stream host for Moonlight.
stat_trackers::min_max_avg_tracker< T > Class Template Reference

Accumulates minimum, maximum, and average values between periodic callbacks. More...

#include <src/stat_trackers.h>

Public Types

using callback_function = std::function<void(T stat_min, T stat_max, double stat_avg)>
 Callback invoked with the minimum, maximum, and average for one interval.
 

Public Member Functions

void collect_and_callback_on_interval (T stat, const callback_function &callback, std::chrono::seconds interval_in_seconds)
 Add one statistic sample and invoke the callback when the interval elapses.
 
void reset ()
 Reset the object to its initial empty state.
 

Detailed Description

template<typename T>
class stat_trackers::min_max_avg_tracker< T >

Accumulates minimum, maximum, and average values between periodic callbacks.

Member Function Documentation

◆ collect_and_callback_on_interval()

template<typename T >
void stat_trackers::min_max_avg_tracker< T >::collect_and_callback_on_interval ( T stat,
const callback_function & callback,
std::chrono::seconds interval_in_seconds )
inline

Add one statistic sample and invoke the callback when the interval elapses.

Parameters
statStatistic value used to update the tracker.
callbackCallback invoked with the calculated statistic.
interval_in_secondsMinimum time between callback invocations.

The documentation for this class was generated from the following file: