12 #ifndef INCLUDE_DISTORTOS_STATICSOFTWARETIMER_HPP_ 13 #define INCLUDE_DISTORTOS_STATICSOFTWARETIMER_HPP_ 32 template<
typename Function,
typename... Args>
46 boundFunction_{std::bind(std::forward<Function>(
function), std::forward<Args>(args)...)}
65 decltype(std::bind(std::declval<Function>(), std::declval<Args>()...))
boundFunction_;
80 template<typename Function, typename... Args>
83 return {std::forward<Function>(
function), std::forward<Args>(args)...};
90 #endif // INCLUDE_DISTORTOS_STATICSOFTWARETIMER_HPP_ StaticSoftwareTimer(Function &&function, Args &&... args)
StaticSoftwareTimer's constructor.
Definition: StaticSoftwareTimer.hpp:44
void run() override
"Run" function of software timer
Definition: StaticSoftwareTimer.hpp:59
Top-level namespace of distortos project.
Definition: buttons.hpp:33
StaticSoftwareTimer< Function, Args... > makeStaticSoftwareTimer(Function &&function, Args &&... args)
Helper factory function to make StaticSoftwareTimer object with deduced template arguments.
Definition: StaticSoftwareTimer.hpp:81
StaticSoftwareTimer class is a templated interface for software timer.
Definition: StaticSoftwareTimer.hpp:33
SoftwareTimerCommon class header.
SoftwareTimerCommon class implements common functionality of software timers.
Definition: SoftwareTimerCommon.hpp:28
decltype(std::bind(std::declval< Function >(), std::declval< Args >()...)) boundFunction_
bound function object
Definition: StaticSoftwareTimer.hpp:65