1#ifndef MANUAL_RUNTIME_HPP_IPFSK6ZA
2#define MANUAL_RUNTIME_HPP_IPFSK6ZA
4#include <vanetza/common/runtime.hpp>
5#include <boost/multi_index_container.hpp>
6#include <boost/multi_index/hashed_index.hpp>
7#include <boost/multi_index/member.hpp>
8#include <boost/multi_index/ordered_index.hpp>
14
15
16
20 ManualRuntime() =
default;
23
24
25
29
30
31
32
33
37
38
39
40
41
45
46
47
48
49
53
54
55
56
60 void schedule(
Clock::time_point,
const Callback&,
const void* =
nullptr)
override;
61 void schedule(
Clock::duration,
const Callback&,
const void* =
nullptr)
override;
62 void cancel(
const void* scope)
override;
63 Clock::time_point
now()
const override;
68 ScheduledCallback(
Clock::time_point tp,
const Callback& cb,
const void* scope) :
69 deadline(tp), callback(cb), scope(scope) {}
77 Clock::time_point deadline;
95 Clock::time_point m_now;
void schedule(Clock::duration, const Callback &, const void *=nullptr) override
void trigger(Clock::time_point tp)
ManualRuntime(Clock::time_point init)
void cancel(const void *scope) override
void trigger(Clock::duration d)
Clock::time_point next() const
void reset(Clock::time_point tp)
Clock::time_point now() const override
void schedule(Clock::time_point, const Callback &, const void *=nullptr) override