ReactOS 0.4.15-dev-8100-g1887773
main.c
Go to the documentation of this file.
1/* Avrt dll implementation
2 *
3 * Copyright (C) 2009 Maarten Lankhorst
4 *
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.
9 *
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.
14 *
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
18 */
19
20#include <stdarg.h>
21#include <stdlib.h>
22
23#include "windef.h"
24#include "winbase.h"
25#include "winnls.h"
26#include "wine/debug.h"
27#include "avrt.h"
28
30
31static inline WCHAR *strdupAW(const char *src)
32{
33 int len;
34 WCHAR *dst;
35 if (!src) return NULL;
36 len = MultiByteToWideChar(CP_ACP, 0, src, -1, NULL, 0);
37 if ((dst = malloc(len * sizeof(*dst)))) MultiByteToWideChar(CP_ACP, 0, src, -1, dst, len);
38 return dst;
39}
40
42{
43 WCHAR *nameW = NULL;
44 HANDLE ret;
45
46 if (name && !(nameW = strdupAW(name)))
47 {
49 return NULL;
50 }
51
53
54 free(nameW);
55 return ret;
56}
57
59{
60 FIXME("(%s,%p): stub\n", debugstr_w(name), index);
61
62 if (!name)
63 {
65 return NULL;
66 }
67
68 if (!index)
69 {
71 return NULL;
72 }
73
74 return (HANDLE)0x12345678;
75}
76
78{
79 FIXME("(%p, %p): stub\n", AvrtHandle, value);
80 return FALSE;
81}
82
84{
85 FIXME("(%p): stub\n", AvrtHandle);
86 return TRUE;
87}
88
90{
91 FIXME("(%p)->(%u) stub\n", AvrtHandle, prio);
92 return TRUE;
93}
94
95HANDLE WINAPI AvSetMmMaxThreadCharacteristicsA(const char *task1, const char *task2, DWORD *index)
96{
97 WCHAR *task1W = NULL, *task2W = NULL;
98 HANDLE ret;
99
100 if (task1 && !(task1W = strdupAW(task1)))
101 {
103 return NULL;
104 }
105
106 if (task2 && !(task2W = strdupAW(task2)))
107 {
109 return NULL;
110 }
111
112 ret = AvSetMmMaxThreadCharacteristicsW(task1W, task2W, index);
113
114 free(task2W);
115 free(task1W);
116 return ret;
117}
118
120{
121 FIXME("(%s,%s,%p): stub\n", debugstr_w(task1), debugstr_w(task2), index);
122
123 if (!task1 || task2)
124 {
126 return NULL;
127 }
128
129 if (!index)
130 {
132 return NULL;
133 }
134
135 return (HANDLE)0x12345678;
136}
enum _AVRT_PRIORITY AVRT_PRIORITY
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
Definition: precomp.h:23
static const WCHAR nameW[]
Definition: main.c:46
#define FIXME(fmt,...)
Definition: debug.h:114
#define free
Definition: debug_ros.c:5
#define malloc
Definition: debug_ros.c:4
#define ERROR_OUTOFMEMORY
Definition: deptool.c:13
#define NULL
Definition: types.h:112
#define TRUE
Definition: types.h:120
#define FALSE
Definition: types.h:117
BOOL WINAPI AvQuerySystemResponsiveness(HANDLE AvrtHandle, ULONG *value)
Definition: main.c:77
BOOL WINAPI AvSetMmThreadPriority(HANDLE AvrtHandle, AVRT_PRIORITY prio)
Definition: main.c:89
static WCHAR * strdupAW(const char *src)
Definition: main.c:31
BOOL WINAPI AvRevertMmThreadCharacteristics(HANDLE AvrtHandle)
Definition: main.c:83
HANDLE WINAPI AvSetMmThreadCharacteristicsA(const char *name, DWORD *index)
Definition: main.c:41
HANDLE WINAPI AvSetMmMaxThreadCharacteristicsA(const char *task1, const char *task2, DWORD *index)
Definition: main.c:95
HANDLE WINAPI AvSetMmThreadCharacteristicsW(const WCHAR *name, DWORD *index)
Definition: main.c:58
HANDLE WINAPI AvSetMmMaxThreadCharacteristicsW(const WCHAR *task1, const WCHAR *task2, DWORD *index)
Definition: main.c:119
#define CP_ACP
Definition: compat.h:109
#define SetLastError(x)
Definition: compat.h:752
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
#define MultiByteToWideChar
Definition: compat.h:110
unsigned int BOOL
Definition: ntddk_ex.h:94
unsigned long DWORD
Definition: ntddk_ex.h:95
GLenum src
Definition: glext.h:6340
GLuint index
Definition: glext.h:6031
GLenum GLenum dst
Definition: glext.h:6340
GLenum GLsizei len
Definition: glext.h:6722
#define debugstr_w
Definition: kernel32.h:32
Definition: name.c:39
uint32_t ULONG
Definition: typedefs.h:59
Definition: pdh_main.c:94
int ret
#define WINAPI
Definition: msvc.h:6
#define ERROR_INVALID_TASK_NAME
Definition: winerror.h:956
__wchar_t WCHAR
Definition: xmlstorage.h:180