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 6 #include <winapifamily.h> 7 8 #ifndef _AVRT_ 9 #define _AVRT_ 10 11 #ifdef __cplusplus 12 extern "C" { 13 #endif 14 15 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) 16 typedef enum _AVRT_PRIORITY { 17 AVRT_PRIORITY_VERYLOW = -2, 18 AVRT_PRIORITY_LOW, 19 AVRT_PRIORITY_NORMAL, 20 AVRT_PRIORITY_HIGH, 21 AVRT_PRIORITY_CRITICAL 22 } AVRT_PRIORITY,*PAVRT_PRIORITY; 23 24 #define THREAD_ORDER_GROUP_INFINITE_TIMEOUT (-1LL) 25 26 #define AVRTAPI 27 28 WINBOOL WINAPI AvQuerySystemResponsiveness (HANDLE AvrtHandle, PULONG SystemResponsivenessValue); 29 WINBOOL WINAPI AvRevertMmThreadCharacteristics (HANDLE AvrtHandle); 30 WINBOOL WINAPI AvRtCreateThreadOrderingGroup (PHANDLE Context, PLARGE_INTEGER Period, GUID *ThreadOrderingGuid, PLARGE_INTEGER Timeout); 31 WINBOOL WINAPI AvRtCreateThreadOrderingGroupExA (PHANDLE Context, PLARGE_INTEGER Period, GUID *ThreadOrderingGuid, PLARGE_INTEGER Timeout, LPCSTR TaskName); 32 WINBOOL WINAPI AvRtCreateThreadOrderingGroupExW (PHANDLE Context, PLARGE_INTEGER Period, GUID *ThreadOrderingGuid, PLARGE_INTEGER Timeout, LPCWSTR TaskName); 33 WINBOOL WINAPI AvRtDeleteThreadOrderingGroup (HANDLE Context); 34 WINBOOL WINAPI AvRtJoinThreadOrderingGroup (PHANDLE Context, GUID *ThreadOrderingGuid, WINBOOL Before); 35 WINBOOL WINAPI AvRtLeaveThreadOrderingGroup (HANDLE Context); 36 WINBOOL WINAPI AvRtWaitOnThreadOrderingGroup (HANDLE Context); 37 HANDLE WINAPI AvSetMmMaxThreadCharacteristicsA (LPCSTR FirstTask, LPCSTR SecondTask, LPDWORD TaskIndex); 38 HANDLE WINAPI AvSetMmMaxThreadCharacteristicsW (LPCWSTR FirstTask, LPCWSTR SecondTask, LPDWORD TaskIndex); 39 HANDLE WINAPI AvSetMmThreadCharacteristicsA (LPCSTR TaskName, LPDWORD TaskIndex); 40 HANDLE WINAPI AvSetMmThreadCharacteristicsW (LPCWSTR TaskName, LPDWORD TaskIndex); 41 WINBOOL WINAPI AvSetMmThreadPriority (HANDLE AvrtHandle, AVRT_PRIORITY Priority); 42 43 #define AvSetMmThreadCharacteristics __MINGW_NAME_AW(AvSetMmThreadCharacteristics) 44 #define AvSetMmMaxThreadCharacteristics __MINGW_NAME_AW(AvSetMmMaxThreadCharacteristics) 45 #define AvRtCreateThreadOrderingGroupEx __MINGW_NAME_AW(AvRtCreateThreadOrderingGroupEx) 46 47 #endif 48 49 #ifdef __cplusplus 50 } 51 #endif 52 53 #endif 54