d3dx9: Unify calling parse_mesh helper functions.
[wine.git] / dlls / avrt / main.c
blob68af35c891a38160b9d875f81722bb9935129b04
1 /* Avrt dll implementation
3 * Copyright (C) 2009 Maarten Lankhorst
5 * This program is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Lesser General Public
7 * License as published by the Free Software Foundation; either
8 * version 2.1 of the License, or (at your option) any later version.
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
15 * You should have received a copy of the GNU Lesser General Public
16 * License along with this program; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
20 #include <stdarg.h>
22 #include "windef.h"
23 #include "winbase.h"
24 #include "winnls.h"
25 #include "wine/debug.h"
26 #include "avrt.h"
28 WINE_DEFAULT_DEBUG_CHANNEL(avrt);
30 static inline WCHAR *strdupAW(const char *src)
32 int len;
33 WCHAR *dst;
34 if (!src) return NULL;
35 len = MultiByteToWideChar(CP_ACP, 0, src, -1, NULL, 0);
36 if ((dst = malloc(len * sizeof(*dst)))) MultiByteToWideChar(CP_ACP, 0, src, -1, dst, len);
37 return dst;
40 HANDLE WINAPI AvSetMmThreadCharacteristicsA(const char *name, DWORD *index)
42 WCHAR *nameW = NULL;
43 HANDLE ret;
45 if (name && !(nameW = strdupAW(name)))
47 SetLastError(ERROR_OUTOFMEMORY);
48 return NULL;
51 ret = AvSetMmThreadCharacteristicsW(nameW, index);
53 free(nameW);
54 return ret;
57 HANDLE WINAPI AvSetMmThreadCharacteristicsW(const WCHAR *name, DWORD *index)
59 FIXME("(%s,%p): stub\n", debugstr_w(name), index);
61 if (!name)
63 SetLastError(ERROR_INVALID_TASK_NAME);
64 return NULL;
67 if (!index)
69 SetLastError(ERROR_INVALID_HANDLE);
70 return NULL;
73 return (HANDLE)0x12345678;
76 BOOL WINAPI AvQuerySystemResponsiveness(HANDLE AvrtHandle, ULONG *value)
78 FIXME("(%p, %p): stub\n", AvrtHandle, value);
79 return FALSE;
82 BOOL WINAPI AvRevertMmThreadCharacteristics(HANDLE AvrtHandle)
84 FIXME("(%p): stub\n", AvrtHandle);
85 return TRUE;
88 BOOL WINAPI AvSetMmThreadPriority(HANDLE AvrtHandle, AVRT_PRIORITY prio)
90 FIXME("(%p)->(%u) stub\n", AvrtHandle, prio);
91 return TRUE;
94 HANDLE WINAPI AvSetMmMaxThreadCharacteristicsA(const char *task1, const char *task2, DWORD *index)
96 WCHAR *task1W = NULL, *task2W = NULL;
97 HANDLE ret;
99 if (task1 && !(task1W = strdupAW(task1)))
101 SetLastError(ERROR_OUTOFMEMORY);
102 return NULL;
105 if (task2 && !(task2W = strdupAW(task2)))
107 SetLastError(ERROR_OUTOFMEMORY);
108 return NULL;
111 ret = AvSetMmMaxThreadCharacteristicsW(task1W, task2W, index);
113 free(task2W);
114 free(task1W);
115 return ret;
118 HANDLE WINAPI AvSetMmMaxThreadCharacteristicsW(const WCHAR *task1, const WCHAR *task2, DWORD *index)
120 FIXME("(%s,%s,%p): stub\n", debugstr_w(task1), debugstr_w(task2), index);
122 if (!task1 || task2)
124 SetLastError(ERROR_INVALID_TASK_NAME);
125 return NULL;
128 if (!index)
130 SetLastError(ERROR_INVALID_HANDLE);
131 return NULL;
134 return (HANDLE)0x12345678;