#include <source/ariba/utility/transport/tcpip/protlib/timer.h>
Classes | |
struct | timer |
timer item More... | |
Public Member Functions | |
TimerManager () | |
constructor | |
~TimerManager () | |
destructor | |
timer_id_t | start_relative (TimerCallback *tc, int32 sec, int32 msec=0, timer_callback_param_t tcp=NULL) |
start relative timer | |
timer_id_t | start_absolute (TimerCallback *tc, int32 sec, int32 msec=0, timer_callback_param_t tcp=NULL) |
start absolute timer | |
bool | restart_relative (timer_id_t id, int32 sec, int32 msec=0) |
restart relative timer | |
bool | restart_absolute (timer_id_t id, int32 sec, int32 msec=0) |
restart absolute timer | |
bool | stop (timer_id_t id) |
stop timer | |
uint32 | check_timers () |
check for elapsed timers | |
uint32 | check_timers_wait (int32 msec) |
check for elapsed timers or wait for next timer event. | |
uint32 | stop_all () |
stop all timers | |
Private Types | |
typedef hash_map< timer_id_t, timer * > | timer_hashmap_t |
timer manager hashmap | |
typedef timer_hashmap_t::iterator | timer_hashmap_it_t |
hashmap iterator | |
typedef list< timer * > | timerlist_t |
timer list type | |
Private Member Functions | |
uint32 | cleanup () |
cleanup hashmap and list | |
void | insert_into_list (timer *t) |
insert into list | |
void | delete_from_list (timer *t) |
delete timer from list | |
timer * | collect_elapsed () |
collect elapsed timers | |
uint32 | process_elapsed () |
process elapsed timers | |
timer * | first () |
return first element of active timer list | |
Private Attributes | |
pthread_mutex_t | mutex |
timer manager mutex | |
pthread_mutexattr_t | mutex_attr |
timer manager mutex attributes | |
pthread_cond_t | cond |
timer manager condition | |
timerlist_t | active_timerlist |
sorted timer list (should be replaced by a heap for performance reasons...) | |
timerlist_t | elapsed_timerlist |
elapsed timer list | |
timer_hashmap_t | hashmap |
Creates, sets, resets, stops, checks and deletes timers.
Definition at line 88 of file timer.h.
typedef timer_hashmap_t::iterator protlib::TimerManager::timer_hashmap_it_t [private] |
typedef hash_map<timer_id_t,timer*> protlib::TimerManager::timer_hashmap_t [private] |
typedef list<timer*> protlib::TimerManager::timerlist_t [private] |
timer* protlib::TimerManager::first | ( | ) | [inline, private] |
return first element of active timer list
Definition at line 154 of file timer.h.
References active_timerlist.
Referenced by check_timers_wait(), collect_elapsed(), and delete_from_list().
sorted timer list (should be replaced by a heap for performance reasons...)
Definition at line 150 of file timer.h.
Referenced by cleanup(), collect_elapsed(), delete_from_list(), first(), and insert_into_list().
pthread_cond_t protlib::TimerManager::cond [private] |
timer manager condition
Definition at line 148 of file timer.h.
Referenced by check_timers_wait(), collect_elapsed(), restart_absolute(), restart_relative(), start_absolute(), start_relative(), stop(), stop_all(), TimerManager(), and ~TimerManager().
elapsed timer list
Definition at line 152 of file timer.h.
Referenced by collect_elapsed(), and process_elapsed().
Definition at line 155 of file timer.h.
Referenced by cleanup(), collect_elapsed(), restart_absolute(), restart_relative(), start_absolute(), start_relative(), and stop().
pthread_mutex_t protlib::TimerManager::mutex [private] |
timer manager mutex
Definition at line 143 of file timer.h.
Referenced by check_timers(), check_timers_wait(), restart_absolute(), restart_relative(), start_absolute(), start_relative(), stop(), stop_all(), TimerManager(), and ~TimerManager().
pthread_mutexattr_t protlib::TimerManager::mutex_attr [private] |
timer manager mutex attributes
Definition at line 145 of file timer.h.
Referenced by TimerManager(), and ~TimerManager().