1 /** 2 * This file has no copyright assigned and is placed in the Public Domain. 3 * This file is part of the mingw-w64 runtime package. 4 * No warranty is given; refer to the file DISCLAIMER.PD within this package. 5 */ 6 #ifndef _INC_AVRT 7 #define _INC_AVRT 8 9 #if (_WIN32_WINNT >= 0x0600) 10 typedef enum _AVRT_PRIORITY { 11 AVRT_PRIORITY_LOW = -1, 12 AVRT_PRIORITY_NORMAL, /* 0 */ 13 AVRT_PRIORITY_HIGH, /* 1 */ 14 AVRT_PRIORITY_CRITICAL /* 2 */ 15 } AVRT_PRIORITY, *PAVRT_PRIORITY; 16 17 #define AvSetMmThreadCharacteristics __MINGW_NAME_AW(AvSetMmThreadCharacteristics) 18 #define AvSetMmMaxThreadCharacteristics __MINGW_NAME_AW(AvSetMmMaxThreadCharacteristics) 19 #define AvRtCreateThreadOrderingGroupEx __MINGW_NAME_AW(AvRtCreateThreadOrderingGroupEx) 20 21 WINBOOL WINAPI AvQuerySystemResponsiveness( 22 HANDLE AvrtHandle, 23 PULONG SystemResponsivenessValue 24 ); 25 26 HANDLE WINAPI AvSetMmThreadCharacteristicsA( 27 LPCSTR TaskName, 28 LPDWORD TaskIndex 29 ); 30 31 HANDLE WINAPI AvSetMmThreadCharacteristicsW( 32 LPCWSTR TaskName, 33 LPDWORD TaskIndex 34 ); 35 36 WINBOOL WINAPI AvRevertMmThreadCharacteristics( 37 HANDLE AvrtHandle 38 ); 39 40 HANDLE WINAPI AvSetMmMaxThreadCharacteristicsA( 41 LPCSTR FirstTask, 42 LPCSTR SecondTask, 43 LPDWORD TaskIndex 44 ); 45 46 HANDLE WINAPI AvSetMmMaxThreadCharacteristicsW( 47 LPCWSTR FirstTask, 48 LPCWSTR SecondTask, 49 LPDWORD TaskIndex 50 ); 51 52 WINBOOL WINAPI AvSetMmThreadPriority( 53 HANDLE AvrtHandle, 54 AVRT_PRIORITY Priority 55 ); 56 57 WINBOOL WINAPI AvRtCreateThreadOrderingGroup( 58 PHANDLE Context, 59 PLARGE_INTEGER Period, 60 GUID *ThreadOrderingGuid, 61 PLARGE_INTEGER Timeout 62 ); 63 64 WINBOOL WINAPI AvRtCreateThreadOrderingGroupExA( 65 PHANDLE Context, 66 PLARGE_INTEGER Period, 67 GUID *ThreadOrderingGuid, 68 PLARGE_INTEGER Timeout, 69 LPCSTR TaskName 70 ); 71 72 WINBOOL WINAPI AvRtCreateThreadOrderingGroupExW( 73 PHANDLE Context, 74 PLARGE_INTEGER Period, 75 GUID *ThreadOrderingGuid, 76 PLARGE_INTEGER Timeout, 77 LPCWSTR TaskName 78 ); 79 80 WINBOOL WINAPI AvRtDeleteThreadOrderingGroup( 81 HANDLE Context 82 ); 83 84 WINBOOL WINAPI AvRtJoinThreadOrderingGroup( 85 PHANDLE Context, 86 GUID *ThreadOrderingGuid, 87 WINBOOL Before 88 ); 89 90 WINBOOL WINAPI AvRtLeaveThreadOrderingGroup( 91 HANDLE Context 92 ); 93 94 WINBOOL WINAPI AvRtWaitOnThreadOrderingGroup( 95 HANDLE Context 96 ); 97 98 #endif /*(_WIN32_WINNT >= 0x0600)*/ 99 #endif /*_INC_AVRT*/ 100