50 #ifndef _ASTERISK_TIMING_H
51 #define _ASTERISK_TIMING_H
53 #if defined(__cplusplus) || defined(c_plusplus)
57 enum ast_timer_event {
58 AST_TIMING_EVENT_EXPIRED = 1,
59 AST_TIMING_EVENT_CONTINUOUS = 2,
74 void *(*timer_open)(void);
75 void (*timer_close)(
void *data);
76 int (*timer_set_rate)(
void *data,
unsigned int rate);
77 int (*timer_ack)(
void *data,
unsigned int quantity);
78 int (*timer_enable_continuous)(
void *data);
79 int (*timer_disable_continuous)(
void *data);
80 enum ast_timer_event (*timer_get_event)(
void *data);
81 unsigned int (*timer_get_max_rate)(
void *data);
82 int (*timer_fd)(
void *data);
95 #define ast_register_timing_interface(i) _ast_register_timing_interface(i, AST_MODULE_SELF)
230 #if defined(__cplusplus) || defined(c_plusplus)
unsigned int ast_timer_get_max_rate(const struct ast_timer *handle)
Get maximum rate supported for a timer.
int ast_unregister_timing_interface(void *handle)
Unregister a previously registered timing interface.
void ast_timer_close(struct ast_timer *handle)
Close an opened timing handle.
struct ast_timer * ast_timer_open(void)
Open a timer.
int ast_timer_disable_continuous(const struct ast_timer *handle)
Disable continuous mode.
int ast_timer_ack(const struct ast_timer *handle, unsigned int quantity)
Acknowledge a timer event.
int ast_timer_fd(const struct ast_timer *handle)
Get a poll()-able file descriptor for a timer.
int ast_timer_set_rate(const struct ast_timer *handle, unsigned int rate)
Set the timing tick rate.
int ast_timer_enable_continuous(const struct ast_timer *handle)
Enable continuous mode.
enum ast_timer_event ast_timer_get_event(const struct ast_timer *handle)
Retrieve timing event.
const char * ast_timer_get_name(const struct ast_timer *handle)
Get name of timer in use.