master
 1/**
 2 * This file is part of the mingw-w64 runtime package.
 3 * No warranty is given; refer to the file DISCLAIMER within this package.
 4 */
 5#ifndef _APISETREALTIME_
 6#define _APISETREALTIME_
 7
 8#include <apiset.h>
 9#include <apisetcconv.h>
10#include <minwindef.h>
11
12#ifdef __cplusplus
13extern "C" {
14#endif
15
16#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
17
18#if _WIN32_WINNT >= 0x0600
19  WINBASEAPI WINBOOL WINAPI QueryThreadCycleTime (HANDLE ThreadHandle, PULONG64 CycleTime);
20  WINBASEAPI WINBOOL WINAPI QueryProcessCycleTime (HANDLE ProcessHandle, PULONG64 CycleTime);
21  WINBASEAPI WINBOOL WINAPI QueryIdleProcessorCycleTime (PULONG BufferLength, PULONG64 ProcessorIdleCycleTime);
22#endif
23
24#if _WIN32_WINNT >= 0x0601
25  WINBASEAPI WINBOOL WINAPI QueryIdleProcessorCycleTimeEx (USHORT Group, PULONG BufferLength, PULONG64 ProcessorIdleCycleTime);
26#endif
27
28#endif /* WINAPI_PARTITION_DESKTOP */
29
30#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP)
31
32  WINBASEAPI VOID WINAPI QueryInterruptTimePrecise (PULONGLONG lpInterruptTimePrecise);
33  WINBASEAPI VOID WINAPI QueryUnbiasedInterruptTimePrecise (PULONGLONG lpUnbiasedInterruptTimePrecise);
34  WINBASEAPI VOID WINAPI QueryInterruptTime (PULONGLONG lpInterruptTime);
35
36#if _WIN32_WINNT >= 0x0601
37  WINBASEAPI WINBOOL WINAPI QueryUnbiasedInterruptTime (PULONGLONG UnbiasedTime);
38#endif
39
40  WINBASEAPI HRESULT WINAPI QueryAuxiliaryCounterFrequency (PULONGLONG lpAuxiliaryCounterFrequency);
41  WINBASEAPI HRESULT WINAPI ConvertAuxiliaryCounterToPerformanceCounter (ULONGLONG ullAuxiliaryCounterValue, PULONGLONG lpPerformanceCounterValue, PULONGLONG lpConversionError);
42  WINBASEAPI HRESULT WINAPI ConvertPerformanceCounterToAuxiliaryCounter (ULONGLONG ullPerformanceCounterValue, PULONGLONG lpAuxiliaryCounterValue, PULONGLONG lpConversionError);
43
44#endif /* WINAPI_PARTITION_APP */
45
46#ifdef __cplusplus
47}
48#endif
49
50#endif /* _APISETREALTIME_ */