More DirectDraw groundwork by Peter Bajusz
[reactos.git] / reactos / include / win32k / ntddraw.h
1
2 #ifndef __WIN32K_NTDDRAW_H
3 #define __WIN32K_NTDDRAW_H
4
5 #include <windows.h>
6 #include <ddk/ddrawint.h>
7 #include <ddk/d3dnthal.h>
8
9 #ifdef __cplusplus
10 extern "C" {
11 #endif
12
13 BOOL STDCALL NtGdiD3dContextCreate(
14 HANDLE hDirectDrawLocal,
15 HANDLE hSurfColor,
16 HANDLE hSurfZ,
17 PD3DNTHAL_CONTEXTCREATEDATA pdcci
18 );
19
20 DWORD STDCALL NtGdiD3dContextDestroy(
21 PD3DNTHAL_CONTEXTDESTROYDATA pContextDestroyData
22 );
23
24 DWORD STDCALL NtGdiD3dContextDestroyAll(VOID);
25
26 DWORD STDCALL NtGdiD3dDrawPrimitives2(
27 HANDLE hCmdBuf,
28 HANDLE hVBuf,
29 PD3DNTHAL_DRAWPRIMITIVES2DATA pded,
30 FLATPTR *pfpVidMemCmd,
31 DWORD *pdwSizeCmd,
32 FLATPTR *pfpVidMemVtx,
33 DWORD *pdwSizeVtx
34 );
35
36 DWORD STDCALL NtGdiD3dValidateTextureStageState(
37 PD3DNTHAL_VALIDATETEXTURESTAGESTATEDATA pData
38 );
39
40 DWORD STDCALL NtGdiDdAddAttachedSurface(
41 HANDLE hSurface,
42 HANDLE hSurfaceAttached,
43 PDD_ADDATTACHEDSURFACEDATA puAddAttachedSurfaceData
44 );
45
46 DWORD STDCALL NtGdiDdAlphaBlt(VOID);
47
48 BOOL STDCALL NtGdiDdAttachSurface(
49 HANDLE hSurfaceFrom,
50 HANDLE hSurfaceTo
51 );
52
53 DWORD STDCALL NtGdiDdBeginMoCompFrame(
54 HANDLE hMoComp,
55 PDD_BEGINMOCOMPFRAMEDATA puBeginFrameData
56 );
57
58 DWORD STDCALL NtGdiDdBlt(
59 HANDLE hSurfaceDest,
60 HANDLE hSurfaceSrc,
61 PDD_BLTDATA puBltData
62 );
63
64 DWORD STDCALL NtGdiDdCanCreateD3DBuffer(
65 HANDLE hDirectDraw,
66 PDD_CANCREATESURFACEDATA puCanCreateSurfaceData
67 );
68
69 DWORD STDCALL NtGdiDdCanCreateSurface(
70 HANDLE hDirectDraw,
71 PDD_CANCREATESURFACEDATA puCanCreateSurfaceData
72 );
73
74 DWORD STDCALL NtGdiDdColorControl(
75 HANDLE hSurface,
76 PDD_COLORCONTROLDATA puColorControlData
77 );
78
79 DWORD STDCALL NtGdiDdCreateD3DBuffer(
80 HANDLE hDirectDraw,
81 HANDLE *hSurface,
82 DDSURFACEDESC *puSurfaceDescription,
83 DD_SURFACE_GLOBAL *puSurfaceGlobalData,
84 DD_SURFACE_LOCAL *puSurfaceLocalData,
85 DD_SURFACE_MORE *puSurfaceMoreData,
86 PDD_CREATESURFACEDATA puCreateSurfaceData,
87 HANDLE *puhSurface
88 );
89
90 HANDLE STDCALL NtGdiDdCreateDirectDrawObject(
91 HDC hdc
92 );
93
94 HANDLE STDCALL NtGdiDdCreateMoComp(
95 HANDLE hDirectDraw,
96 PDD_CREATEMOCOMPDATA puCreateMoCompData
97 );
98
99 DWORD STDCALL NtGdiDdCreateSurface(
100 HANDLE hDirectDraw,
101 HANDLE *hSurface,
102 DDSURFACEDESC *puSurfaceDescription,
103 DD_SURFACE_GLOBAL *puSurfaceGlobalData,
104 DD_SURFACE_LOCAL *puSurfaceLocalData,
105 DD_SURFACE_MORE *puSurfaceMoreData,
106 PDD_CREATESURFACEDATA puCreateSurfaceData,
107 HANDLE *puhSurface
108 );
109
110 DWORD STDCALL NtGdiDdCreateSurfaceEx(
111 HANDLE hDirectDraw,
112 HANDLE hSurface,
113 DWORD dwSurfaceHandle
114 );
115
116 HANDLE STDCALL NtGdiDdCreateSurfaceObject(
117 HANDLE hDirectDrawLocal,
118 HANDLE hSurface,
119 PDD_SURFACE_LOCAL puSurfaceLocal,
120 PDD_SURFACE_MORE puSurfaceMore,
121 PDD_SURFACE_GLOBAL puSurfaceGlobal,
122 BOOL bComplete
123 );
124
125 BOOL STDCALL NtGdiDdDeleteDirectDrawObject(
126 HANDLE hDirectDrawLocal
127 );
128
129 BOOL STDCALL NtGdiDdDeleteSurfaceObject(
130 HANDLE hSurface
131 );
132
133 DWORD STDCALL NtGdiDdDestroyD3DBuffer(
134 HANDLE hSurface
135 );
136
137 DWORD STDCALL NtGdiDdDestroyMoComp(
138 HANDLE hMoComp,
139 PDD_DESTROYMOCOMPDATA puBeginFrameData
140 );
141
142 DWORD STDCALL NtGdiDdDestroySurface(
143 HANDLE hSurface,
144 BOOL bRealDestroy
145 );
146
147 DWORD STDCALL NtGdiDdEndMoCompFrame(
148 HANDLE hMoComp,
149 PDD_ENDMOCOMPFRAMEDATA puEndFrameData
150 );
151
152 DWORD STDCALL NtGdiDdFlip(
153 HANDLE hSurfaceCurrent,
154 HANDLE hSurfaceTarget,
155 HANDLE hSurfaceCurrentLeft,
156 HANDLE hSurfaceTargetLeft,
157 PDD_FLIPDATA puFlipData
158 );
159
160 DWORD STDCALL NtGdiDdFlipToGDISurface(
161 HANDLE hDirectDraw,
162 PDD_FLIPTOGDISURFACEDATA puFlipToGDISurfaceData
163 );
164
165 DWORD STDCALL NtGdiDdGetAvailDriverMemory(
166 HANDLE hDirectDraw,
167 PDD_GETAVAILDRIVERMEMORYDATA puGetAvailDriverMemoryData
168 );
169
170 DWORD STDCALL NtGdiDdGetBltStatus(
171 HANDLE hSurface,
172 PDD_GETBLTSTATUSDATA puGetBltStatusData
173 );
174
175 HDC STDCALL NtGdiDdGetDC(
176 HANDLE hSurface,
177 PALETTEENTRY *puColorTable
178 );
179
180 DWORD STDCALL NtGdiDdGetDriverInfo(
181 HANDLE hDirectDraw,
182 PDD_GETDRIVERINFODATA puGetDriverInfoData
183 );
184
185 DWORD STDCALL NtGdiDdGetDriverState(
186 PDD_GETDRIVERSTATEDATA pdata
187 );
188
189 DWORD STDCALL NtGdiDdGetDxHandle(
190 HANDLE hDirectDraw,
191 HANDLE hSurface,
192 BOOL bRelease
193 );
194
195 DWORD STDCALL NtGdiDdGetFlipStatus(
196 HANDLE hSurface,
197 PDD_GETFLIPSTATUSDATA puGetFlipStatusData
198 );
199
200 DWORD STDCALL NtGdiDdGetInternalMoCompInfo(
201 HANDLE hDirectDraw,
202 PDD_GETINTERNALMOCOMPDATA puGetInternalData
203 );
204
205 DWORD STDCALL NtGdiDdGetMoCompBuffInfo(
206 HANDLE hDirectDraw,
207 PDD_GETMOCOMPCOMPBUFFDATA puGetBuffData
208 );
209
210 DWORD STDCALL NtGdiDdGetMoCompFormats(
211 HANDLE hDirectDraw,
212 PDD_GETMOCOMPFORMATSDATA puGetMoCompFormatsData
213 );
214
215 DWORD STDCALL NtGdiDdGetMoCompGuids(
216 HANDLE hDirectDraw,
217 PDD_GETMOCOMPGUIDSDATA puGetMoCompGuidsData
218 );
219
220 DWORD STDCALL NtGdiDdGetScanLine(
221 HANDLE hDirectDraw,
222 PDD_GETSCANLINEDATA puGetScanLineData
223 );
224
225 DWORD STDCALL NtGdiDdLock(
226 HANDLE hSurface,
227 PDD_LOCKDATA puLockData,
228 HDC hdcClip
229 );
230
231 DWORD STDCALL NtGdiDdLockD3D(
232 HANDLE hSurface,
233 PDD_LOCKDATA puLockData
234 );
235
236 BOOL STDCALL NtGdiDdQueryDirectDrawObject(
237 HANDLE hDirectDrawLocal,
238 DD_HALINFO *pHalInfo,
239 DWORD *pCallBackFlags,
240 PD3DNTHAL_CALLBACKS puD3dCallbacks,
241 PD3DNTHAL_GLOBALDRIVERDATA puD3dDriverData,
242 PDD_D3DBUFCALLBACKS puD3dBufferCallbacks,
243 LPDDSURFACEDESC puD3dTextureFormats,
244 DWORD *puNumHeaps,
245 VIDEOMEMORY *puvmList,
246 DWORD *puNumFourCC,
247 DWORD *puFourCC
248 );
249
250 DWORD STDCALL NtGdiDdQueryMoCompStatus(
251 HANDLE hMoComp,
252 PDD_QUERYMOCOMPSTATUSDATA puQueryMoCompStatusData
253 );
254
255 BOOL STDCALL NtGdiDdReenableDirectDrawObject(
256 HANDLE hDirectDrawLocal,
257 BOOL *pubNewMode
258 );
259
260 BOOL STDCALL NtGdiDdReleaseDC(
261 HANDLE hSurface
262 );
263
264 DWORD STDCALL NtGdiDdRenderMoComp(
265 HANDLE hMoComp,
266 PDD_RENDERMOCOMPDATA puRenderMoCompData
267 );
268
269 BOOL STDCALL NtGdiDdResetVisrgn(
270 HANDLE hSurface,
271 HWND hwnd
272 );
273
274 DWORD STDCALL NtGdiDdSetColorKey(
275 HANDLE hSurface,
276 PDD_SETCOLORKEYDATA puSetColorKeyData
277 );
278
279 DWORD STDCALL NtGdiDdSetExclusiveMode(
280 HANDLE hDirectDraw,
281 PDD_SETEXCLUSIVEMODEDATA puSetExclusiveModeData
282 );
283
284 BOOL STDCALL NtGdiDdSetGammaRamp(
285 HANDLE hDirectDraw,
286 HDC hdc,
287 LPVOID lpGammaRamp
288 );
289
290 DWORD STDCALL NtGdiDdSetOverlayPosition(
291 HANDLE hSurfaceSource,
292 HANDLE hSurfaceDestination,
293 PDD_SETOVERLAYPOSITIONDATA puSetOverlayPositionData
294 );
295
296 VOID STDCALL NtGdiDdUnattachSurface(
297 HANDLE hSurface,
298 HANDLE hSurfaceAttached
299 );
300
301 DWORD STDCALL NtGdiDdUnlock(
302 HANDLE hSurface,
303 PDD_UNLOCKDATA puUnlockData
304 );
305
306 DWORD STDCALL NtGdiDdUnlockD3D(
307 HANDLE hSurface,
308 PDD_UNLOCKDATA puUnlockData
309 );
310
311 DWORD STDCALL NtGdiDdUpdateOverlay(
312 HANDLE hSurfaceDestination,
313 HANDLE hSurfaceSource,
314 PDD_UPDATEOVERLAYDATA puUpdateOverlayData
315 );
316
317 DWORD STDCALL NtGdiDdWaitForVerticalBlank(
318 HANDLE hDirectDraw,
319 PDD_WAITFORVERTICALBLANKDATA puWaitForVerticalBlankData
320 );
321
322 #ifdef __cplusplus
323 } /* extern "C" */
324 #endif
325
326 #endif