ReactOS  0.4.14-dev-115-g4576127
d3drm.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2005 Peter Berg Larsen
3  * Copyright (C) 2010 Christian Costa
4  *
5  * This library 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 library 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 library; if not, write to the Free Software
17  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
18  */
19 
20 #ifndef __D3DRM_H__
21 #define __D3DRM_H__
22 
23 #include <ddraw.h>
24 
25 typedef struct IDirect3DRM *LPDIRECT3DRM, **LPLPDIRECT3DRM;
26 
27 #include <d3drmobj.h>
28 
29 #ifdef __cplusplus
30 extern "C" {
31 #endif
32 
33 /* Direct3DRM Object CLSID */
34 DEFINE_GUID(CLSID_CDirect3DRM, 0x4516ec41, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3);
35 
36 /* Direct3DRM Interface GUIDs */
37 DEFINE_GUID(IID_IDirect3DRM, 0x2bc49361, 0x8327, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
38 DEFINE_GUID(IID_IDirect3DRM2, 0x4516ecc8, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3);
39 DEFINE_GUID(IID_IDirect3DRM3, 0x4516ec83, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3);
40 
41 typedef struct IDirect3DRM2 *LPDIRECT3DRM2, **LPLPDIRECT3DRM2;
42 typedef struct IDirect3DRM3 *LPDIRECT3DRM3, **LPLPDIRECT3DRM3;
43 
44 HRESULT WINAPI Direct3DRMCreate(struct IDirect3DRM **d3drm);
45 
46 /*****************************************************************************
47  * IDirect3DRMObject interface
48  */
49 #ifdef WINE_NO_UNICODE_MACROS
50 #undef GetClassName
51 #endif
52 #define INTERFACE IDirect3DRM
54 {
55  /*** IUnknown methods ***/
59  /*** IDirect3DRM methods ***/
60  STDMETHOD(CreateObject)(THIS_ REFCLSID clsid, IUnknown *outer, REFIID iid, void **out) PURE;
61  STDMETHOD(CreateFrame)(THIS_ IDirect3DRMFrame *parent, IDirect3DRMFrame **frame) PURE;
62  STDMETHOD(CreateMesh)(THIS_ IDirect3DRMMesh **mesh) PURE;
63  STDMETHOD(CreateMeshBuilder)(THIS_ IDirect3DRMMeshBuilder **mesh_builder) PURE;
64  STDMETHOD(CreateFace)(THIS_ IDirect3DRMFace **face) PURE;
65  STDMETHOD(CreateAnimation)(THIS_ IDirect3DRMAnimation **animation) PURE;
66  STDMETHOD(CreateAnimationSet)(THIS_ IDirect3DRMAnimationSet **set) PURE;
67  STDMETHOD(CreateTexture)(THIS_ D3DRMIMAGE *image, IDirect3DRMTexture **texture) PURE;
68  STDMETHOD(CreateLight)(THIS_ D3DRMLIGHTTYPE type, D3DCOLOR color, IDirect3DRMLight **light) PURE;
70  IDirect3DRMLight **light) PURE;
71  STDMETHOD(CreateMaterial)(THIS_ D3DVALUE power, IDirect3DRMMaterial **material) PURE;
72  STDMETHOD(CreateDevice)(THIS_ DWORD width, DWORD height, IDirect3DRMDevice **device) PURE;
73  STDMETHOD(CreateDeviceFromSurface)(THIS_ GUID *guid, IDirectDraw *ddraw,
74  IDirectDrawSurface *surface, IDirect3DRMDevice **device) PURE;
75  STDMETHOD(CreateDeviceFromD3D)(THIS_ IDirect3D *d3d, IDirect3DDevice *d3d_device,
76  IDirect3DRMDevice **device) PURE;
77  STDMETHOD(CreateDeviceFromClipper)(THIS_ IDirectDrawClipper *clipper, GUID *guid,
78  int width, int height, IDirect3DRMDevice **device) PURE;
79  STDMETHOD(CreateTextureFromSurface)(THIS_ IDirectDrawSurface *surface,
80  IDirect3DRMTexture **texture) PURE;
81  STDMETHOD(CreateShadow)(THIS_ IDirect3DRMVisual *visual, IDirect3DRMLight *light,
83  IDirect3DRMVisual **shadow) PURE;
84  STDMETHOD(CreateViewport)(THIS_ IDirect3DRMDevice *device, IDirect3DRMFrame *camera,
85  DWORD x, DWORD y, DWORD width, DWORD height, IDirect3DRMViewport **viewport) PURE;
86  STDMETHOD(CreateWrap)(THIS_ D3DRMWRAPTYPE type, IDirect3DRMFrame *reference, D3DVALUE ox, D3DVALUE oy, D3DVALUE oz,
88  D3DVALUE su, D3DVALUE sv, IDirect3DRMWrap **wrap) PURE;
89  STDMETHOD(CreateUserVisual)(THIS_ D3DRMUSERVISUALCALLBACK cb, void *ctx, IDirect3DRMUserVisual **visual) PURE;
90  STDMETHOD(LoadTexture)(THIS_ const char *filename, IDirect3DRMTexture **texture) PURE;
91  STDMETHOD(LoadTextureFromResource)(THIS_ HRSRC resource, IDirect3DRMTexture **texture) PURE;
92  STDMETHOD(SetSearchPath)(THIS_ const char *path) PURE;
93  STDMETHOD(AddSearchPath)(THIS_ const char *path) PURE;
94  STDMETHOD(GetSearchPath)(THIS_ DWORD *size, char *path) PURE;
95  STDMETHOD(SetDefaultTextureColors)(THIS_ DWORD) PURE;
96  STDMETHOD(SetDefaultTextureShades)(THIS_ DWORD) PURE;
97  STDMETHOD(GetDevices)(THIS_ IDirect3DRMDeviceArray **array) PURE;
98  STDMETHOD(GetNamedObject)(THIS_ const char *name, IDirect3DRMObject **object) PURE;
99  STDMETHOD(EnumerateObjects)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
100  STDMETHOD(Load)(THIS_ void *source, void *object_id, IID **iids, DWORD iid_count, D3DRMLOADOPTIONS flags,
101  D3DRMLOADCALLBACK load_cb, void *load_ctx, D3DRMLOADTEXTURECALLBACK load_tex_cb, void *load_tex_ctx,
102  IDirect3DRMFrame *parent_frame) PURE;
103  STDMETHOD(Tick)(THIS_ D3DVALUE) PURE;
104 };
105 #undef INTERFACE
106 
107 #if !defined(__cplusplus) || defined(CINTERFACE)
108 /*** IUnknown methods ***/
109 #define IDirect3DRM_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
110 #define IDirect3DRM_AddRef(p) (p)->lpVtbl->AddRef(p)
111 #define IDirect3DRM_Release(p) (p)->lpVtbl->Release(p)
112 /*** IDirect3DRM methods ***/
113 #define IDirect3DRM_CreateObject(p,a,b,c,d) (p)->lpVtbl->CreateObject(p,a,b,c,d)
114 #define IDirect3DRM_CreateFrame(p,a,b) (p)->lpVtbl->CreateFrame(p,a,b)
115 #define IDirect3DRM_CreateMesh(p,a) (p)->lpVtbl->CreateMesh(p,a)
116 #define IDirect3DRM_CreateMeshBuilder(p,a) (p)->lpVtbl->CreateMeshBuilder(p,a)
117 #define IDirect3DRM_CreateFace(p,a) (p)->lpVtbl->CreateFace(p,a)
118 #define IDirect3DRM_CreateAnimation(p,a) (p)->lpVtbl->CreateAnimation(p,a)
119 #define IDirect3DRM_CreateAnimationSet(p,a) (p)->lpVtbl->CreateAnimationSet(p,a)
120 #define IDirect3DRM_CreateTexture(p,a,b) (p)->lpVtbl->CreateTexture(p,a,b)
121 #define IDirect3DRM_CreateLight(p,a,b,c) (p)->lpVtbl->CreateLight(p,a,b,c)
122 #define IDirect3DRM_CreateLightRGB(p,a,b,c,d,e) (p)->lpVtbl->CreateLightRGB(p,a,b,c,d,e)
123 #define IDirect3DRM_CreateMaterial(p,a,b) (p)->lpVtbl->CreateMaterial(p,a,b)
124 #define IDirect3DRM_CreateDevice(p,a,b,c) (p)->lpVtbl->CreateDevice(p,a,b,c)
125 #define IDirect3DRM_CreateDeviceFromSurface(p,a,b,c,d) (p)->lpVtbl->CreateDeviceFromSurface(p,a,b,c,d)
126 #define IDirect3DRM_CreateDeviceFromD3D(p,a,b,c) (p)->lpVtbl->CreateDeviceFromD3D(p,a,b,c)
127 #define IDirect3DRM_CreateDeviceFromClipper(p,a,b,c,d,e) (p)->lpVtbl->CreateDeviceFromClipper(p,a,b,c,d,e)
128 #define IDirect3DRM_CreateTextureFromSurface(p,a,b) (p)->lpVtbl->CreateTextureFromSurface(p,a,b)
129 #define IDirect3DRM_CreateShadow(p,a,b,c,d,e,f,g,h,i) (p)->lpVtbl->CreateShadow(p,a,b,c,d,e,f,g,h,i)
130 #define IDirect3DRM_CreateViewport(p,a,b,c,d,e,f,g) (p)->lpVtbl->CreateViewport(p,a,b,c,d,e,f,g)
131 #define IDirect3DRM_CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q) (p)->lpVtbl->CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q)
132 #define IDirect3DRM_CreateUserVisual(p,a,b,c) (p)->lpVtbl->CreateUserVisual(p,a,b,c)
133 #define IDirect3DRM_LoadTexture(p,a,b) (p)->lpVtbl->LoadTexture(p,a,b)
134 #define IDirect3DRM_LoadTextureFromResource(p,a,b) (p)->lpVtbl->LoadTextureFromResource(p,a,b)
135 #define IDirect3DRM_SetSearchPath(p,a) (p)->lpVtbl->SetSearchPath(p,a)
136 #define IDirect3DRM_AddSearchPath(p,a) (p)->lpVtbl->AddSearchPath(p,a)
137 #define IDirect3DRM_GetSearchPath(p,a,b) (p)->lpVtbl->GetSearchPath(p,a,b)
138 #define IDirect3DRM_SetDefaultTextureColors(p,a) (p)->lpVtbl->SetDefaultTextureColors(p,a)
139 #define IDirect3DRM_SetDefaultTextureShades(p,a) (p)->lpVtbl->SetDefaultTextureShades(p,a)
140 #define IDirect3DRM_GetDevices(p,a) (p)->lpVtbl->GetDevices(p,a)
141 #define IDirect3DRM_GetNamedObject(p,a,b) (p)->lpVtbl->GetNamedObject(p,a,b)
142 #define IDirect3DRM_EnumerateObjects(p,a,b) (p)->lpVtbl->EnumerateObjects(p,a,b)
143 #define IDirect3DRM_Load(p,a,b,c,d,e,f,g,h,i,j) (p)->lpVtbl->Load(p,a,b,c,d,e,f,g,h,i,j)
144 #define IDirect3DRM_Tick(p,a) (p)->lpVtbl->Tick(p,a)
145 #else
146 /*** IUnknown methods ***/
147 #define IDirect3DRM_QueryInterface(p,a,b) (p)->QueryInterface(a,b)
148 #define IDirect3DRM_AddRef(p) (p)->AddRef()
149 #define IDirect3DRM_Release(p) (p)->Release()
150 /*** IDirect3DRM methods ***/
151 #define IDirect3DRM_CreateObject(p,a,b,c,d) (p)->CreateObject(a,b,c,d)
152 #define IDirect3DRM_CreateFrame(p,a,b) (p)->CreateFrame(a,b)
153 #define IDirect3DRM_CreateMesh(p,a) (p)->CreateMesh(a)
154 #define IDirect3DRM_CreateMeshBuilder(p,a) (p)->CreateMeshBuilder(a)
155 #define IDirect3DRM_CreateFace(p,a) (p)->CreateFace(a)
156 #define IDirect3DRM_CreateAnimation(p,a) (p)->CreateAnimation(a)
157 #define IDirect3DRM_CreateAnimationSet(p,a) (p)->CreateAnimationSet(a)
158 #define IDirect3DRM_CreateTexture(p,a,b) (p)->CreateTexture(a,b)
159 #define IDirect3DRM_CreateLight(p,a,b,c) (p)->CreateLight(a,b,c)
160 #define IDirect3DRM_CreateLightRGB(p,a,b,c,d,e) (p)->CreateLightRGB(a,b,c,d,e)
161 #define IDirect3DRM_CreateMaterial(p,a,b) (p)->CreateMaterial(a,b)
162 #define IDirect3DRM_CreateDevice(p,a,b,c) (p)->CreateDevice(a,b,c)
163 #define IDirect3DRM_CreateDeviceFromSurface(p,a,b,c,d) (p)->CreateDeviceFromSurface(a,b,c,d)
164 #define IDirect3DRM_CreateDeviceFromD3D(p,a,b,c) (p)->CreateDeviceFromD3D(a,b,c)
165 #define IDirect3DRM_CreateDeviceFromClipper(p,a,b,c,d,e) (p)->CreateDeviceFromClipper(a,b,c,d,e)
166 #define IDirect3DRM_CreateTextureFromSurface(p,a,b) (p)->CreateTextureFromSurface(a,b)
167 #define IDirect3DRM_CreateShadow(p,a,b,c,d,e,f,g,h,i) (p)->CreateShadow(a,b,c,d,e,f,g,h,i)
168 #define IDirect3DRM_CreateViewport(p,a,b,c,d,e,f,g) (p)->CreateViewport(a,b,c,d,e,f,g)
169 #define IDirect3DRM_CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q) (p)->CreateWrap(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q)
170 #define IDirect3DRM_CreateUserVisual(p,a,b,c) (p)->CreateUserVisual(a,b,c)
171 #define IDirect3DRM_LoadTexture(p,a,b) (p)->LoadTexture(a,b)
172 #define IDirect3DRM_LoadTextureFromResource(p,a,b) (p)->LoadTextureFromResource(a,b)
173 #define IDirect3DRM_SetSearchPath(p,a) (p)->SetSearchPath(a)
174 #define IDirect3DRM_AddSearchPath(p,a) (p)->AddSearchPath(a)
175 #define IDirect3DRM_GetSearchPath(p,a,b) (p)->GetSearchPath(a,b)
176 #define IDirect3DRM_SetDefaultTextureColors(p,a) (p)->SetDefaultTextureColors(a)
177 #define IDirect3DRM_SetDefaultTextureShades(p,a) (p)->SetDefaultTextureShades(a)
178 #define IDirect3DRM_GetDevices(p,a) (p)->GetDevices(a)
179 #define IDirect3DRM_GetNamedObject(p,a,b) (p)->GetNamedObject(a,b)
180 #define IDirect3DRM_EnumerateObjects(p,a,b) (p)->EnumerateObjects(a,b)
181 #define IDirect3DRM_Load(p,a,b,c,d,e,f,g,h,i,j) (p)->Load(a,b,c,d,e,f,g,h,i,j)
182 #define IDirect3DRM_Tick(p,a) (p)->Tick(a)
183 #endif
184 
185 /*****************************************************************************
186  * IDirect3DRM2 interface
187  */
188 #ifdef WINE_NO_UNICODE_MACROS
189 #undef GetClassName
190 #endif
191 #define INTERFACE IDirect3DRM2
193 {
194  /*** IUnknown methods ***/
198  /*** IDirect3DRM2 methods ***/
199  STDMETHOD(CreateObject)(THIS_ REFCLSID clsid, IUnknown *outer, REFIID iid, void **out) PURE;
200  STDMETHOD(CreateFrame)(THIS_ IDirect3DRMFrame *parent, IDirect3DRMFrame2 **frame) PURE;
201  STDMETHOD(CreateMesh)(THIS_ IDirect3DRMMesh **mesh) PURE;
202  STDMETHOD(CreateMeshBuilder)(THIS_ IDirect3DRMMeshBuilder2 **mesh_builder) PURE;
203  STDMETHOD(CreateFace)(THIS_ IDirect3DRMFace **face) PURE;
204  STDMETHOD(CreateAnimation)(THIS_ IDirect3DRMAnimation **animation) PURE;
205  STDMETHOD(CreateAnimationSet)(THIS_ IDirect3DRMAnimationSet **set) PURE;
206  STDMETHOD(CreateTexture)(THIS_ D3DRMIMAGE *image, IDirect3DRMTexture2 **texture) PURE;
207  STDMETHOD(CreateLight)(THIS_ D3DRMLIGHTTYPE type, D3DCOLOR color, IDirect3DRMLight **light) PURE;
209  IDirect3DRMLight **light) PURE;
210  STDMETHOD(CreateMaterial)(THIS_ D3DVALUE power, IDirect3DRMMaterial **material) PURE;
211  STDMETHOD(CreateDevice)(THIS_ DWORD width, DWORD height, IDirect3DRMDevice2 **device) PURE;
212  STDMETHOD(CreateDeviceFromSurface)(THIS_ GUID *guid, IDirectDraw *ddraw,
213  IDirectDrawSurface *surface, IDirect3DRMDevice2 **device) PURE;
214  STDMETHOD(CreateDeviceFromD3D)(THIS_ IDirect3D2 *d3d, IDirect3DDevice2 *d3d_device,
215  IDirect3DRMDevice2 **device) PURE;
216  STDMETHOD(CreateDeviceFromClipper)(THIS_ IDirectDrawClipper *clipper, GUID *guid,
217  int width, int height, IDirect3DRMDevice2 **device) PURE;
218  STDMETHOD(CreateTextureFromSurface)(THIS_ IDirectDrawSurface *surface,
219  IDirect3DRMTexture2 **texture) PURE;
220  STDMETHOD(CreateShadow)(THIS_ IDirect3DRMVisual *visual, IDirect3DRMLight *light,
222  IDirect3DRMVisual **shadow) PURE;
223  STDMETHOD(CreateViewport)(THIS_ IDirect3DRMDevice *device, IDirect3DRMFrame *camera,
224  DWORD x, DWORD y, DWORD width, DWORD height, IDirect3DRMViewport **viewport) PURE;
225  STDMETHOD(CreateWrap)(THIS_ D3DRMWRAPTYPE type, IDirect3DRMFrame *reference, D3DVALUE ox, D3DVALUE oy, D3DVALUE oz,
227  D3DVALUE su, D3DVALUE sv, IDirect3DRMWrap **wrap) PURE;
228  STDMETHOD(CreateUserVisual)(THIS_ D3DRMUSERVISUALCALLBACK cb, void *ctx, IDirect3DRMUserVisual **visual) PURE;
229  STDMETHOD(LoadTexture)(THIS_ const char *filename, IDirect3DRMTexture2 **texture) PURE;
230  STDMETHOD(LoadTextureFromResource)(THIS_ HMODULE module, const char *resource_name,
231  const char *resource_type, IDirect3DRMTexture2 **texture) PURE;
232  STDMETHOD(SetSearchPath)(THIS_ const char *path) PURE;
233  STDMETHOD(AddSearchPath)(THIS_ const char *path) PURE;
234  STDMETHOD(GetSearchPath)(THIS_ DWORD *size, char *path) PURE;
235  STDMETHOD(SetDefaultTextureColors)(THIS_ DWORD) PURE;
236  STDMETHOD(SetDefaultTextureShades)(THIS_ DWORD) PURE;
237  STDMETHOD(GetDevices)(THIS_ IDirect3DRMDeviceArray **array) PURE;
238  STDMETHOD(GetNamedObject)(THIS_ const char *name, IDirect3DRMObject **object) PURE;
239  STDMETHOD(EnumerateObjects)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
240  STDMETHOD(Load)(THIS_ void *source, void *object_id, IID **iids, DWORD iid_count, D3DRMLOADOPTIONS flags,
241  D3DRMLOADCALLBACK load_cb, void *load_ctx, D3DRMLOADTEXTURECALLBACK load_tex_cb, void *load_tex_ctx,
242  IDirect3DRMFrame *parent_frame) PURE;
243  STDMETHOD(Tick)(THIS_ D3DVALUE) PURE;
244  STDMETHOD(CreateProgressiveMesh)(THIS_ IDirect3DRMProgressiveMesh **mesh) PURE;
245 };
246 #undef INTERFACE
247 
248 #if !defined(__cplusplus) || defined(CINTERFACE)
249 /*** IUnknown methods ***/
250 #define IDirect3DRM2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
251 #define IDirect3DRM2_AddRef(p) (p)->lpVtbl->AddRef(p)
252 #define IDirect3DRM2_Release(p) (p)->lpVtbl->Release(p)
253 /*** IDirect3DRM2 methods ***/
254 #define IDirect3DRM2_CreateObject(p,a,b,c,d) (p)->lpVtbl->CreateObject(p,a,b,c,d)
255 #define IDirect3DRM2_CreateFrame(p,a,b) (p)->lpVtbl->CreateFrame(p,a,b)
256 #define IDirect3DRM2_CreateMesh(p,a) (p)->lpVtbl->CreateMesh(p,a)
257 #define IDirect3DRM2_CreateMeshBuilder(p,a) (p)->lpVtbl->CreateMeshBuilder(p,a)
258 #define IDirect3DRM2_CreateFace(p,a) (p)->lpVtbl->CreateFace(p,a)
259 #define IDirect3DRM2_CreateAnimation(p,a) (p)->lpVtbl->CreateAnimation(p,a)
260 #define IDirect3DRM2_CreateAnimationSet(p,a) (p)->lpVtbl->CreateAnimationSet(p,a)
261 #define IDirect3DRM2_CreateTexture(p,a,b) (p)->lpVtbl->CreateTexture(p,a,b)
262 #define IDirect3DRM2_CreateLight(p,a,b,c) (p)->lpVtbl->CreateLight(p,a,b,c)
263 #define IDirect3DRM2_CreateLightRGB(p,a,b,c,d,e) (p)->lpVtbl->CreateLightRGB(p,a,b,c,d,e)
264 #define IDirect3DRM2_CreateMaterial(p,a,b) (p)->lpVtbl->CreateMaterial(p,a,b)
265 #define IDirect3DRM2_CreateDevice(p,a,b,c) (p)->lpVtbl->CreateDevice(p,a,b,c)
266 #define IDirect3DRM2_CreateDeviceFromSurface(p,a,b,c,d) (p)->lpVtbl->CreateDeviceFromSurface(p,a,b,c,d)
267 #define IDirect3DRM2_CreateDeviceFromD3D(p,a,b,c) (p)->lpVtbl->CreateDeviceFromD3D(p,a,b,c)
268 #define IDirect3DRM2_CreateDeviceFromClipper(p,a,b,c,d,e) (p)->lpVtbl->CreateDeviceFromClipper(p,a,b,c,d,e)
269 #define IDirect3DRM2_CreateTextureFromSurface(p,a,b) (p)->lpVtbl->CreateTextureFromSurface(p,a,b)
270 #define IDirect3DRM2_CreateShadow(p,a,b,c,d,e,f,g,h,i) (p)->lpVtbl->CreateShadow(p,a,b,c,d,e,f,g,h,i)
271 #define IDirect3DRM2_CreateViewport(p,a,b,c,d,e,f,g) (p)->lpVtbl->CreateViewport(p,a,b,c,d,e,f,g)
272 #define IDirect3DRM2_CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q) (p)->lpVtbl->CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q)
273 #define IDirect3DRM2_CreateUserVisual(p,a,b,c) (p)->lpVtbl->CreateUserVisual(p,a,b,c)
274 #define IDirect3DRM2_LoadTexture(p,a,b) (p)->lpVtbl->LoadTexture(p,a,b)
275 #define IDirect3DRM2_LoadTextureFromResource(p,a,b,c,d) (p)->lpVtbl->LoadTextureFromResource(p,a,b,c,d)
276 #define IDirect3DRM2_SetSearchPath(p,a) (p)->lpVtbl->SetSearchPath(p,a)
277 #define IDirect3DRM2_AddSearchPath(p,a) (p)->lpVtbl->AddSearchPath(p,a)
278 #define IDirect3DRM2_GetSearchPath(p,a,b) (p)->lpVtbl->GetSearchPath(p,a,b)
279 #define IDirect3DRM2_SetDefaultTextureColors(p,a) (p)->lpVtbl->SetDefaultTextureColors(p,a)
280 #define IDirect3DRM2_SetDefaultTextureShades(p,a) (p)->lpVtbl->SetDefaultTextureShades(p,a)
281 #define IDirect3DRM2_GetDevices(p,a) (p)->lpVtbl->GetDevices(p,a)
282 #define IDirect3DRM2_GetNamedObject(p,a,b) (p)->lpVtbl->GetNamedObject(p,a,b)
283 #define IDirect3DRM2_EnumerateObjects(p,a,b) (p)->lpVtbl->EnumerateObjects(p,a,b)
284 #define IDirect3DRM2_Load(p,a,b,c,d,e,f,g,h,i,j) (p)->lpVtbl->Load(p,a,b,c,d,e,f,g,h,i,j)
285 #define IDirect3DRM2_Tick(p,a) (p)->lpVtbl->Tick(p,a)
286 #define IDirect3DRM2_CreateProgressiveMesh(p,a) (p)->lpVtbl->CreateProgressiveMesh(p,a)
287 #else
288 /*** IUnknown methods ***/
289 #define IDirect3DRM2_QueryInterface(p,a,b) (p)->QueryInterface(a,b)
290 #define IDirect3DRM2_AddRef(p) (p)->AddRef()
291 #define IDirect3DRM2_Release(p) (p)->Release()
292 /*** IDirect3DRM2 methods ***/
293 #define IDirect3DRM2_CreateObject(p,a,b,c,d) (p)->CreateObject(a,b,c,d)
294 #define IDirect3DRM2_CreateFrame(p,a,b) (p)->CreateFrame(a,b)
295 #define IDirect3DRM2_CreateMesh(p,a) (p)->CreateMesh(a)
296 #define IDirect3DRM2_CreateMeshBuilder(p,a) (p)->CreateMeshBuilder(a)
297 #define IDirect3DRM2_CreateFace(p,a) (p)->CreateFace(a)
298 #define IDirect3DRM2_CreateAnimation(p,a) (p)->CreateAnimation(a)
299 #define IDirect3DRM2_CreateAnimationSet(p,a) (p)->CreateAnimationSet(a)
300 #define IDirect3DRM2_CreateTexture(p,a,b) (p)->CreateTexture(a,b)
301 #define IDirect3DRM2_CreateLight(p,a,b,c) (p)->CreateLight(a,b,c)
302 #define IDirect3DRM2_CreateLightRGB(p,a,b,c,d,e) (p)->CreateLightRGB(a,b,c,d,e)
303 #define IDirect3DRM2_CreateMaterial(p,a,b) (p)->CreateMaterial(a,b)
304 #define IDirect3DRM2_CreateDevice(p,a,b,c) (p)->CreateDevice(a,b,c)
305 #define IDirect3DRM2_CreateDeviceFromSurface(p,a,b,c,d) (p)->CreateDeviceFromSurface(a,b,c,d)
306 #define IDirect3DRM2_CreateDeviceFromD3D(p,a,b,c) (p)->CreateDeviceFromD3D(a,b,c)
307 #define IDirect3DRM2_CreateDeviceFromClipper(p,a,b,c,d,e) (p)->CreateDeviceFromClipper(a,b,c,d,e)
308 #define IDirect3DRM2_CreateTextureFromSurface(p,a,b) (p)->CreateTextureFromSurface(a,b)
309 #define IDirect3DRM2_CreateShadow(p,a,b,c,d,e,f,g,h,i) (p)->CreateShadow(a,b,c,d,e,f,g,h,i)
310 #define IDirect3DRM2_CreateViewport(p,a,b,c,d,e,f,g) (p)->CreateViewport(a,b,c,d,e,f,g)
311 #define IDirect3DRM2_CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q) (p)->CreateWrap(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q)
312 #define IDirect3DRM2_CreateUserVisual(p,a,b,c) (p)->CreateUserVisual(a,b,c)
313 #define IDirect3DRM2_LoadTexture(p,a,b) (p)->LoadTexture(a,b)
314 #define IDirect3DRM2_LoadTextureFromResource(p,a,b,c,d) (p)->LoadTextureFromResource(a,b,c,d)
315 #define IDirect3DRM2_SetSearchPath(p,a) (p)->SetSearchPath(a)
316 #define IDirect3DRM2_AddSearchPath(p,a) (p)->AddSearchPath(a)
317 #define IDirect3DRM2_GetSearchPath(p,a,b) (p)->GetSearchPath(a,b)
318 #define IDirect3DRM2_SetDefaultTextureColors(p,a) (p)->SetDefaultTextureColors(a)
319 #define IDirect3DRM2_SetDefaultTextureShades(p,a) (p)->SetDefaultTextureShades(a)
320 #define IDirect3DRM2_GetDevices(p,a) (p)->GetDevices(a)
321 #define IDirect3DRM2_GetNamedObject(p,a,b) (p)->GetNamedObject(a,b)
322 #define IDirect3DRM2_EnumerateObjects(p,a,b) (p)->EnumerateObjects(a,b)
323 #define IDirect3DRM2_Load(p,a,b,c,d,e,f,g,h,i,j) (p)->Load(a,b,c,d,e,f,g,h,i,j)
324 #define IDirect3DRM2_Tick(p,a) (p)->Tick(a)
325 #define IDirect3DRM2_CreateProgressiveMesh(p,a) (p)->CreateProgressiveMesh(p,a)
326 #endif
327 
328 /*****************************************************************************
329  * IDirect3DRM3 interface
330  */
331 #ifdef WINE_NO_UNICODE_MACROS
332 #undef GetClassName
333 #endif
334 #define INTERFACE IDirect3DRM3
336 {
337  /*** IUnknown methods ***/
341  /*** IDirect3DRM2 methods ***/
342  STDMETHOD(CreateObject)(THIS_ REFCLSID clsid, IUnknown *outer, REFIID iid, void **out) PURE;
343  STDMETHOD(CreateFrame)(THIS_ IDirect3DRMFrame3 *parent, IDirect3DRMFrame3 **frame) PURE;
344  STDMETHOD(CreateMesh)(THIS_ IDirect3DRMMesh **mesh) PURE;
345  STDMETHOD(CreateMeshBuilder)(THIS_ IDirect3DRMMeshBuilder3 **mesh_builder) PURE;
346  STDMETHOD(CreateFace)(THIS_ IDirect3DRMFace2 **face) PURE;
347  STDMETHOD(CreateAnimation)(THIS_ IDirect3DRMAnimation2 **animation) PURE;
348  STDMETHOD(CreateAnimationSet)(THIS_ IDirect3DRMAnimationSet2 **set) PURE;
349  STDMETHOD(CreateTexture)(THIS_ D3DRMIMAGE *image, IDirect3DRMTexture3 **texture) PURE;
350  STDMETHOD(CreateLight)(THIS_ D3DRMLIGHTTYPE type, D3DCOLOR color, IDirect3DRMLight **light) PURE;
352  IDirect3DRMLight **light) PURE;
353  STDMETHOD(CreateMaterial)(THIS_ D3DVALUE, IDirect3DRMMaterial2 **material) PURE;
354  STDMETHOD(CreateDevice)(THIS_ DWORD width, DWORD height, IDirect3DRMDevice3 **device) PURE;
355  STDMETHOD(CreateDeviceFromSurface)(THIS_ GUID *guid, IDirectDraw *ddraw,
356  IDirectDrawSurface *surface, DWORD flags, IDirect3DRMDevice3 **device) PURE;
357  STDMETHOD(CreateDeviceFromD3D)(THIS_ IDirect3D2 *d3d, IDirect3DDevice2 *d3d_device,
358  IDirect3DRMDevice3 **device) PURE;
359  STDMETHOD(CreateDeviceFromClipper)(THIS_ IDirectDrawClipper *clipper, GUID *guid,
360  int width, int height, IDirect3DRMDevice3 **device) PURE;
361  STDMETHOD(CreateTextureFromSurface)(THIS_ IDirectDrawSurface *surface,
362  IDirect3DRMTexture3 **texture) PURE;
363  STDMETHOD(CreateShadow)(THIS_ IUnknown *object, IDirect3DRMLight *light, D3DVALUE px, D3DVALUE py, D3DVALUE pz,
364  D3DVALUE nx, D3DVALUE ny, D3DVALUE nz, IDirect3DRMShadow2 **shadow) PURE;
365  STDMETHOD(CreateViewport)(THIS_ IDirect3DRMDevice3 *device, IDirect3DRMFrame3 *camera,
366  DWORD x, DWORD y, DWORD width, DWORD height, IDirect3DRMViewport2 **viewport) PURE;
367  STDMETHOD(CreateWrap)(THIS_ D3DRMWRAPTYPE type, IDirect3DRMFrame3 *reference,
369  D3DVALUE ux, D3DVALUE uy, D3DVALUE uz, D3DVALUE ou, D3DVALUE ov, D3DVALUE su, D3DVALUE sv,
370  IDirect3DRMWrap **wrap) PURE;
371  STDMETHOD(CreateUserVisual)(THIS_ D3DRMUSERVISUALCALLBACK cb, void *ctx, IDirect3DRMUserVisual **visual) PURE;
372  STDMETHOD(LoadTexture)(THIS_ const char *filename, IDirect3DRMTexture3 **texture) PURE;
373  STDMETHOD(LoadTextureFromResource)(THIS_ HMODULE module, const char *resource_name,
374  const char *resource_type, IDirect3DRMTexture3 **texture) PURE;
375  STDMETHOD(SetSearchPath)(THIS_ const char *path) PURE;
376  STDMETHOD(AddSearchPath)(THIS_ const char *path) PURE;
377  STDMETHOD(GetSearchPath)(THIS_ DWORD *size, char *path) PURE;
378  STDMETHOD(SetDefaultTextureColors)(THIS_ DWORD) PURE;
379  STDMETHOD(SetDefaultTextureShades)(THIS_ DWORD) PURE;
380  STDMETHOD(GetDevices)(THIS_ IDirect3DRMDeviceArray **array) PURE;
381  STDMETHOD(GetNamedObject)(THIS_ const char *name, IDirect3DRMObject **object) PURE;
382  STDMETHOD(EnumerateObjects)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
383  STDMETHOD(Load)(THIS_ void *source, void *object_id, IID **iids, DWORD iid_count, D3DRMLOADOPTIONS flags,
384  D3DRMLOADCALLBACK load_cb, void *load_ctx, D3DRMLOADTEXTURECALLBACK load_tex_cb, void *load_tex_ctx,
385  IDirect3DRMFrame3 *parent_frame) PURE;
386  STDMETHOD(Tick)(THIS_ D3DVALUE) PURE;
387  STDMETHOD(CreateProgressiveMesh)(THIS_ IDirect3DRMProgressiveMesh **mesh) PURE;
388  STDMETHOD(RegisterClient)(THIS_ REFGUID guid, DWORD *id) PURE;
389  STDMETHOD(UnregisterClient)(THIS_ REFGUID rguid) PURE;
390  STDMETHOD(CreateClippedVisual)(THIS_ IDirect3DRMVisual *visual, IDirect3DRMClippedVisual **clipped_visual) PURE;
391  STDMETHOD(SetOptions)(THIS_ DWORD) PURE;
392  STDMETHOD(GetOptions)(THIS_ DWORD *flags) PURE;
393 };
394 #undef INTERFACE
395 
396 #if !defined(__cplusplus) || defined(CINTERFACE)
397 /*** IUnknown methods ***/
398 #define IDirect3DRM3_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
399 #define IDirect3DRM3_AddRef(p) (p)->lpVtbl->AddRef(p)
400 #define IDirect3DRM3_Release(p) (p)->lpVtbl->Release(p)
401 /*** IDirect3DRM3 methods ***/
402 #define IDirect3DRM3_CreateObject(p,a,b,c,d) (p)->lpVtbl->CreateObject(p,a,b,c,d)
403 #define IDirect3DRM3_CreateFrame(p,a,b) (p)->lpVtbl->CreateFrame(p,a,b)
404 #define IDirect3DRM3_CreateMesh(p,a) (p)->lpVtbl->CreateMesh(p,a)
405 #define IDirect3DRM3_CreateMeshBuilder(p,a) (p)->lpVtbl->CreateMeshBuilder(p,a)
406 #define IDirect3DRM3_CreateFace(p,a) (p)->lpVtbl->CreateFace(p,a)
407 #define IDirect3DRM3_CreateAnimation(p,a) (p)->lpVtbl->CreateAnimation(p,a)
408 #define IDirect3DRM3_CreateAnimationSet(p,a) (p)->lpVtbl->CreateAnimationSet(p,a)
409 #define IDirect3DRM3_CreateTexture(p,a,b) (p)->lpVtbl->CreateTexture(p,a,b)
410 #define IDirect3DRM3_CreateLight(p,a,b,c) (p)->lpVtbl->CreateLight(p,a,b,c)
411 #define IDirect3DRM3_CreateLightRGB(p,a,b,c,d,e) (p)->lpVtbl->CreateLightRGB(p,a,b,c,d,e)
412 #define IDirect3DRM3_CreateMaterial(p,a,b) (p)->lpVtbl->CreateMaterial(p,a,b)
413 #define IDirect3DRM3_CreateDevice(p,a,b,c) (p)->lpVtbl->CreateDevice(p,a,b,c)
414 #define IDirect3DRM3_CreateDeviceFromSurface(p,a,b,c,d,e) (p)->lpVtbl->CreateDeviceFromSurface(p,a,b,c,d,e)
415 #define IDirect3DRM3_CreateDeviceFromD3D(p,a,b,c) (p)->lpVtbl->CreateDeviceFromD3D(p,a,b,c)
416 #define IDirect3DRM3_CreateDeviceFromClipper(p,a,b,c,d,e) (p)->lpVtbl->CreateDeviceFromClipper(p,a,b,c,d,e)
417 #define IDirect3DRM3_CreateTextureFromSurface(p,a,b) (p)->lpVtbl->CreateTextureFromSurface(p,a,b)
418 #define IDirect3DRM3_CreateShadow(p,a,b,c,d,e,f,g,h,i) (p)->lpVtbl->CreateShadow(p,a,b,c,d,e,f,g,h,i)
419 #define IDirect3DRM3_CreateViewport(p,a,b,c,d,e,f,g) (p)->lpVtbl->CreateViewport(p,a,b,c,d,e,f,g)
420 #define IDirect3DRM3_CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q) (p)->lpVtbl->CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q)
421 #define IDirect3DRM3_CreateUserVisual(p,a,b,c) (p)->lpVtbl->CreateUserVisual(p,a,b,c)
422 #define IDirect3DRM3_LoadTexture(p,a,b) (p)->lpVtbl->LoadTexture(p,a,b)
423 #define IDirect3DRM3_LoadTextureFromResource(p,a,b,c,d) (p)->lpVtbl->LoadTextureFromResource(p,a,b,c,d)
424 #define IDirect3DRM3_SetSearchPath(p,a) (p)->lpVtbl->SetSearchPath(p,a)
425 #define IDirect3DRM3_AddSearchPath(p,a) (p)->lpVtbl->AddSearchPath(p,a)
426 #define IDirect3DRM3_GetSearchPath(p,a,b) (p)->lpVtbl->GetSearchPath(p,a,b)
427 #define IDirect3DRM3_SetDefaultTextureColors(p,a) (p)->lpVtbl->SetDefaultTextureColors(p,a)
428 #define IDirect3DRM3_SetDefaultTextureShades(p,a) (p)->lpVtbl->SetDefaultTextureShades(p,a)
429 #define IDirect3DRM3_GetDevices(p,a) (p)->lpVtbl->GetDevices(p,a)
430 #define IDirect3DRM3_GetNamedObject(p,a,b) (p)->lpVtbl->GetNamedObject(p,a,b)
431 #define IDirect3DRM3_EnumerateObjects(p,a,b) (p)->lpVtbl->EnumerateObjects(p,a,b)
432 #define IDirect3DRM3_Load(p,a,b,c,d,e,f,g,h,i,j) (p)->lpVtbl->Load(p,a,b,c,d,e,f,g,h,i,j)
433 #define IDirect3DRM3_Tick(p,a) (p)->lpVtbl->Tick(p,a)
434 #define IDirect3DRM3_CreateProgressiveMesh(p,a) (p)->lpVtbl->CreateProgressiveMesh(p,a)
435 #define IDirect3DRM3_RegisterClient(p,a,b) (p)->lpVtbl->RegisterClient(p,a,b)
436 #define IDirect3DRM3_UnregisterClient(p,a) (p)->lpVtbl->UnregisterClient(p,a)
437 #define IDirect3DRM3_CreateClippedVisual(p,ab) (p)->lpVtbl->CreateClippedVisual(p,a,b)
438 #define IDirect3DRM3_SetOptions(p,a) (p)->lpVtbl->SetOptions(p,a)
439 #define IDirect3DRM3_GetOptions(p,a) (p)->lpVtbl->GetOptions(p,a)
440 #else
441 /*** IUnknown methods ***/
442 #define IDirect3DRM3_QueryInterface(p,a,b) (p)->QueryInterface(a,b)
443 #define IDirect3DRM3_AddRef(p) (p)->AddRef()
444 #define IDirect3DRM3_Release(p) (p)->Release()
445 /*** IDirect3DRM3 methods ***/
446 #define IDirect3DRM3_CreateObject(p,a,b,c,d) (p)->CreateObject(a,b,c,d)
447 #define IDirect3DRM3_CreateFrame(p,a,b) (p)->CreateFrame(a,b)
448 #define IDirect3DRM3_CreateMesh(p,a) (p)->CreateMesh(a)
449 #define IDirect3DRM3_CreateMeshBuilder(p,a) (p)->CreateMeshBuilder(a)
450 #define IDirect3DRM3_CreateFace(p,a) (p)->CreateFace(a)
451 #define IDirect3DRM3_CreateAnimation(p,a) (p)->CreateAnimation(a)
452 #define IDirect3DRM3_CreateAnimationSet(p,a) (p)->CreateAnimationSet(a)
453 #define IDirect3DRM3_CreateTexture(p,a,b) (p)->CreateTexture(a,b)
454 #define IDirect3DRM3_CreateLight(p,a,b,c) (p)->CreateLight(a,b,c)
455 #define IDirect3DRM3_CreateLightRGB(p,a,b,c,d,e) (p)->CreateLightRGB(a,b,c,d,e)
456 #define IDirect3DRM3_CreateMaterial(p,a,b) (p)->CreateMaterial(a,b)
457 #define IDirect3DRM3_CreateDevice(p,a,b,c) (p)->CreateDevice(a,b,c)
458 #define IDirect3DRM3_CreateDeviceFromSurface(p,a,b,c,d,e) (p)->CreateDeviceFromSurface(a,b,c,d,e)
459 #define IDirect3DRM3_CreateDeviceFromD3D(p,a,b,c) (p)->CreateDeviceFromD3D(a,b,c)
460 #define IDirect3DRM3_CreateDeviceFromClipper(p,a,b,c,d,e) (p)->CreateDeviceFromClipper(a,b,c,d,e)
461 #define IDirect3DRM3_CreateTextureFromSurface(p,a,b) (p)->CreateTextureFromSurface(a,b)
462 #define IDirect3DRM3_CreateShadow(p,a,b,c,d,e,f,g,h,i) (p)->CreateShadow(a,b,c,d,e,f,g,h,i)
463 #define IDirect3DRM3_CreateViewport(p,a,b,c,d,e,f,g) (p)->CreateViewport(a,b,c,d,e,f,g)
464 #define IDirect3DRM3_CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q) (p)->CreateWrap(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q)
465 #define IDirect3DRM3_CreateUserVisual(p,a,b,c) (p)->CreateUserVisual(a,b,c)
466 #define IDirect3DRM3_LoadTexture(p,a,b) (p)->LoadTexture(a,b)
467 #define IDirect3DRM3_LoadTextureFromResource(p,a,b,c,d) (p)->LoadTextureFromResource(a,b,c,d)
468 #define IDirect3DRM3_SetSearchPath(p,a) (p)->SetSearchPath(a)
469 #define IDirect3DRM3_AddSearchPath(p,a) (p)->AddSearchPath(a)
470 #define IDirect3DRM3_GetSearchPath(p,a,b) (p)->GetSearchPath(a,b)
471 #define IDirect3DRM3_SetDefaultTextureColors(p,a) (p)->SetDefaultTextureColors(a)
472 #define IDirect3DRM3_SetDefaultTextureShades(p,a) (p)->SetDefaultTextureShades(a)
473 #define IDirect3DRM3_GetDevices(p,a) (p)->GetDevices(a)
474 #define IDirect3DRM3_GetNamedObject(p,a,b) (p)->GetNamedObject(a,b)
475 #define IDirect3DRM3_EnumerateObjects(p,a,b) (p)->EnumerateObjects(a,b)
476 #define IDirect3DRM3_Load(p,a,b,c,d,e,f,g,h,i,j) (p)->Load(a,b,c,d,e,f,g,h,i,j)
477 #define IDirect3DRM3_Tick(p,a) (p)->Tick(a)
478 #define IDirect3DRM3_CreateProgressiveMesh(p,a) (p)->CreateProgressiveMesh(p,a)
479 #define IDirect3DRM3_RegisterClient(p,a,b) (p)->RegisterClient(p,a,b)
480 #define IDirect3DRM3_UnregisterClient(p,a) (p)->UnregisterClient(p,a)
481 #define IDirect3DRM3_CreateClippedVisual(p,ab) (p)->CreateClippedVisual(p,a,b)
482 #define IDirect3DRM3_SetOptions(p,a) (p)->SetOptions(p,a)
483 #define IDirect3DRM3_GetOptions(p,a) (p)->GetOptions(p,a)
484 #endif
485 
486 #define D3DRM_OK DD_OK
487 #define D3DRMERR_BADOBJECT MAKE_DDHRESULT(781)
488 #define D3DRMERR_BADTYPE MAKE_DDHRESULT(782)
489 #define D3DRMERR_BADALLOC MAKE_DDHRESULT(783)
490 #define D3DRMERR_FACEUSED MAKE_DDHRESULT(784)
491 #define D3DRMERR_NOTFOUND MAKE_DDHRESULT(785)
492 #define D3DRMERR_NOTDONEYET MAKE_DDHRESULT(786)
493 #define D3DRMERR_FILENOTFOUND MAKE_DDHRESULT(787)
494 #define D3DRMERR_BADFILE MAKE_DDHRESULT(788)
495 #define D3DRMERR_BADDEVICE MAKE_DDHRESULT(789)
496 #define D3DRMERR_BADVALUE MAKE_DDHRESULT(790)
497 #define D3DRMERR_BADMAJORVERSION MAKE_DDHRESULT(791)
498 #define D3DRMERR_BADMINORVERSION MAKE_DDHRESULT(792)
499 #define D3DRMERR_UNABLETOEXECUTE MAKE_DDHRESULT(793)
500 #define D3DRMERR_LIBRARYNOTFOUND MAKE_DDHRESULT(794)
501 #define D3DRMERR_INVALIDLIBRARY MAKE_DDHRESULT(795)
502 #define D3DRMERR_PENDING MAKE_DDHRESULT(796)
503 #define D3DRMERR_NOTENOUGHDATA MAKE_DDHRESULT(797)
504 #define D3DRMERR_REQUESTTOOLARGE MAKE_DDHRESULT(798)
505 #define D3DRMERR_REQUESTTOOSMALL MAKE_DDHRESULT(799)
506 #define D3DRMERR_CONNECTIONLOST MAKE_DDHRESULT(800)
507 #define D3DRMERR_LOADABORTED MAKE_DDHRESULT(801)
508 #define D3DRMERR_NOINTERNET MAKE_DDHRESULT(802)
509 #define D3DRMERR_BADCACHEFILE MAKE_DDHRESULT(803)
510 #define D3DRMERR_BOXNOTSET MAKE_DDHRESULT(804)
511 #define D3DRMERR_BADPMDATA MAKE_DDHRESULT(805)
512 #define D3DRMERR_CLIENTNOTREGISTERED MAKE_DDHRESULT(806)
513 #define D3DRMERR_NOTCREATEDFROMDDS MAKE_DDHRESULT(807)
514 #define D3DRMERR_NOSUCHKEY MAKE_DDHRESULT(808)
515 #define D3DRMERR_INCOMPATABLEKEY MAKE_DDHRESULT(809)
516 #define D3DRMERR_ELEMENTINUSE MAKE_DDHRESULT(810)
517 #define D3DRMERR_TEXTUREFORMATNOTFOUND MAKE_DDHRESULT(811)
518 #define D3DRMERR_NOTAGGREGATED MAKE_DDHRESULT(812)
519 
520 #ifdef __cplusplus
521 }
522 #endif
523 
524 #endif /* __D3DRM_H__ */
GLeglImageOES image
Definition: gl.h:2204
GLint GLint GLsizei width
Definition: gl.h:1546
#define REFIID
Definition: guiddef.h:118
HMODULE module
Definition: main.cpp:47
#define THIS_
Definition: basetyps.h:65
GLint x0
Definition: linetemp.h:95
Definition: scsiwmi.h:51
_In_ BOOLEAN Release
Definition: classpnp.h:929
#define THIS
Definition: basetyps.h:66
GLsizei const GLchar ** path
Definition: glext.h:7234
REFIID riid
Definition: precomp.h:44
GLdouble GLdouble GLdouble r
Definition: gl.h:2055
#define REFCLSID
Definition: guiddef.h:117
struct IDirect3DRM3 ** LPLPDIRECT3DRM3
Definition: d3drm.h:42
GLint dy
Definition: linetemp.h:97
GLuint GLuint GLsizei GLenum type
Definition: gl.h:1545
HRESULT WINAPI Direct3DRMCreate(struct IDirect3DRM **d3drm)
Definition: d3drm.c:2333
GLint GLint GLint GLint GLint x
Definition: gl.h:1548
NTSTATUS QueryInterface(IN PDEVICE_OBJECT DeviceObject, IN CONST GUID InterfaceType, IN LONG Size, IN LONG Version, OUT PVOID Interface)
Definition: fdo.c:532
WORD face[3]
Definition: mesh.c:4747
int resource
Definition: rdpsnd_sgi.c:44
const char * filename
Definition: ioapi.h:135
#define DWORD
Definition: nt_native.h:44
#define STDMETHOD(m)
Definition: basetyps.h:62
struct IDirect3DRM3 * LPDIRECT3DRM3
Definition: d3drm.h:42
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum light
Definition: glfuncs.h:170
GLfloat GLfloat nz
Definition: glext.h:8896
const GUID * guid
GLuint color
Definition: glext.h:6243
Definition: devices.h:37
struct IDirect3DRM * LPDIRECT3DRM
Definition: d3drm.h:25
float D3DVALUE
Definition: d3dtypes.h:89
DEFINE_GUID(CLSID_CDirect3DRM, 0x4516ec41, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3)
#define b
Definition: ke_i.h:79
GLboolean GLboolean g
Definition: glext.h:6204
struct IDirect3DRM2 * LPDIRECT3DRM2
Definition: d3drm.h:41
GLsizeiptr size
Definition: glext.h:5919
r parent
Definition: btrfs.c:2897
struct IDirect3DRM ** LPLPDIRECT3DRM
Definition: d3drm.h:25
DECLARE_INTERFACE_(IDirect3DRM, IUnknown)
Definition: d3drm.h:53
GLenum GLuint texture
Definition: glext.h:6295
LONG HRESULT
Definition: typedefs.h:77
#define WINAPI
Definition: msvc.h:8
static UINT set(struct ID3DXConstantTableImpl *table, IDirect3DDevice9 *device, struct ctab_constant *constant, const void **indata, D3DXPARAMETER_TYPE intype, UINT *size, UINT incol, D3DXPARAMETER_CLASS inclass, UINT index, BOOL is_pointer)
Definition: shader.c:1095
static FILE * out
Definition: regtests2xml.c:44
unsigned long DWORD
Definition: ntddk_ex.h:95
static DWORD cb
Definition: integrity.c:41
void(__cdecl * D3DRMLOADCALLBACK)(struct IDirect3DRMObject *object, REFIID objectguid, void *arg)
Definition: d3drmobj.h:167
GLbitfield flags
Definition: glext.h:7161
void(__cdecl * D3DRMOBJECTCALLBACK)(struct IDirect3DRMObject *obj, void *arg)
Definition: d3drmobj.h:157
REFCLSID clsid
Definition: msctf.c:84
GLint reference
Definition: glext.h:11729
REFIID LPVOID * ppvObject
Definition: precomp.h:44
GLfloat GLfloat GLfloat GLfloat nx
Definition: glext.h:8898
GLint GLint GLsizei GLsizei height
Definition: gl.h:1546
IDirect3DRMMeshBuilder * mesh_builder
Definition: d3drm.c:2770
Definition: d3drm.c:191
int(__cdecl * D3DRMUSERVISUALCALLBACK)(struct IDirect3DRMUserVisual *visual, void *ctx, D3DRMUSERVISUALREASON reason, struct IDirect3DRMDevice *device, struct IDirect3DRMViewport *viewport)
Definition: d3drmobj.h:163
float power
Definition: d3drm.c:2812
GLsizei GLsizei GLchar * source
Definition: glext.h:6048
#define PURE
Definition: basetyps.h:64
DWORD D3DRMLOADOPTIONS
Definition: d3drmdef.h:339
static ULONG WINAPI AddRef(IStream *iface)
Definition: clist.c:90
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548
GLint dx
Definition: linetemp.h:97
GLfloat ny
Definition: glext.h:8896
unsigned int ULONG
Definition: retypes.h:1
GLenum GLuint id
Definition: glext.h:5579
#define wrap(journal, var)
Definition: recovery.c:207
enum _D3DRMWRAPTYPE D3DRMWRAPTYPE
HRESULT(__cdecl * D3DRMLOADTEXTURECALLBACK)(char *tex_name, void *arg, struct IDirect3DRMTexture **texture)
Definition: d3drmobj.h:165
#define STDMETHOD_(t, m)
Definition: basetyps.h:63
struct IDirect3DRM2 ** LPLPDIRECT3DRM2
Definition: d3drm.h:41
void * object
Definition: jmemsys.h:48
enum _D3DRMLIGHTTYPE D3DRMLIGHTTYPE
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint GLint GLint GLenum GLenum GLenum GLint GLuint GLenum GLenum GLfloat GLenum GLfloat GLenum GLint const GLfloat GLenum GLint const GLushort GLint GLint GLsizei GLsizei GLenum GLsizei GLsizei GLenum GLenum const GLvoid GLenum GLdouble GLenum GLint GLenum GLenum GLint GLenum GLenum GLfloat GLenum GLenum GLfloat GLenum GLfloat GLenum GLushort const GLubyte GLenum GLenum GLenum GLint GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLvoid GLenum GLenum GLint GLenum GLint GLenum GLint GLuint GLdouble GLdouble GLdouble GLdouble GLdouble GLdouble const GLfloat GLenum const GLdouble GLdouble GLdouble GLdouble GLdouble GLdouble GLdouble GLdouble GLdouble GLdouble GLdouble GLint GLint GLsizei GLsizei GLenum GLuint GLenum array
Definition: glfuncs.h:320
GLuint const GLchar * name
Definition: glext.h:6031