|  | /* | 
|  | * avrt definitions | 
|  | * | 
|  | * Copyright 2009 Maarten Lankhorst | 
|  | * | 
|  | * This library is free software; you can redistribute it and/or | 
|  | * modify it under the terms of the GNU Lesser General Public | 
|  | * License as published by the Free Software Foundation; either | 
|  | * version 2.1 of the License, or (at your option) any later version. | 
|  | * | 
|  | * This library is distributed in the hope that it will be useful, | 
|  | * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
|  | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | 
|  | * Lesser General Public License for more details. | 
|  | * | 
|  | * You should have received a copy of the GNU Lesser General Public | 
|  | * License along with this library; if not, write to the Free Software | 
|  | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA | 
|  | * | 
|  | */ | 
|  |  | 
|  | #ifndef _AVRT_ | 
|  | #define _AVRT_ | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | extern "C" { | 
|  | #endif | 
|  |  | 
|  | typedef enum _AVRT_PRIORITY | 
|  | { | 
|  | AVRT_PRIORITY_LOW = -1, | 
|  | AVRT_PRIORITY_NORMAL, | 
|  | AVRT_PRIORITY_HIGH, | 
|  | AVRT_PRIORITY_CRITICAL | 
|  | } AVRT_PRIORITY, *PAVRT_PRIORITY; | 
|  |  | 
|  | /* Windows compiler is more lax */ | 
|  | #define THREAD_ORDER_GROUP_INFINITE_TIMEOUT ((void*)((LONG_PTR)-1)) | 
|  |  | 
|  | HANDLE WINAPI AvSetMmThreadCharacteristicsA(LPCSTR TaskName, LPDWORD TaskIndex); | 
|  | HANDLE WINAPI AvSetMmThreadCharacteristicsW(LPCWSTR TaskName, LPDWORD TaskIndex); | 
|  | #define AvSetMmThreadCharacteristics WINELIB_NAME_AW(AvSetMmThreadCharacteristics) | 
|  |  | 
|  | HANDLE WINAPI AvSetMmMaxThreadCharacteristicsA(LPCSTR FirstTask, LPCSTR SecondTask, LPDWORD TaskIndex); | 
|  | HANDLE WINAPI AvSetMmMaxThreadCharacteristicsW(LPCSTR FirstTask, LPCSTR SecondTask, LPDWORD TaskIndex); | 
|  | #define AvSetMmMaxThreadCharacteristics WINELIB_NAME_AW(AvSetMmMaxThreadCharacteristics) | 
|  |  | 
|  | BOOL WINAPI AvRevertMmThreadCharacteristics(HANDLE AvrtHandle); | 
|  | BOOL WINAPI AvSetMmThreadPriority(HANDLE AvrtHandle, AVRT_PRIORITY Priority); | 
|  | BOOL WINAPI AvRtCreateThreadOrderingGroup( | 
|  | PHANDLE Context, PLARGE_INTEGER Period, | 
|  | GUID *ThreadOrderingGuid, PLARGE_INTEGER Timeout); | 
|  |  | 
|  | BOOL WINAPI AvRtCreateThreadOrderingGroupExA( | 
|  | PHANDLE Context, PLARGE_INTEGER Period, | 
|  | GUID *ThreadOrderingGuid, PLARGE_INTEGER Timeout, | 
|  | LPCSTR TaskName); | 
|  | BOOL WINAPI AvRtCreateThreadOrderingGroupExW( | 
|  | PHANDLE Context, PLARGE_INTEGER Period, | 
|  | GUID *ThreadOrderingGuid, PLARGE_INTEGER Timeout, | 
|  | LPCSTR TaskName); | 
|  | #define AvRtCreateThreadOrderingGroupEx WINELIB_NAME_AW(AvRtCreateThreadOrderingGroupEx) | 
|  |  | 
|  | BOOL WINAPI AvRtJoinThreadOrderingGroup(PHANDLE Context, GUID *ThreadOrderingGuid, BOOL Before); | 
|  | BOOL WINAPI AvRtWaitOnThreadOrderingGroup(HANDLE Context); | 
|  | BOOL WINAPI AvRtLeaveThreadOrderingGroup(HANDLE Context); | 
|  | BOOL WINAPI AvRtDeleteThreadOrderingGroup(HANDLE Context); | 
|  | BOOL WINAPI AvQuerySystemResponsiveness(HANDLE AvrtHandle, PULONG SystemResponsivenessValue); | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | } | 
|  | #endif | 
|  |  | 
|  | #endif /*_AVRT_*/ |