hptime.c
Go to the documentation of this file.00001
00038 #include "hptime.h"
00039
00040 #if defined(_WIN32)
00041
00042 #include <windows.h>
00043
00044 hptime_t hptime_get(void)
00045 {
00046 FILETIME ft;
00047
00048
00049
00050
00051
00052
00053
00054
00055 GetSystemTimeAsFileTime(&ft);
00056
00057
00058 return (((hptime_t)ft.dwHighDateTime) << 32) + (hptime_t)ft.dwLowDateTime;
00059 }
00060
00061 #elif defined(__unix__) || (defined(__APPLE__) && defined(__MACH__))
00062
00063 #include <sys/time.h>
00064 #include <stddef.h>
00065
00066 hptime_t hptime_get(void)
00067 {
00068 struct timeval tv;
00069
00070 gettimeofday(&tv, NULL);
00071 return (hptime_t)tv.tv_sec * HPTIME_TICKS_PER_SECOND
00072 + (hptime_t)tv.tv_usec;
00073 }
00074
00075 #else
00076 #error OS dependent support code missing for this OS
00077 #endif
00078