Home | History | Annotate | Download | only in include
      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