Home --> Documentations --> PJLIB Reference
Go to the documentation of this file. 18 #ifndef __PJ_TIMER_H__ 19 #define __PJ_TIMER_H__ 29 #if PJ_TIMER_USE_LINKED_LIST 95 #if !PJ_TIMER_USE_COPY && PJ_TIMER_USE_LINKED_LIST 130 #if !PJ_TIMER_USE_COPY 144 const char *src_file; 250 # define pj_timer_heap_schedule(ht,e,d) \ 251 pj_timer_heap_schedule_dbg(ht,e,d,__FILE__,__LINE__) 256 const char *src_file, 280 # define pj_timer_heap_schedule_w_grp_lock(ht,e,d,id,g) \ 281 pj_timer_heap_schedule_w_grp_lock_dbg(ht,e,d,id,g,__FILE__,__LINE__) 283 PJ_DECL( pj_status_t) pj_timer_heap_schedule_w_grp_lock_dbg( 289 const char *src_file, struct pj_timer_heap_t pj_timer_heap_t Definition: types.h:221
pj_time_val _timer_value Definition: timer.h:135
int pj_timer_heap_cancel_if_active(pj_timer_heap_t *ht, pj_timer_entry *entry, int id_val)
pj_size_t pj_timer_heap_mem_size(pj_size_t count)
pj_timer_id_t _timer_id Definition: timer.h:128
int pj_bool_t Definition: types.h:71
pj_status_t pj_timer_heap_schedule_w_grp_lock(pj_timer_heap_t *ht, pj_timer_entry *entry, const pj_time_val *delay, int id_val, pj_grp_lock_t *grp_lock)
pj_bool_t pj_timer_entry_running(pj_timer_entry *entry)
int pj_timer_heap_cancel(pj_timer_heap_t *ht, pj_timer_entry *entry)
Declaration of basic types and utility.
int pj_status_t Definition: types.h:68
pj_status_t pj_timer_heap_earliest_time(pj_timer_heap_t *ht, pj_time_val *timeval)
struct pj_grp_lock_t pj_grp_lock_t Definition: types.h:242
struct pj_lock_t pj_lock_t Definition: types.h:239
int pj_timer_id_t Definition: timer.h:72
void pj_timer_heap_destroy(pj_timer_heap_t *ht)
pj_timer_heap_callback * cb Definition: timer.h:119
#define PJ_END_DECL Definition: config.h:1281
pj_size_t pj_timer_heap_count(pj_timer_heap_t *ht)
#define PJ_DECL_LIST_MEMBER(type) Definition: list.h:62
Higher abstraction for locking objects.
Linked List data structure.
void * user_data Definition: timer.h:107
#define PJ_BEGIN_DECL Definition: config.h:1280
pj_status_t pj_timer_heap_schedule(pj_timer_heap_t *ht, pj_timer_entry *entry, const pj_time_val *delay)
unsigned pj_timer_heap_set_max_timed_out_per_poll(pj_timer_heap_t *ht, unsigned count)
pj_timer_entry * pj_timer_entry_init(pj_timer_entry *entry, int id, void *user_data, pj_timer_heap_callback *cb)
int id Definition: timer.h:114
pj_grp_lock_t * _grp_lock Definition: timer.h:141
void pj_timer_heap_callback(pj_timer_heap_t *timer_heap, struct pj_timer_entry *entry) Definition: timer.h:86
unsigned pj_timer_heap_poll(pj_timer_heap_t *ht, pj_time_val *next_delay)
void pj_timer_heap_set_lock(pj_timer_heap_t *ht, pj_lock_t *lock, pj_bool_t auto_del)
size_t pj_size_t Definition: types.h:58
pj_status_t pj_timer_heap_create(pj_pool_t *pool, pj_size_t count, pj_timer_heap_t **ht)
PJLIB Open Source, high performance, small footprint, and very very portable framework
Copyright (C) 2006-2009 Teluu Inc.
|