17#include <boost/signals2.hpp> 
   24template <
typename TSource, 
typename TOrthogonal>
 
   25struct EvTimer : 
sc::event<EvTimer<TSource, TOrthogonal>>
 
   42  ClRosTimer(rclcpp::Duration duration, 
bool oneshot = 
false);
 
   49  boost::signals2::connection 
onTimerTick(
void (T::*callback)(), T * 
object)
 
   54  template <
typename TOrthogonal, 
typename TSourceObject>
 
   57    this->
postTimerEvent_ = [
this]() { this->postEvent<EvTimer<TSourceObject, TOrthogonal>>(); };
 
   61  rclcpp::TimerBase::SharedPtr 
timer_;
 
rclcpp::Duration duration_
 
void onOrthogonalAllocation()
 
boost::signals2::connection onTimerTick(void(T::*callback)(), T *object)
 
virtual void onInitialize() override
 
smacc2::SmaccSignal< void()> onTimerTick_
 
rclcpp::TimerBase::SharedPtr timer_
 
std::function< void()> postTimerEvent_
 
ClRosTimer(rclcpp::Duration duration, bool oneshot=false)
 
ISmaccStateMachine * getStateMachine()
 
boost::signals2::connection createSignalConnection(TSmaccSignal &signal, TMemberFunctionPrototype callback, TSmaccObjectType *object)