49#if LASS_PLATFORM_TYPE == LASS_PLATFORM_TYPE_WIN32
54#define WIN32_LEAN_AND_MEAN
64ClockImpl::TTick ClockImpl::frequency()
67 LASS_ENFORCE_WINAPI(QueryPerformanceFrequency(
reinterpret_cast<LARGE_INTEGER*
>(&result)))
68 (
"Hardware does not support a high-resolution performance counter.");
74ClockImpl::TTick ClockImpl::tick()
77 LASS_ENFORCE_WINAPI(QueryPerformanceCounter(
reinterpret_cast<LARGE_INTEGER*
>(&result)));
96const lass::util::impl::ClockImpl::TTick nanoSecondsPerSecond = 1000000000;
110#if defined(CLOCK_MONOTONIC_PRECISE)
111const clockid_t clkId = CLOCK_MONOTONIC_PRECISE;
113const clockid_t clkId = CLOCK_MONOTONIC;
125ClockImpl::TTick ClockImpl::frequency()
127 return nanoSecondsPerSecond;
132ClockImpl::TTick ClockImpl::tick()
135 LASS_ENFORCE_CLIB(clock_gettime(clkId, &tp));
136 return tp.tv_sec * nanoSecondsPerSecond + tp.tv_nsec;
general utility, debug facilities, ...
Library for Assembled Shared Sources.