38 explicit Notifier(std::function<
void()> callback);
40 template <
typename Arg,
typename... Args>
41 Notifier(std::invocable<Arg, Args...>
auto&& callback, Arg&&
arg,
45 std::forward<Args>(args)...)) {}
61 explicit Notifier(
int priority, std::function<
void()> callback);
63 template <
typename Arg,
typename... Args>
64 Notifier(
int priority, std::invocable<Arg, Args...>
auto&& callback,
65 Arg&&
arg, Args&&... args)
66 :
Notifier(priority,
std::bind(
std::forward<decltype(callback)>(callback),
68 std::forward<Args>(args)...)) {}
144 void UpdateAlarm(uint64_t triggerTime);
152 std::thread m_thread;
158 std::atomic<HAL_NotifierHandle> m_notifier{0};
161 std::function<void()> m_callback;
165 units::second_t m_expirationTime = 0_s;
169 units::second_t m_period = 0_s;
172 bool m_periodic =
false;
Notifier(int priority, std::invocable< Arg, Args... > auto &&callback, Arg &&arg, Args &&... args)
Definition Notifier.h:64
auto arg(const Char *name, const T &arg) -> detail::named_arg< Char, T >
Returns a named argument to be used in a formatting function.
Definition base.h:2775