diff --git a/libuavcan/include/uavcan/node/timer.hpp b/libuavcan/include/uavcan/node/timer.hpp index 1340bcb1bc..090f98446e 100644 --- a/libuavcan/include/uavcan/node/timer.hpp +++ b/libuavcan/include/uavcan/node/timer.hpp @@ -87,7 +87,7 @@ public: , callback_() { } - TimerEventForwarder(INode& node, Callback callback) + TimerEventForwarder(INode& node, const Callback& callback) : TimerBase(node) , callback_(callback) { } @@ -99,24 +99,7 @@ public: #if UAVCAN_CPP_VERSION >= UAVCAN_CPP11 -class Timer : public TimerBase -{ - void handleTimerEvent(const TimerEvent& event); - -public: - typedef std::function Callback; - - explicit Timer(INode& node) - : TimerBase(node) - { } - - Timer(INode& node, const Callback& callback) - : TimerBase(node) - , callback(callback) - { } - - Callback callback; -}; +typedef TimerEventForwarder > Timer; #endif diff --git a/libuavcan/src/node/timer.cpp b/libuavcan/src/node/timer.cpp index 69e8e6c651..231c28e2f0 100644 --- a/libuavcan/src/node/timer.cpp +++ b/libuavcan/src/node/timer.cpp @@ -47,23 +47,4 @@ void TimerBase::startPeriodic(MonotonicDuration period) DeadlineHandler::startWithDelay(period); } -/* - * Timer - */ -#if UAVCAN_CPP_VERSION >= UAVCAN_CPP11 - -void Timer::handleTimerEvent(const TimerEvent& event) -{ - if (callback) - { - callback(event); - } - else - { - assert(0); - } -} - -#endif - }