37#if defined(__GNUC__) || defined(__clang__)
54#define AURORA_MAX_TIMER 32
#define AU_EXTERN
Definition aurora.h:55
#define AU_EXPORT
Definition aurora.h:41
unsigned int uint32_t
Definition acefiex.h:163
COMPILER_DEPENDENT_INT64 int64_t
Definition acefiex.h:164
unsigned char uint8_t
Definition acefiex.h:161
COMPILER_DEPENDENT_UINT64 uint64_t
Definition acefiex.h:165
timeval it_interval
Definition timer.h:112
timeval it_value
Definition timer.h:113
AuroraTimerCallback handler
Definition timer.h:48
uint64_t intervalUS
Definition timer.h:47
void * param
Definition timer.h:49
uint8_t active
Definition timer.h:50
AA64Thread * owner
Definition timer.h:51
uint64_t expireUS
Definition timer.h:46
long tv_usec
Definition timer.h:118
long tv_sec
Definition timer.h:117
void AuroraTimerTick()
AuroraTimerTick – called by kernel to handle all expired timers.
Definition timer.c:161
AU_EXTERN AU_EXPORT int AuroraTimerStart(uint32_t delay_ms, AuroraTimerCallback handler, void *param, int idx)
AuroraTimerStart – start kernel timer in one shot mode.
Definition timer.c:89
void AuroraTimerInitialize()
AuroraTimerInitialize – initialize aurora timer.
Definition timer.c:74
int AuTimerGetITimer(AA64Thread *thr, int which, itimerval_t *curr_value)
Definition timer.c:332
void(* AuroraTimerCallback)(void *param)
Definition timer.h:43
AU_EXTERN AU_EXPORT int AuroraTimerStartPeriodic(uint32_t interval_ms, AuroraTimerCallback handler, void *param)
AuroraTimerStartPeriodic – start a periodic timer.
Definition timer.c:121
AU_EXTERN AU_EXPORT uint64_t AuGetCurrentUS()
Definition timer.c:190
AU_EXTERN AU_EXPORT uint64_t AuGetCurrentMS()
Definition timer.c:186
int AuTimerCalculateAlarm(AA64Thread *thr, uint64_t seconds)
AuTimerCalculateAlarm – schedule a timer to one-shot mode respective to given seconds.
Definition timer.c:205
void AuGetWalltime(int64_t *out_sec, int64_t *out_ns)
Definition timer.c:361
struct _itimerval_ itimerval_t
AU_EXTERN AU_EXPORT void AuroraTimerCancel(int tNum)
AuroraTimerCancel – cancel a timer.
Definition timer.c:140
struct _kernel_timer_ AuKernelTimer
int AuTimerSetITimer(AA64Thread *thr, int which, const itimerval_t *newval, itimerval_t *oldval)
AuTimerSetITimer – posix standard implementation of setting periodic timer.
Definition timer.c:270
AU_EXTERN AU_EXPORT bool AuroraTimerIsActive(int tNum)
AuroraTimerIsActive – check if timer is active.
Definition timer.c:150
void AuSetWalltime(int64_t sec, int64_t nsec)
Definition timer.c:352
struct _timeval_t_ timeval_t