annotate lib/legacy_dx/d3drm.h @ 1905:4cae2d58cfb4

Слияние
author Ritor1
date Mon, 21 Oct 2013 17:24:10 +0600
parents 9c0607679772
children
rev   line source
0
Ritor1
parents:
diff changeset
1 /*==========================================================================;
Ritor1
parents:
diff changeset
2 *
Ritor1
parents:
diff changeset
3 * Copyright (c) Microsoft Corporation. All rights reserved.
Ritor1
parents:
diff changeset
4 *
Ritor1
parents:
diff changeset
5 * File: d3drm.h
Ritor1
parents:
diff changeset
6 * Content: Direct3DRM include file
Ritor1
parents:
diff changeset
7 *
Ritor1
parents:
diff changeset
8 ***************************************************************************/
Ritor1
parents:
diff changeset
9
Ritor1
parents:
diff changeset
10 #ifndef __D3DRM_H__
Ritor1
parents:
diff changeset
11 #define __D3DRM_H__
Ritor1
parents:
diff changeset
12
Ritor1
parents:
diff changeset
13 #include "ddraw.h"
Ritor1
parents:
diff changeset
14
Ritor1
parents:
diff changeset
15 #ifdef __cplusplus
Ritor1
parents:
diff changeset
16 struct IDirect3DRM;
Ritor1
parents:
diff changeset
17 #endif
Ritor1
parents:
diff changeset
18
Ritor1
parents:
diff changeset
19 typedef struct IDirect3DRM *LPDIRECT3DRM;
Ritor1
parents:
diff changeset
20
Ritor1
parents:
diff changeset
21 #include "d3drmobj.h"
Ritor1
parents:
diff changeset
22
Ritor1
parents:
diff changeset
23 #ifdef __cplusplus
Ritor1
parents:
diff changeset
24 extern "C" {
Ritor1
parents:
diff changeset
25 #endif
Ritor1
parents:
diff changeset
26
Ritor1
parents:
diff changeset
27
Ritor1
parents:
diff changeset
28 DEFINE_GUID(IID_IDirect3DRM, 0x2bc49361, 0x8327, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
Ritor1
parents:
diff changeset
29 DEFINE_GUID(IID_IDirect3DRM2, 0x4516ecc8, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3);
Ritor1
parents:
diff changeset
30 DEFINE_GUID(IID_IDirect3DRM3, 0x4516ec83, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3);
Ritor1
parents:
diff changeset
31 WIN_TYPES(IDirect3DRM, DIRECT3DRM);
Ritor1
parents:
diff changeset
32 WIN_TYPES(IDirect3DRM2, DIRECT3DRM2);
Ritor1
parents:
diff changeset
33 WIN_TYPES(IDirect3DRM3, DIRECT3DRM3);
Ritor1
parents:
diff changeset
34
Ritor1
parents:
diff changeset
35 /*
Ritor1
parents:
diff changeset
36 * Direct3DRM Object Class (for CoCreateInstance())
Ritor1
parents:
diff changeset
37 */
Ritor1
parents:
diff changeset
38 DEFINE_GUID(CLSID_CDirect3DRM, 0x4516ec41, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3);
Ritor1
parents:
diff changeset
39
Ritor1
parents:
diff changeset
40
Ritor1
parents:
diff changeset
41 /* Create a Direct3DRM API */
Ritor1
parents:
diff changeset
42 STDAPI Direct3DRMCreate(LPDIRECT3DRM FAR *lplpDirect3DRM);
Ritor1
parents:
diff changeset
43
Ritor1
parents:
diff changeset
44 #undef INTERFACE
Ritor1
parents:
diff changeset
45 #define INTERFACE IDirect3DRM
Ritor1
parents:
diff changeset
46
Ritor1
parents:
diff changeset
47 DECLARE_INTERFACE_(IDirect3DRM, IUnknown)
Ritor1
parents:
diff changeset
48 {
Ritor1
parents:
diff changeset
49 IUNKNOWN_METHODS(PURE);
Ritor1
parents:
diff changeset
50
Ritor1
parents:
diff changeset
51 STDMETHOD(CreateObject)
Ritor1
parents:
diff changeset
52 (THIS_ REFCLSID rclsid, LPUNKNOWN pUnkOuter, REFIID riid, LPVOID FAR* ppv) PURE;
Ritor1
parents:
diff changeset
53 STDMETHOD(CreateFrame) (THIS_ LPDIRECT3DRMFRAME, LPDIRECT3DRMFRAME *) PURE;
Ritor1
parents:
diff changeset
54 STDMETHOD(CreateMesh) (THIS_ LPDIRECT3DRMMESH *) PURE;
Ritor1
parents:
diff changeset
55 STDMETHOD(CreateMeshBuilder)(THIS_ LPDIRECT3DRMMESHBUILDER *) PURE;
Ritor1
parents:
diff changeset
56 STDMETHOD(CreateFace) (THIS_ LPDIRECT3DRMFACE *) PURE;
Ritor1
parents:
diff changeset
57 STDMETHOD(CreateAnimation) (THIS_ LPDIRECT3DRMANIMATION *) PURE;
Ritor1
parents:
diff changeset
58 STDMETHOD(CreateAnimationSet)(THIS_ LPDIRECT3DRMANIMATIONSET *) PURE;
Ritor1
parents:
diff changeset
59 STDMETHOD(CreateTexture) (THIS_ LPD3DRMIMAGE, LPDIRECT3DRMTEXTURE *) PURE;
Ritor1
parents:
diff changeset
60 STDMETHOD(CreateLight) (THIS_ D3DRMLIGHTTYPE, D3DCOLOR, LPDIRECT3DRMLIGHT *) PURE;
Ritor1
parents:
diff changeset
61 STDMETHOD(CreateLightRGB)
Ritor1
parents:
diff changeset
62 (THIS_ D3DRMLIGHTTYPE, D3DVALUE, D3DVALUE, D3DVALUE, LPDIRECT3DRMLIGHT *) PURE;
Ritor1
parents:
diff changeset
63 STDMETHOD(CreateMaterial) (THIS_ D3DVALUE, LPDIRECT3DRMMATERIAL *) PURE;
Ritor1
parents:
diff changeset
64 STDMETHOD(CreateDevice) (THIS_ DWORD, DWORD, LPDIRECT3DRMDEVICE *) PURE;
Ritor1
parents:
diff changeset
65
Ritor1
parents:
diff changeset
66 /* Create a Windows Device using DirectDraw surfaces */
Ritor1
parents:
diff changeset
67 STDMETHOD(CreateDeviceFromSurface)
Ritor1
parents:
diff changeset
68 ( THIS_ LPGUID lpGUID, LPDIRECTDRAW lpDD,
Ritor1
parents:
diff changeset
69 LPDIRECTDRAWSURFACE lpDDSBack, LPDIRECT3DRMDEVICE *
Ritor1
parents:
diff changeset
70 ) PURE;
Ritor1
parents:
diff changeset
71
Ritor1
parents:
diff changeset
72 /* Create a Windows Device using D3D objects */
Ritor1
parents:
diff changeset
73 STDMETHOD(CreateDeviceFromD3D)
Ritor1
parents:
diff changeset
74 ( THIS_ LPDIRECT3D lpD3D, LPDIRECT3DDEVICE lpD3DDev,
Ritor1
parents:
diff changeset
75 LPDIRECT3DRMDEVICE *
Ritor1
parents:
diff changeset
76 ) PURE;
Ritor1
parents:
diff changeset
77
Ritor1
parents:
diff changeset
78 STDMETHOD(CreateDeviceFromClipper)
Ritor1
parents:
diff changeset
79 ( THIS_ LPDIRECTDRAWCLIPPER lpDDClipper, LPGUID lpGUID,
Ritor1
parents:
diff changeset
80 int width, int height, LPDIRECT3DRMDEVICE *) PURE;
Ritor1
parents:
diff changeset
81
Ritor1
parents:
diff changeset
82 STDMETHOD(CreateTextureFromSurface)(THIS_ LPDIRECTDRAWSURFACE lpDDS, LPDIRECT3DRMTEXTURE *) PURE;
Ritor1
parents:
diff changeset
83
Ritor1
parents:
diff changeset
84 STDMETHOD(CreateShadow)
Ritor1
parents:
diff changeset
85 ( THIS_ LPDIRECT3DRMVISUAL, LPDIRECT3DRMLIGHT,
Ritor1
parents:
diff changeset
86 D3DVALUE px, D3DVALUE py, D3DVALUE pz,
Ritor1
parents:
diff changeset
87 D3DVALUE nx, D3DVALUE ny, D3DVALUE nz,
Ritor1
parents:
diff changeset
88 LPDIRECT3DRMVISUAL *
Ritor1
parents:
diff changeset
89 ) PURE;
Ritor1
parents:
diff changeset
90 STDMETHOD(CreateViewport)
Ritor1
parents:
diff changeset
91 ( THIS_ LPDIRECT3DRMDEVICE, LPDIRECT3DRMFRAME, DWORD, DWORD,
Ritor1
parents:
diff changeset
92 DWORD, DWORD, LPDIRECT3DRMVIEWPORT *
Ritor1
parents:
diff changeset
93 ) PURE;
Ritor1
parents:
diff changeset
94 STDMETHOD(CreateWrap)
Ritor1
parents:
diff changeset
95 ( THIS_ D3DRMWRAPTYPE, LPDIRECT3DRMFRAME,
Ritor1
parents:
diff changeset
96 D3DVALUE ox, D3DVALUE oy, D3DVALUE oz,
Ritor1
parents:
diff changeset
97 D3DVALUE dx, D3DVALUE dy, D3DVALUE dz,
Ritor1
parents:
diff changeset
98 D3DVALUE ux, D3DVALUE uy, D3DVALUE uz,
Ritor1
parents:
diff changeset
99 D3DVALUE ou, D3DVALUE ov,
Ritor1
parents:
diff changeset
100 D3DVALUE su, D3DVALUE sv,
Ritor1
parents:
diff changeset
101 LPDIRECT3DRMWRAP *
Ritor1
parents:
diff changeset
102 ) PURE;
Ritor1
parents:
diff changeset
103 STDMETHOD(CreateUserVisual) (THIS_ D3DRMUSERVISUALCALLBACK, LPVOID lPArg, LPDIRECT3DRMUSERVISUAL *) PURE;
Ritor1
parents:
diff changeset
104 STDMETHOD(LoadTexture) (THIS_ const char *, LPDIRECT3DRMTEXTURE *) PURE;
Ritor1
parents:
diff changeset
105 STDMETHOD(LoadTextureFromResource) (THIS_ HRSRC rs, LPDIRECT3DRMTEXTURE *) PURE;
Ritor1
parents:
diff changeset
106
Ritor1
parents:
diff changeset
107 STDMETHOD(SetSearchPath) (THIS_ LPCSTR) PURE;
Ritor1
parents:
diff changeset
108 STDMETHOD(AddSearchPath) (THIS_ LPCSTR) PURE;
Ritor1
parents:
diff changeset
109 STDMETHOD(GetSearchPath) (THIS_ DWORD *size_return, LPSTR path_return) PURE;
Ritor1
parents:
diff changeset
110 STDMETHOD(SetDefaultTextureColors)(THIS_ DWORD) PURE;
Ritor1
parents:
diff changeset
111 STDMETHOD(SetDefaultTextureShades)(THIS_ DWORD) PURE;
Ritor1
parents:
diff changeset
112
Ritor1
parents:
diff changeset
113 STDMETHOD(GetDevices) (THIS_ LPDIRECT3DRMDEVICEARRAY *) PURE;
Ritor1
parents:
diff changeset
114 STDMETHOD(GetNamedObject) (THIS_ const char *, LPDIRECT3DRMOBJECT *) PURE;
Ritor1
parents:
diff changeset
115
Ritor1
parents:
diff changeset
116 STDMETHOD(EnumerateObjects) (THIS_ D3DRMOBJECTCALLBACK, LPVOID) PURE;
Ritor1
parents:
diff changeset
117
Ritor1
parents:
diff changeset
118 STDMETHOD(Load)
Ritor1
parents:
diff changeset
119 ( THIS_ LPVOID, LPVOID, LPIID *, DWORD, D3DRMLOADOPTIONS,
Ritor1
parents:
diff changeset
120 D3DRMLOADCALLBACK, LPVOID, D3DRMLOADTEXTURECALLBACK, LPVOID,
Ritor1
parents:
diff changeset
121 LPDIRECT3DRMFRAME
Ritor1
parents:
diff changeset
122 ) PURE;
Ritor1
parents:
diff changeset
123 STDMETHOD(Tick) (THIS_ D3DVALUE) PURE;
Ritor1
parents:
diff changeset
124 };
Ritor1
parents:
diff changeset
125
Ritor1
parents:
diff changeset
126 #undef INTERFACE
Ritor1
parents:
diff changeset
127 #define INTERFACE IDirect3DRM2
Ritor1
parents:
diff changeset
128
Ritor1
parents:
diff changeset
129 DECLARE_INTERFACE_(IDirect3DRM2, IUnknown)
Ritor1
parents:
diff changeset
130 {
Ritor1
parents:
diff changeset
131 IUNKNOWN_METHODS(PURE);
Ritor1
parents:
diff changeset
132
Ritor1
parents:
diff changeset
133 STDMETHOD(CreateObject)
Ritor1
parents:
diff changeset
134 (THIS_ REFCLSID rclsid, LPUNKNOWN pUnkOuter, REFIID riid, LPVOID FAR* ppv) PURE;
Ritor1
parents:
diff changeset
135 STDMETHOD(CreateFrame) (THIS_ LPDIRECT3DRMFRAME, LPDIRECT3DRMFRAME2 *) PURE;
Ritor1
parents:
diff changeset
136 STDMETHOD(CreateMesh) (THIS_ LPDIRECT3DRMMESH *) PURE;
Ritor1
parents:
diff changeset
137 STDMETHOD(CreateMeshBuilder)(THIS_ LPDIRECT3DRMMESHBUILDER2 *) PURE;
Ritor1
parents:
diff changeset
138 STDMETHOD(CreateFace) (THIS_ LPDIRECT3DRMFACE *) PURE;
Ritor1
parents:
diff changeset
139 STDMETHOD(CreateAnimation) (THIS_ LPDIRECT3DRMANIMATION *) PURE;
Ritor1
parents:
diff changeset
140 STDMETHOD(CreateAnimationSet)(THIS_ LPDIRECT3DRMANIMATIONSET *) PURE;
Ritor1
parents:
diff changeset
141 STDMETHOD(CreateTexture) (THIS_ LPD3DRMIMAGE, LPDIRECT3DRMTEXTURE2 *) PURE;
Ritor1
parents:
diff changeset
142 STDMETHOD(CreateLight) (THIS_ D3DRMLIGHTTYPE, D3DCOLOR, LPDIRECT3DRMLIGHT *) PURE;
Ritor1
parents:
diff changeset
143 STDMETHOD(CreateLightRGB)
Ritor1
parents:
diff changeset
144 (THIS_ D3DRMLIGHTTYPE, D3DVALUE, D3DVALUE, D3DVALUE, LPDIRECT3DRMLIGHT *) PURE;
Ritor1
parents:
diff changeset
145 STDMETHOD(CreateMaterial) (THIS_ D3DVALUE, LPDIRECT3DRMMATERIAL *) PURE;
Ritor1
parents:
diff changeset
146 STDMETHOD(CreateDevice) (THIS_ DWORD, DWORD, LPDIRECT3DRMDEVICE2 *) PURE;
Ritor1
parents:
diff changeset
147
Ritor1
parents:
diff changeset
148 /* Create a Windows Device using DirectDraw surfaces */
Ritor1
parents:
diff changeset
149 STDMETHOD(CreateDeviceFromSurface)
Ritor1
parents:
diff changeset
150 ( THIS_ LPGUID lpGUID, LPDIRECTDRAW lpDD,
Ritor1
parents:
diff changeset
151 LPDIRECTDRAWSURFACE lpDDSBack, LPDIRECT3DRMDEVICE2 *
Ritor1
parents:
diff changeset
152 ) PURE;
Ritor1
parents:
diff changeset
153
Ritor1
parents:
diff changeset
154 /* Create a Windows Device using D3D objects */
Ritor1
parents:
diff changeset
155 STDMETHOD(CreateDeviceFromD3D)
Ritor1
parents:
diff changeset
156 ( THIS_ LPDIRECT3D2 lpD3D, LPDIRECT3DDEVICE2 lpD3DDev,
Ritor1
parents:
diff changeset
157 LPDIRECT3DRMDEVICE2 *
Ritor1
parents:
diff changeset
158 ) PURE;
Ritor1
parents:
diff changeset
159
Ritor1
parents:
diff changeset
160 STDMETHOD(CreateDeviceFromClipper)
Ritor1
parents:
diff changeset
161 ( THIS_ LPDIRECTDRAWCLIPPER lpDDClipper, LPGUID lpGUID,
Ritor1
parents:
diff changeset
162 int width, int height, LPDIRECT3DRMDEVICE2 *) PURE;
Ritor1
parents:
diff changeset
163
Ritor1
parents:
diff changeset
164 STDMETHOD(CreateTextureFromSurface)(THIS_ LPDIRECTDRAWSURFACE lpDDS, LPDIRECT3DRMTEXTURE2 *) PURE;
Ritor1
parents:
diff changeset
165
Ritor1
parents:
diff changeset
166 STDMETHOD(CreateShadow)
Ritor1
parents:
diff changeset
167 ( THIS_ LPDIRECT3DRMVISUAL, LPDIRECT3DRMLIGHT,
Ritor1
parents:
diff changeset
168 D3DVALUE px, D3DVALUE py, D3DVALUE pz,
Ritor1
parents:
diff changeset
169 D3DVALUE nx, D3DVALUE ny, D3DVALUE nz,
Ritor1
parents:
diff changeset
170 LPDIRECT3DRMVISUAL *
Ritor1
parents:
diff changeset
171 ) PURE;
Ritor1
parents:
diff changeset
172 STDMETHOD(CreateViewport)
Ritor1
parents:
diff changeset
173 ( THIS_ LPDIRECT3DRMDEVICE, LPDIRECT3DRMFRAME, DWORD, DWORD,
Ritor1
parents:
diff changeset
174 DWORD, DWORD, LPDIRECT3DRMVIEWPORT *
Ritor1
parents:
diff changeset
175 ) PURE;
Ritor1
parents:
diff changeset
176 STDMETHOD(CreateWrap)
Ritor1
parents:
diff changeset
177 ( THIS_ D3DRMWRAPTYPE, LPDIRECT3DRMFRAME,
Ritor1
parents:
diff changeset
178 D3DVALUE ox, D3DVALUE oy, D3DVALUE oz,
Ritor1
parents:
diff changeset
179 D3DVALUE dx, D3DVALUE dy, D3DVALUE dz,
Ritor1
parents:
diff changeset
180 D3DVALUE ux, D3DVALUE uy, D3DVALUE uz,
Ritor1
parents:
diff changeset
181 D3DVALUE ou, D3DVALUE ov,
Ritor1
parents:
diff changeset
182 D3DVALUE su, D3DVALUE sv,
Ritor1
parents:
diff changeset
183 LPDIRECT3DRMWRAP *
Ritor1
parents:
diff changeset
184 ) PURE;
Ritor1
parents:
diff changeset
185 STDMETHOD(CreateUserVisual) (THIS_ D3DRMUSERVISUALCALLBACK, LPVOID lPArg, LPDIRECT3DRMUSERVISUAL *) PURE;
Ritor1
parents:
diff changeset
186 STDMETHOD(LoadTexture) (THIS_ const char *, LPDIRECT3DRMTEXTURE2 *) PURE;
Ritor1
parents:
diff changeset
187 STDMETHOD(LoadTextureFromResource) (THIS_ HMODULE hModule, LPCTSTR strName, LPCTSTR strType, LPDIRECT3DRMTEXTURE2 *) PURE;
Ritor1
parents:
diff changeset
188
Ritor1
parents:
diff changeset
189 STDMETHOD(SetSearchPath) (THIS_ LPCSTR) PURE;
Ritor1
parents:
diff changeset
190 STDMETHOD(AddSearchPath) (THIS_ LPCSTR) PURE;
Ritor1
parents:
diff changeset
191 STDMETHOD(GetSearchPath) (THIS_ DWORD *size_return, LPSTR path_return) PURE;
Ritor1
parents:
diff changeset
192 STDMETHOD(SetDefaultTextureColors)(THIS_ DWORD) PURE;
Ritor1
parents:
diff changeset
193 STDMETHOD(SetDefaultTextureShades)(THIS_ DWORD) PURE;
Ritor1
parents:
diff changeset
194
Ritor1
parents:
diff changeset
195 STDMETHOD(GetDevices) (THIS_ LPDIRECT3DRMDEVICEARRAY *) PURE;
Ritor1
parents:
diff changeset
196 STDMETHOD(GetNamedObject) (THIS_ const char *, LPDIRECT3DRMOBJECT *) PURE;
Ritor1
parents:
diff changeset
197
Ritor1
parents:
diff changeset
198 STDMETHOD(EnumerateObjects) (THIS_ D3DRMOBJECTCALLBACK, LPVOID) PURE;
Ritor1
parents:
diff changeset
199
Ritor1
parents:
diff changeset
200 STDMETHOD(Load)
Ritor1
parents:
diff changeset
201 ( THIS_ LPVOID, LPVOID, LPIID *, DWORD, D3DRMLOADOPTIONS,
Ritor1
parents:
diff changeset
202 D3DRMLOADCALLBACK, LPVOID, D3DRMLOADTEXTURECALLBACK, LPVOID,
Ritor1
parents:
diff changeset
203 LPDIRECT3DRMFRAME
Ritor1
parents:
diff changeset
204 ) PURE;
Ritor1
parents:
diff changeset
205 STDMETHOD(Tick) (THIS_ D3DVALUE) PURE;
Ritor1
parents:
diff changeset
206
Ritor1
parents:
diff changeset
207 STDMETHOD(CreateProgressiveMesh)(THIS_ LPDIRECT3DRMPROGRESSIVEMESH *) PURE;
Ritor1
parents:
diff changeset
208 };
Ritor1
parents:
diff changeset
209
Ritor1
parents:
diff changeset
210 #undef INTERFACE
Ritor1
parents:
diff changeset
211 #define INTERFACE IDirect3DRM3
Ritor1
parents:
diff changeset
212
Ritor1
parents:
diff changeset
213 DECLARE_INTERFACE_(IDirect3DRM3, IUnknown)
Ritor1
parents:
diff changeset
214 {
Ritor1
parents:
diff changeset
215 IUNKNOWN_METHODS(PURE);
Ritor1
parents:
diff changeset
216
Ritor1
parents:
diff changeset
217 STDMETHOD(CreateObject)
Ritor1
parents:
diff changeset
218 (THIS_ REFCLSID rclsid, LPUNKNOWN pUnkOuter, REFIID riid, LPVOID FAR* ppv) PURE;
Ritor1
parents:
diff changeset
219 STDMETHOD(CreateFrame) (THIS_ LPDIRECT3DRMFRAME3, LPDIRECT3DRMFRAME3 *) PURE;
Ritor1
parents:
diff changeset
220 STDMETHOD(CreateMesh) (THIS_ LPDIRECT3DRMMESH *) PURE;
Ritor1
parents:
diff changeset
221 STDMETHOD(CreateMeshBuilder)(THIS_ LPDIRECT3DRMMESHBUILDER3 *) PURE;
Ritor1
parents:
diff changeset
222 STDMETHOD(CreateFace) (THIS_ LPDIRECT3DRMFACE2 *) PURE;
Ritor1
parents:
diff changeset
223 STDMETHOD(CreateAnimation) (THIS_ LPDIRECT3DRMANIMATION2 *) PURE;
Ritor1
parents:
diff changeset
224 STDMETHOD(CreateAnimationSet)(THIS_ LPDIRECT3DRMANIMATIONSET2 *) PURE;
Ritor1
parents:
diff changeset
225 STDMETHOD(CreateTexture) (THIS_ LPD3DRMIMAGE, LPDIRECT3DRMTEXTURE3 *) PURE;
Ritor1
parents:
diff changeset
226 STDMETHOD(CreateLight) (THIS_ D3DRMLIGHTTYPE, D3DCOLOR, LPDIRECT3DRMLIGHT *) PURE;
Ritor1
parents:
diff changeset
227 STDMETHOD(CreateLightRGB)
Ritor1
parents:
diff changeset
228 (THIS_ D3DRMLIGHTTYPE, D3DVALUE, D3DVALUE, D3DVALUE, LPDIRECT3DRMLIGHT *) PURE;
Ritor1
parents:
diff changeset
229 STDMETHOD(CreateMaterial) (THIS_ D3DVALUE, LPDIRECT3DRMMATERIAL2 *) PURE;
Ritor1
parents:
diff changeset
230 STDMETHOD(CreateDevice) (THIS_ DWORD, DWORD, LPDIRECT3DRMDEVICE3 *) PURE;
Ritor1
parents:
diff changeset
231
Ritor1
parents:
diff changeset
232 /* Create a Windows Device using DirectDraw surfaces */
Ritor1
parents:
diff changeset
233 STDMETHOD(CreateDeviceFromSurface)
Ritor1
parents:
diff changeset
234 ( THIS_ LPGUID lpGUID, LPDIRECTDRAW lpDD,
Ritor1
parents:
diff changeset
235 LPDIRECTDRAWSURFACE lpDDSBack, DWORD dwFlags, LPDIRECT3DRMDEVICE3 *
Ritor1
parents:
diff changeset
236 ) PURE;
Ritor1
parents:
diff changeset
237
Ritor1
parents:
diff changeset
238 /* Create a Windows Device using D3D objects */
Ritor1
parents:
diff changeset
239 STDMETHOD(CreateDeviceFromD3D)
Ritor1
parents:
diff changeset
240 ( THIS_ LPDIRECT3D2 lpD3D, LPDIRECT3DDEVICE2 lpD3DDev,
Ritor1
parents:
diff changeset
241 LPDIRECT3DRMDEVICE3 *
Ritor1
parents:
diff changeset
242 ) PURE;
Ritor1
parents:
diff changeset
243
Ritor1
parents:
diff changeset
244 STDMETHOD(CreateDeviceFromClipper)
Ritor1
parents:
diff changeset
245 ( THIS_ LPDIRECTDRAWCLIPPER lpDDClipper, LPGUID lpGUID,
Ritor1
parents:
diff changeset
246 int width, int height, LPDIRECT3DRMDEVICE3 *) PURE;
Ritor1
parents:
diff changeset
247
Ritor1
parents:
diff changeset
248 STDMETHOD(CreateTextureFromSurface)(THIS_ LPDIRECTDRAWSURFACE lpDDS, LPDIRECT3DRMTEXTURE3 *) PURE;
Ritor1
parents:
diff changeset
249
Ritor1
parents:
diff changeset
250 STDMETHOD(CreateShadow)
Ritor1
parents:
diff changeset
251 ( THIS_ LPUNKNOWN, LPDIRECT3DRMLIGHT,
Ritor1
parents:
diff changeset
252 D3DVALUE px, D3DVALUE py, D3DVALUE pz,
Ritor1
parents:
diff changeset
253 D3DVALUE nx, D3DVALUE ny, D3DVALUE nz,
Ritor1
parents:
diff changeset
254 LPDIRECT3DRMSHADOW2 *
Ritor1
parents:
diff changeset
255 ) PURE;
Ritor1
parents:
diff changeset
256 STDMETHOD(CreateViewport)
Ritor1
parents:
diff changeset
257 ( THIS_ LPDIRECT3DRMDEVICE3, LPDIRECT3DRMFRAME3, DWORD, DWORD,
Ritor1
parents:
diff changeset
258 DWORD, DWORD, LPDIRECT3DRMVIEWPORT2 *
Ritor1
parents:
diff changeset
259 ) PURE;
Ritor1
parents:
diff changeset
260 STDMETHOD(CreateWrap)
Ritor1
parents:
diff changeset
261 ( THIS_ D3DRMWRAPTYPE, LPDIRECT3DRMFRAME3,
Ritor1
parents:
diff changeset
262 D3DVALUE ox, D3DVALUE oy, D3DVALUE oz,
Ritor1
parents:
diff changeset
263 D3DVALUE dx, D3DVALUE dy, D3DVALUE dz,
Ritor1
parents:
diff changeset
264 D3DVALUE ux, D3DVALUE uy, D3DVALUE uz,
Ritor1
parents:
diff changeset
265 D3DVALUE ou, D3DVALUE ov,
Ritor1
parents:
diff changeset
266 D3DVALUE su, D3DVALUE sv,
Ritor1
parents:
diff changeset
267 LPDIRECT3DRMWRAP *
Ritor1
parents:
diff changeset
268 ) PURE;
Ritor1
parents:
diff changeset
269 STDMETHOD(CreateUserVisual) (THIS_ D3DRMUSERVISUALCALLBACK, LPVOID lPArg, LPDIRECT3DRMUSERVISUAL *) PURE;
Ritor1
parents:
diff changeset
270 STDMETHOD(LoadTexture) (THIS_ const char *, LPDIRECT3DRMTEXTURE3 *) PURE;
Ritor1
parents:
diff changeset
271 STDMETHOD(LoadTextureFromResource) (THIS_ HMODULE hModule, LPCTSTR strName, LPCTSTR strType, LPDIRECT3DRMTEXTURE3 *) PURE;
Ritor1
parents:
diff changeset
272
Ritor1
parents:
diff changeset
273 STDMETHOD(SetSearchPath) (THIS_ LPCSTR) PURE;
Ritor1
parents:
diff changeset
274 STDMETHOD(AddSearchPath) (THIS_ LPCSTR) PURE;
Ritor1
parents:
diff changeset
275 STDMETHOD(GetSearchPath) (THIS_ DWORD *size_return, LPSTR path_return) PURE;
Ritor1
parents:
diff changeset
276 STDMETHOD(SetDefaultTextureColors)(THIS_ DWORD) PURE;
Ritor1
parents:
diff changeset
277 STDMETHOD(SetDefaultTextureShades)(THIS_ DWORD) PURE;
Ritor1
parents:
diff changeset
278
Ritor1
parents:
diff changeset
279 STDMETHOD(GetDevices) (THIS_ LPDIRECT3DRMDEVICEARRAY *) PURE;
Ritor1
parents:
diff changeset
280 STDMETHOD(GetNamedObject) (THIS_ const char *, LPDIRECT3DRMOBJECT *) PURE;
Ritor1
parents:
diff changeset
281
Ritor1
parents:
diff changeset
282 STDMETHOD(EnumerateObjects) (THIS_ D3DRMOBJECTCALLBACK, LPVOID) PURE;
Ritor1
parents:
diff changeset
283
Ritor1
parents:
diff changeset
284 STDMETHOD(Load)
Ritor1
parents:
diff changeset
285 ( THIS_ LPVOID, LPVOID, LPIID *, DWORD, D3DRMLOADOPTIONS,
Ritor1
parents:
diff changeset
286 D3DRMLOADCALLBACK, LPVOID, D3DRMLOADTEXTURE3CALLBACK, LPVOID,
Ritor1
parents:
diff changeset
287 LPDIRECT3DRMFRAME3
Ritor1
parents:
diff changeset
288 ) PURE;
Ritor1
parents:
diff changeset
289 STDMETHOD(Tick) (THIS_ D3DVALUE) PURE;
Ritor1
parents:
diff changeset
290
Ritor1
parents:
diff changeset
291 STDMETHOD(CreateProgressiveMesh)(THIS_ LPDIRECT3DRMPROGRESSIVEMESH *) PURE;
Ritor1
parents:
diff changeset
292
Ritor1
parents:
diff changeset
293 /* Used with IDirect3DRMObject2 */
Ritor1
parents:
diff changeset
294 STDMETHOD(RegisterClient) (THIS_ REFGUID rguid, LPDWORD lpdwID) PURE;
Ritor1
parents:
diff changeset
295 STDMETHOD(UnregisterClient) (THIS_ REFGUID rguid) PURE;
Ritor1
parents:
diff changeset
296
Ritor1
parents:
diff changeset
297 STDMETHOD(CreateClippedVisual) (THIS_ LPDIRECT3DRMVISUAL, LPDIRECT3DRMCLIPPEDVISUAL *) PURE;
Ritor1
parents:
diff changeset
298 STDMETHOD(SetOptions) (THIS_ DWORD);
Ritor1
parents:
diff changeset
299 STDMETHOD(GetOptions) (THIS_ LPDWORD);
Ritor1
parents:
diff changeset
300 };
Ritor1
parents:
diff changeset
301
Ritor1
parents:
diff changeset
302 #define D3DRM_OK DD_OK
Ritor1
parents:
diff changeset
303 #define D3DRMERR_BADOBJECT MAKE_DDHRESULT(781)
Ritor1
parents:
diff changeset
304 #define D3DRMERR_BADTYPE MAKE_DDHRESULT(782)
Ritor1
parents:
diff changeset
305 #define D3DRMERR_BADALLOC MAKE_DDHRESULT(783)
Ritor1
parents:
diff changeset
306 #define D3DRMERR_FACEUSED MAKE_DDHRESULT(784)
Ritor1
parents:
diff changeset
307 #define D3DRMERR_NOTFOUND MAKE_DDHRESULT(785)
Ritor1
parents:
diff changeset
308 #define D3DRMERR_NOTDONEYET MAKE_DDHRESULT(786)
Ritor1
parents:
diff changeset
309 #define D3DRMERR_FILENOTFOUND MAKE_DDHRESULT(787)
Ritor1
parents:
diff changeset
310 #define D3DRMERR_BADFILE MAKE_DDHRESULT(788)
Ritor1
parents:
diff changeset
311 #define D3DRMERR_BADDEVICE MAKE_DDHRESULT(789)
Ritor1
parents:
diff changeset
312 #define D3DRMERR_BADVALUE MAKE_DDHRESULT(790)
Ritor1
parents:
diff changeset
313 #define D3DRMERR_BADMAJORVERSION MAKE_DDHRESULT(791)
Ritor1
parents:
diff changeset
314 #define D3DRMERR_BADMINORVERSION MAKE_DDHRESULT(792)
Ritor1
parents:
diff changeset
315 #define D3DRMERR_UNABLETOEXECUTE MAKE_DDHRESULT(793)
Ritor1
parents:
diff changeset
316 #define D3DRMERR_LIBRARYNOTFOUND MAKE_DDHRESULT(794)
Ritor1
parents:
diff changeset
317 #define D3DRMERR_INVALIDLIBRARY MAKE_DDHRESULT(795)
Ritor1
parents:
diff changeset
318 #define D3DRMERR_PENDING MAKE_DDHRESULT(796)
Ritor1
parents:
diff changeset
319 #define D3DRMERR_NOTENOUGHDATA MAKE_DDHRESULT(797)
Ritor1
parents:
diff changeset
320 #define D3DRMERR_REQUESTTOOLARGE MAKE_DDHRESULT(798)
Ritor1
parents:
diff changeset
321 #define D3DRMERR_REQUESTTOOSMALL MAKE_DDHRESULT(799)
Ritor1
parents:
diff changeset
322 #define D3DRMERR_CONNECTIONLOST MAKE_DDHRESULT(800)
Ritor1
parents:
diff changeset
323 #define D3DRMERR_LOADABORTED MAKE_DDHRESULT(801)
Ritor1
parents:
diff changeset
324 #define D3DRMERR_NOINTERNET MAKE_DDHRESULT(802)
Ritor1
parents:
diff changeset
325 #define D3DRMERR_BADCACHEFILE MAKE_DDHRESULT(803)
Ritor1
parents:
diff changeset
326 #define D3DRMERR_BOXNOTSET MAKE_DDHRESULT(804)
Ritor1
parents:
diff changeset
327 #define D3DRMERR_BADPMDATA MAKE_DDHRESULT(805)
Ritor1
parents:
diff changeset
328 #define D3DRMERR_CLIENTNOTREGISTERED MAKE_DDHRESULT(806)
Ritor1
parents:
diff changeset
329 #define D3DRMERR_NOTCREATEDFROMDDS MAKE_DDHRESULT(807)
Ritor1
parents:
diff changeset
330 #define D3DRMERR_NOSUCHKEY MAKE_DDHRESULT(808)
Ritor1
parents:
diff changeset
331 #define D3DRMERR_INCOMPATABLEKEY MAKE_DDHRESULT(809)
Ritor1
parents:
diff changeset
332 #define D3DRMERR_ELEMENTINUSE MAKE_DDHRESULT(810)
Ritor1
parents:
diff changeset
333 #define D3DRMERR_TEXTUREFORMATNOTFOUND MAKE_DDHRESULT(811)
Ritor1
parents:
diff changeset
334 #define D3DRMERR_NOTAGGREGATED MAKE_DDHRESULT(812)
Ritor1
parents:
diff changeset
335
Ritor1
parents:
diff changeset
336 #ifdef __cplusplus
Ritor1
parents:
diff changeset
337 };
Ritor1
parents:
diff changeset
338 #endif
Ritor1
parents:
diff changeset
339
Ritor1
parents:
diff changeset
340 #endif /* _D3DRMAPI_H_ */
Ritor1
parents:
diff changeset
341
Ritor1
parents:
diff changeset
342