From 0ce1b9480ee52b037b99deeffbdac4ae48641d63 Mon Sep 17 00:00:00 2001 From: Paolo Bonzini Date: Fri, 11 Mar 2011 16:46:02 +0100 Subject: add more helper functions with explicit milli/nanosecond resolution The code doesn't make much sense right now, but it will as soon as timers will be able to scale their resolution arbitrarily. Signed-off-by: Paolo Bonzini --- qemu-timer.h | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'qemu-timer.h') diff --git a/qemu-timer.h b/qemu-timer.h index 8cd8f83..345feea 100644 --- a/qemu-timer.h +++ b/qemu-timer.h @@ -12,6 +12,10 @@ /* timers */ +#define SCALE_MS 1000000 +#define SCALE_US 1000 +#define SCALE_NS 1 + typedef struct QEMUClock QEMUClock; typedef void QEMUTimerCB(void *opaque); @@ -54,6 +58,25 @@ void init_clocks(void); int init_timer_alarm(void); void quit_timers(void); +static inline QEMUTimer *qemu_new_timer_ns(QEMUClock *clock, QEMUTimerCB *cb, + void *opaque) +{ + assert(clock != rt_clock); + return qemu_new_timer(clock, cb, opaque); +} + +static inline QEMUTimer *qemu_new_timer_ms(QEMUClock *clock, QEMUTimerCB *cb, + void *opaque) +{ + assert(clock == rt_clock); + return qemu_new_timer(clock, cb, opaque); +} + +static inline int64_t qemu_get_clock_ms(QEMUClock *clock) +{ + return qemu_get_clock_ns(clock) / SCALE_MS; +} + static inline int64_t get_ticks_per_sec(void) { return 1000000000LL; -- cgit v1.1