12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- #ifndef SP_TMR_H
- #define SP_TMR_H
- #pragma once
- #ifdef __cplusplus
- extern "C" {
- #endif
- #include "sp_rsn.h"
- /* one shot timer */
- typedef struct sp_tmr_t sp_tmr_t;
- typedef struct sp_tmr_mgr_t sp_tmr_mgr_t;
- typedef struct sp_tmr_callback {
- void (*on_timer)(sp_tmr_t *timer, int err, void *user_data);
- void (*on_destroy)(sp_tmr_t *timer, void *user_data);
- void *user_data;
- }sp_tmr_callback;
- typedef struct sp_svc_t sp_svc_t;
- typedef struct strand_t strand_t;
- int sp_tmr_create(sp_tmr_mgr_t *mgr, strand_t *strand, sp_tmr_callback *cb, sp_tmr_t **p_timer);
- void sp_tmr_destroy(sp_tmr_t *timer);
- int sp_tmr_schedule(sp_tmr_t *timer, unsigned int delay);
- int sp_tmr_cancel(sp_tmr_t *timer);
- void sp_tmr_set_tag(sp_tmr_t *timer, void *tag);
- void *sp_tmr_get_tag(sp_tmr_t *timer);
- const sp_rsn_context_t *sp_tmr_get_rsn_context(sp_tmr_t *timer);
- int sp_tmr_mgr_create(sp_svc_t *svc, sp_tmr_mgr_t **p_mgr);
- void sp_tmr_mgr_destroy(sp_tmr_mgr_t *mgr);
- int sp_tmr_mgr_cancel_all_tmr(sp_tmr_mgr_t *mgr);
- int sp_tmr_mgr_tmr_cnt(sp_tmr_mgr_t *mgr);
- #ifdef __cplusplus
- } // extern "C" {
- #endif
- #endif // SP_TMR_H
|