#include <timer_manager.h>
| Classes | |
| struct | TimerInfo | 
| class | TimerQueueCallback | 
| Public Member Functions | |
| int32_t | add (const D &period, const boost::function< void(const E &)> &callback, CallbackQueueInterface *callback_queue, const VoidConstPtr &tracked_object, bool oneshot) | 
| bool | hasPending (int32_t handle) | 
| void | remove (int32_t handle) | 
| void | setPeriod (int32_t handle, const D &period) | 
| TimerManager () | |
| ~TimerManager () | |
| Static Public Member Functions | |
| static TimerManager & | global () | 
| Private Types | |
| typedef std::list< int32_t > | L_int32 | 
| typedef boost::shared_ptr < TimerInfo > | TimerInfoPtr | 
| typedef boost::weak_ptr < TimerInfo > | TimerInfoWPtr | 
| typedef std::vector< TimerInfoPtr > | V_TimerInfo | 
| Private Member Functions | |
| TimerInfoPtr | findTimer (int32_t handle) | 
| void | schedule (const TimerInfoPtr &info) | 
| void | threadFunc () | 
| void | updateNext (const TimerInfoPtr &info, const T ¤t_time) | 
| bool | waitingCompare (int32_t lhs, int32_t rhs) | 
| Private Attributes | |
| uint32_t | id_counter_ | 
| boost::mutex | id_mutex_ | 
| volatile bool | new_timer_ | 
| bool | quit_ | 
| boost::thread | thread_ | 
| bool | thread_started_ | 
| V_TimerInfo | timers_ | 
| boost::condition_variable | timers_cond_ | 
| boost::mutex | timers_mutex_ | 
| L_int32 | waiting_ | 
| boost::mutex | waiting_mutex_ | 
Definition at line 50 of file timer_manager.h.
| typedef std::list<int32_t> ros::TimerManager< T, D, E >::L_int32  [private] | 
Definition at line 86 of file timer_manager.h.
| typedef boost::shared_ptr<TimerInfo> ros::TimerManager< T, D, E >::TimerInfoPtr  [private] | 
Definition at line 82 of file timer_manager.h.
| typedef boost::weak_ptr<TimerInfo> ros::TimerManager< T, D, E >::TimerInfoWPtr  [private] | 
Definition at line 83 of file timer_manager.h.
| typedef std::vector<TimerInfoPtr> ros::TimerManager< T, D, E >::V_TimerInfo  [private] | 
Definition at line 84 of file timer_manager.h.
| ros::TimerManager< T, D, E >::TimerManager | ( | ) | 
Definition at line 208 of file timer_manager.h.
| ros::TimerManager< T, D, E >::~TimerManager | ( | ) | 
Definition at line 215 of file timer_manager.h.
| int32_t ros::TimerManager< T, D, E >::add | ( | const D & | period, | 
| const boost::function< void(const E &)> & | callback, | ||
| CallbackQueueInterface * | callback_queue, | ||
| const VoidConstPtr & | tracked_object, | ||
| bool | oneshot | ||
| ) | 
Definition at line 282 of file timer_manager.h.
| TimerManager< T, D, E >::TimerInfoPtr ros::TimerManager< T, D, E >::findTimer | ( | int32_t | handle | ) |  [private] | 
Definition at line 242 of file timer_manager.h.
| static TimerManager& ros::TimerManager< T, D, E >::global | ( | ) |  [inline, static] | 
Definition at line 98 of file timer_manager.h.
| bool ros::TimerManager< T, D, E >::hasPending | ( | int32_t | handle | ) | 
Definition at line 258 of file timer_manager.h.
| void ros::TimerManager< T, D, E >::remove | ( | int32_t | handle | ) | 
Definition at line 331 of file timer_manager.h.
| void ros::TimerManager< T, D, E >::schedule | ( | const TimerInfoPtr & | info | ) |  [private] | 
Definition at line 372 of file timer_manager.h.
| void ros::TimerManager< T, D, E >::setPeriod | ( | int32_t | handle, | 
| const D & | period | ||
| ) | 
Definition at line 422 of file timer_manager.h.
| void ros::TimerManager< T, D, E >::threadFunc | ( | ) |  [private] | 
Definition at line 445 of file timer_manager.h.
| void ros::TimerManager< T, D, E >::updateNext | ( | const TimerInfoPtr & | info, | 
| const T & | current_time | ||
| ) |  [private] | 
Definition at line 395 of file timer_manager.h.
| bool ros::TimerManager< T, D, E >::waitingCompare | ( | int32_t | lhs, | 
| int32_t | rhs | ||
| ) |  [private] | 
Definition at line 229 of file timer_manager.h.
| uint32_t ros::TimerManager< T, D, E >::id_counter_  [private] | 
Definition at line 120 of file timer_manager.h.
| boost::mutex ros::TimerManager< T, D, E >::id_mutex_  [private] | 
Definition at line 121 of file timer_manager.h.
| volatile bool ros::TimerManager< T, D, E >::new_timer_  [private] | 
Definition at line 115 of file timer_manager.h.
| bool ros::TimerManager< T, D, E >::quit_  [private] | 
Definition at line 127 of file timer_manager.h.
| boost::thread ros::TimerManager< T, D, E >::thread_  [private] | 
Definition at line 125 of file timer_manager.h.
| bool ros::TimerManager< T, D, E >::thread_started_  [private] | 
Definition at line 123 of file timer_manager.h.
| V_TimerInfo ros::TimerManager< T, D, E >::timers_  [private] | 
Definition at line 112 of file timer_manager.h.
| boost::condition_variable ros::TimerManager< T, D, E >::timers_cond_  [private] | 
Definition at line 114 of file timer_manager.h.
| boost::mutex ros::TimerManager< T, D, E >::timers_mutex_  [private] | 
Definition at line 113 of file timer_manager.h.
| L_int32 ros::TimerManager< T, D, E >::waiting_  [private] | 
Definition at line 118 of file timer_manager.h.
| boost::mutex ros::TimerManager< T, D, E >::waiting_mutex_  [private] | 
Definition at line 117 of file timer_manager.h.