class utils::CallbackTimer

Overview

#include <CallbackTimer.h>

class CallbackTimer {
public:
    // construction

    CallbackTimer();
    ~CallbackTimer();

    // methods

    template <typename DurationType>
    void Start(DurationType interval, std::function<bool(void)> callback);

    void Stop();
    bool IsRunning() const;
};

Detailed Documentation

Construction

CallbackTimer()

Initialize without execution.

~CallbackTimer()

Stop execution on destruction.

Methods

template <typename DurationType>
void Start(DurationType interval, std::function<bool(void)> callback)

Start the provided callback.

Runs each timer tick until it either returns false or the timer is stopped.

Parameters:

interval

Timer interval of the type std::chrono::duration. Passed by value since it is a primitive. /params callback A callback function to be executed every tick. Returns bool to signal stopping.

void Stop()

Manually stop execution.

bool IsRunning() const

Check whether there is a callback being executed.