Module: wine Branch: master Commit: 937fd3989494553b9c50a564ea6f57eb36e8fe0b URL: http://source.winehq.org/git/wine.git/?a=commit;h=937fd3989494553b9c50a564ea...
Author: Maarten Lankhorst m.b.lankhorst@gmail.com Date: Tue Nov 10 19:57:32 2009 +0100
include: Add avrt header.
---
include/Makefile.in | 1 + include/avrt.h | 74 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 75 insertions(+), 0 deletions(-)
diff --git a/include/Makefile.in b/include/Makefile.in index f8c2b3d..2a49856 100644 --- a/include/Makefile.in +++ b/include/Makefile.in @@ -108,6 +108,7 @@ SRCDIR_INCLUDES = \ audevcod.h \ audiosessiontypes.h \ aviriff.h \ + avrt.h \ axcore.idl \ axextend.idl \ basetsd.h \ diff --git a/include/avrt.h b/include/avrt.h new file mode 100644 index 0000000..691d36a --- /dev/null +++ b/include/avrt.h @@ -0,0 +1,74 @@ +/* + * 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_*/