#ifndef __OSAL_TIMER_H__
#define __OSAL_TIMER_H__

#include "osal_def.h"

#ifdef __cplusplus
extern "C" {
#endif

typedef void* osal_timer_t;
typedef void (*osal_timer_callback)(void* parameter);

/* Timer API */
osal_timer_t osal_timer_create(const char* name,
                              osal_timer_callback timeout,
                              void* parameter,
                              osal_tick_t time,
                              osal_uint8_t flag);
osal_err_t osal_timer_delete(osal_timer_t timer);
osal_err_t osal_timer_start(osal_timer_t timer);
osal_err_t osal_timer_stop(osal_timer_t timer);

#ifdef __cplusplus
}
#endif

#endif /* __OSAL_TIMER_H__ */
