comparison fuhtark_test/include/winapi/digitalv.h @ 1500:91c8c3b7cbf0

add: futhark tests for generating vulkan api
author sam <sam@basx.dev>
date Wed, 26 Nov 2025 21:36:48 +0700
parents
children
comparison
equal deleted inserted replaced
1499:1f58458b7ef7 1500:91c8c3b7cbf0
1 /**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the w64 mingw-runtime package.
4 * No warranty is given; refer to the file DISCLAIMER within this package.
5 */
6 #ifndef _INC_DIGITALV
7 #define _INC_DIGITALV 100
8
9 #include <pshpack1.h>
10
11 #ifdef __cplusplus
12 extern "C" {
13 #endif
14
15 #define MCI_TEST 0x00000020L
16
17 #define MCI_CAPTURE 0x0870
18 #define MCI_MONITOR 0x0871
19 #define MCI_RESERVE 0x0872
20 #define MCI_SETAUDIO 0x0873
21 #define MCI_SIGNAL 0x0875
22 #define MCI_SETVIDEO 0x0876
23 #define MCI_QUALITY 0x0877
24 #define MCI_LIST 0x0878
25 #define MCI_UNDO 0x0879
26 #define MCI_CONFIGURE 0x087a
27 #define MCI_RESTORE 0x087b
28
29 #define MCI_ON 1
30 #define MCI_OFF 0
31
32 #define MCI_DGV_FILE_MODE_SAVING 0x0001
33 #define MCI_DGV_FILE_MODE_LOADING 0x0002
34 #define MCI_DGV_FILE_MODE_EDITING 0x0003
35 #define MCI_DGV_FILE_MODE_IDLE 0x0004
36
37 #define MCI_ON_S 0x00008000L
38 #define MCI_OFF_S 0x00008001L
39 #define MCI_DGV_FILE_S 0x00008002L
40 #define MCI_DGV_INPUT_S 0x00008003L
41
42 #define MCI_DGV_FILE_MODE_SAVING_S 0x00008004L
43 #define MCI_DGV_FILE_MODE_LOADING_S 0x00008005L
44 #define MCI_DGV_FILE_MODE_EDITING_S 0x00008006L
45 #define MCI_DGV_FILE_MODE_IDLE_S 0x00008007L
46
47 #define MCI_DGV_SETVIDEO_SRC_NTSC_S 0x00008010L
48 #define MCI_DGV_SETVIDEO_SRC_RGB_S 0x00008011L
49 #define MCI_DGV_SETVIDEO_SRC_SVIDEO_S 0x00008012L
50 #define MCI_DGV_SETVIDEO_SRC_PAL_S 0x00008013L
51 #define MCI_DGV_SETVIDEO_SRC_SECAM_S 0x00008014L
52 #define MCI_DGV_SETVIDEO_SRC_GENERIC_S 0x00008015L
53
54 #define MCI_DGV_SETAUDIO_SRC_LEFT_S 0x00008020L
55 #define MCI_DGV_SETAUDIO_SRC_RIGHT_S 0x00008021L
56 #define MCI_DGV_SETAUDIO_SRC_AVERAGE_S 0x00008022L
57 #define MCI_DGV_SETAUDIO_SRC_STEREO_S 0x00008023L
58
59 #define MM_MCISIGNAL 0x3CB
60
61 #define MCIERR_DGV_DEVICE_LIMIT (MCIERR_CUSTOM_DRIVER_BASE+0)
62 #define MCIERR_DGV_IOERR (MCIERR_CUSTOM_DRIVER_BASE+1)
63 #define MCIERR_DGV_WORKSPACE_EMPTY (MCIERR_CUSTOM_DRIVER_BASE+2)
64 #define MCIERR_DGV_DISK_FULL (MCIERR_CUSTOM_DRIVER_BASE+3)
65 #define MCIERR_DGV_DEVICE_MEMORY_FULL (MCIERR_CUSTOM_DRIVER_BASE+4)
66 #define MCIERR_DGV_BAD_CLIPBOARD_RANGE (MCIERR_CUSTOM_DRIVER_BASE+5)
67
68 #define MCI_DGV_METHOD_PRE 0x0000a000L
69 #define MCI_DGV_METHOD_POST 0x0000a001L
70 #define MCI_DGV_METHOD_DIRECT 0x0000a002L
71
72 #define MCI_DGV_FF_AVSS 0x00004000L
73 #define MCI_DGV_FF_AVI 0x00004001L
74 #define MCI_DGV_FF_DIB 0x00004002L
75 #define MCI_DGV_FF_RDIB 0x00004003L
76 #define MCI_DGV_FF_JPEG 0x00004004L
77 #define MCI_DGV_FF_RJPEG 0x00004005L
78 #define MCI_DGV_FF_JFIF 0x00004006L
79 #define MCI_DGV_FF_MPEG 0x00004007L
80
81 #define MCI_DGV_GETDEVCAPS_CAN_LOCK 0x00004000L
82 #define MCI_DGV_GETDEVCAPS_CAN_STRETCH 0x00004001L
83 #define MCI_DGV_GETDEVCAPS_CAN_FREEZE 0x00004002L
84 #define MCI_DGV_GETDEVCAPS_MAX_WINDOWS 0x00004003L
85 #define MCI_DGV_GETDEVCAPS_CAN_REVERSE 0x00004004L
86 #define MCI_DGV_GETDEVCAPS_HAS_STILL 0x00004005L
87 #define MCI_DGV_GETDEVCAPS_PALETTES 0x00004006L
88 #define MCI_DGV_GETDEVCAPS_CAN_STR_IN 0x00004008L
89 #define MCI_DGV_GETDEVCAPS_CAN_TEST 0x00004009L
90 #define MCI_DGV_GETDEVCAPS_MAXIMUM_RATE 0x0000400aL
91 #define MCI_DGV_GETDEVCAPS_MINIMUM_RATE 0x0000400bL
92
93 #define MCI_DGV_CAPTURE_AS 0x00010000L
94 #define MCI_DGV_CAPTURE_AT 0x00020000L
95
96 #define MCI_DGV_COPY_AT 0x00010000L
97 #define MCI_DGV_COPY_AUDIO_STREAM 0x00020000L
98 #define MCI_DGV_COPY_VIDEO_STREAM 0x00040000L
99
100 #define MCI_DGV_CUE_INPUT 0x00010000L
101 #define MCI_DGV_CUE_OUTPUT 0x00020000L
102 #define MCI_DGV_CUE_NOSHOW 0x00040000L
103
104 #define MCI_DGV_CUT_AT 0x00010000L
105 #define MCI_DGV_CUT_AUDIO_STREAM 0x00020000L
106 #define MCI_DGV_CUT_VIDEO_STREAM 0x00040000L
107
108 #define MCI_DGV_DELETE_AT 0x00010000L
109 #define MCI_DGV_DELETE_AUDIO_STREAM 0x00020000L
110 #define MCI_DGV_DELETE_VIDEO_STREAM 0x00040000L
111
112 #define MCI_DGV_FREEZE_AT 0x00010000L
113 #define MCI_DGV_FREEZE_OUTSIDE 0x00020000L
114
115 #define MCI_DGV_INFO_TEXT 0x00010000L
116 #define MCI_DGV_INFO_ITEM 0X00020000L
117
118 #define MCI_INFO_VERSION 0x00000400L
119
120 #define MCI_DGV_INFO_USAGE 0x00004000L
121 #define MCI_DGV_INFO_AUDIO_QUALITY 0x00004001L
122 #define MCI_DGV_INFO_STILL_QUALITY 0x00004002L
123 #define MCI_DGV_INFO_VIDEO_QUALITY 0x00004003L
124 #define MCI_DGV_INFO_AUDIO_ALG 0x00004004L
125 #define MCI_DGV_INFO_STILL_ALG 0x00004005L
126 #define MCI_DGV_INFO_VIDEO_ALG 0x00004006L
127
128 #define MCI_DGV_LIST_ITEM 0x00010000L
129 #define MCI_DGV_LIST_COUNT 0x00020000L
130 #define MCI_DGV_LIST_NUMBER 0x00040000L
131 #define MCI_DGV_LIST_ALG 0x00080000L
132
133 #define MCI_DGV_LIST_AUDIO_ALG 0x00004000L
134 #define MCI_DGV_LIST_AUDIO_QUALITY 0x00004001L
135 #define MCI_DGV_LIST_AUDIO_STREAM 0x00004002L
136 #define MCI_DGV_LIST_STILL_ALG 0x00004003L
137 #define MCI_DGV_LIST_STILL_QUALITY 0x00004004L
138 #define MCI_DGV_LIST_VIDEO_ALG 0x00004005L
139 #define MCI_DGV_LIST_VIDEO_QUALITY 0x00004006L
140 #define MCI_DGV_LIST_VIDEO_STREAM 0x00004007L
141 #define MCI_DGV_LIST_VIDEO_SOURCE 0x00004008L
142
143 #define MCI_DGV_MONITOR_METHOD 0x00010000L
144 #define MCI_DGV_MONITOR_SOURCE 0x00020000L
145
146 #define MCI_DGV_MONITOR_INPUT 0x00004000L
147 #define MCI_DGV_MONITOR_FILE 0x00004001L
148
149 #define MCI_DGV_OPEN_WS 0x00010000L
150 #define MCI_DGV_OPEN_PARENT 0x00020000L
151 #define MCI_DGV_OPEN_NOSTATIC 0x00040000L
152 #define MCI_DGV_OPEN_16BIT 0x00080000L
153 #define MCI_DGV_OPEN_32BIT 0x00100000L
154
155 #define MCI_DGV_PASTE_AT 0x00010000L
156 #define MCI_DGV_PASTE_AUDIO_STREAM 0x00020000L
157 #define MCI_DGV_PASTE_VIDEO_STREAM 0x00040000L
158 #define MCI_DGV_PASTE_INSERT 0x00080000L
159 #define MCI_DGV_PASTE_OVERWRITE 0x00100000L
160
161 #define MCI_DGV_PLAY_REPEAT 0x00010000L
162 #define MCI_DGV_PLAY_REVERSE 0x00020000L
163
164 #define MCI_DGV_RECT 0x00010000L
165 #define MCI_DGV_PUT_SOURCE 0x00020000L
166 #define MCI_DGV_PUT_DESTINATION 0x00040000L
167 #define MCI_DGV_PUT_FRAME 0x00080000L
168 #define MCI_DGV_PUT_VIDEO 0x00100000L
169 #define MCI_DGV_PUT_WINDOW 0x00200000L
170 #define MCI_DGV_PUT_CLIENT 0x00400000L
171
172 #define MCI_QUALITY_ITEM 0x00010000L
173 #define MCI_QUALITY_NAME 0x00020000L
174 #define MCI_QUALITY_ALG 0x00040000L
175 #define MCI_QUALITY_DIALOG 0x00080000L
176 #define MCI_QUALITY_HANDLE 0x00100000L
177
178 #define MCI_QUALITY_ITEM_AUDIO 0x00004000L
179 #define MCI_QUALITY_ITEM_STILL 0x00004001L
180 #define MCI_QUALITY_ITEM_VIDEO 0x00004002L
181
182 #define MCI_DGV_REALIZE_NORM 0x00010000L
183 #define MCI_DGV_REALIZE_BKGD 0x00020000L
184
185 #define MCI_DGV_RECORD_HOLD 0x00020000L
186 #define MCI_DGV_RECORD_AUDIO_STREAM 0x00040000L
187 #define MCI_DGV_RECORD_VIDEO_STREAM 0x00080000L
188
189 #define MCI_DGV_RESERVE_IN 0x00010000L
190 #define MCI_DGV_RESERVE_SIZE 0x00020000L
191
192 #define MCI_DGV_RESTORE_FROM 0x00010000L
193 #define MCI_DGV_RESTORE_AT 0x00020000L
194
195 #define MCI_DGV_SAVE_ABORT 0x00020000L
196 #define MCI_DGV_SAVE_KEEPRESERVE 0x00040000L
197
198 #define MCI_DGV_SET_SEEK_EXACTLY 0x00010000L
199 #define MCI_DGV_SET_SPEED 0x00020000L
200 #define MCI_DGV_SET_STILL 0x00040000L
201 #define MCI_DGV_SET_FILEFORMAT 0x00080000L
202
203 #define MCI_DGV_SETAUDIO_OVER 0x00010000L
204 #define MCI_DGV_SETAUDIO_CLOCKTIME 0x00020000L
205 #define MCI_DGV_SETAUDIO_ALG 0x00040000L
206 #define MCI_DGV_SETAUDIO_QUALITY 0x00080000L
207 #define MCI_DGV_SETAUDIO_RECORD 0x00100000L
208 #define MCI_DGV_SETAUDIO_LEFT 0x00200000L
209 #define MCI_DGV_SETAUDIO_RIGHT 0x00400000L
210 #define MCI_DGV_SETAUDIO_ITEM 0x00800000L
211 #define MCI_DGV_SETAUDIO_VALUE 0x01000000L
212 #define MCI_DGV_SETAUDIO_INPUT 0x02000000L
213 #define MCI_DGV_SETAUDIO_OUTPUT 0x04000000L
214
215 #define MCI_DGV_SETAUDIO_TREBLE 0x00004000L
216 #define MCI_DGV_SETAUDIO_BASS 0x00004001L
217 #define MCI_DGV_SETAUDIO_VOLUME 0x00004002L
218 #define MCI_DGV_SETAUDIO_STREAM 0x00004003L
219 #define MCI_DGV_SETAUDIO_SOURCE 0x00004004L
220 #define MCI_DGV_SETAUDIO_SAMPLESPERSEC 0x00004005L
221 #define MCI_DGV_SETAUDIO_AVGBYTESPERSEC 0x00004006L
222 #define MCI_DGV_SETAUDIO_BLOCKALIGN 0x00004007L
223 #define MCI_DGV_SETAUDIO_BITSPERSAMPLE 0x00004008L
224
225 #define MCI_DGV_SETAUDIO_SOURCE_STEREO 0x00000000L
226 #define MCI_DGV_SETAUDIO_SOURCE_LEFT 0x00000001L
227 #define MCI_DGV_SETAUDIO_SOURCE_RIGHT 0x00000002L
228 #define MCI_DGV_SETAUDIO_SOURCE_AVERAGE 0x00004000L
229
230 #define MCI_DGV_SETVIDEO_QUALITY 0x00010000L
231 #define MCI_DGV_SETVIDEO_ALG 0x00020000L
232 #define MCI_DGV_SETVIDEO_CLOCKTIME 0x00040000L
233 #define MCI_DGV_SETVIDEO_SRC_NUMBER 0x00080000L
234 #define MCI_DGV_SETVIDEO_ITEM 0x00100000L
235 #define MCI_DGV_SETVIDEO_OVER 0x00200000L
236 #define MCI_DGV_SETVIDEO_RECORD 0x00400000L
237 #define MCI_DGV_SETVIDEO_STILL 0x00800000L
238 #define MCI_DGV_SETVIDEO_VALUE 0x01000000L
239 #define MCI_DGV_SETVIDEO_INPUT 0x02000000L
240 #define MCI_DGV_SETVIDEO_OUTPUT 0x04000000L
241
242 #define MCI_DGV_SETVIDEO_SRC_NTSC 0x00004000L
243 #define MCI_DGV_SETVIDEO_SRC_RGB 0x00004001L
244 #define MCI_DGV_SETVIDEO_SRC_SVIDEO 0x00004002L
245 #define MCI_DGV_SETVIDEO_SRC_PAL 0x00004003L
246 #define MCI_DGV_SETVIDEO_SRC_SECAM 0x00004004L
247 #define MCI_DGV_SETVIDEO_SRC_GENERIC 0x00004005L
248
249 #define MCI_DGV_SETVIDEO_BRIGHTNESS 0x00004000L
250 #define MCI_DGV_SETVIDEO_COLOR 0x00004001L
251 #define MCI_DGV_SETVIDEO_CONTRAST 0x00004002L
252 #define MCI_DGV_SETVIDEO_TINT 0x00004003L
253 #define MCI_DGV_SETVIDEO_SHARPNESS 0x00004004L
254 #define MCI_DGV_SETVIDEO_GAMMA 0x00004005L
255 #define MCI_DGV_SETVIDEO_STREAM 0x00004006L
256 #define MCI_DGV_SETVIDEO_PALHANDLE 0x00004007L
257 #define MCI_DGV_SETVIDEO_FRAME_RATE 0x00004008L
258 #define MCI_DGV_SETVIDEO_SOURCE 0x00004009L
259 #define MCI_DGV_SETVIDEO_KEY_INDEX 0x0000400aL
260 #define MCI_DGV_SETVIDEO_KEY_COLOR 0x0000400bL
261 #define MCI_DGV_SETVIDEO_BITSPERPEL 0x0000400cL
262
263 #define MCI_DGV_SIGNAL_AT 0x00010000L
264 #define MCI_DGV_SIGNAL_EVERY 0x00020000L
265 #define MCI_DGV_SIGNAL_USERVAL 0x00040000L
266 #define MCI_DGV_SIGNAL_CANCEL 0x00080000L
267 #define MCI_DGV_SIGNAL_POSITION 0x00100000L
268
269 #define SEND_DGVSIGNAL(dwFlags,dwCallback,hDriver,wDeviceID,dwUser,dwPos) DriverCallback((dwCallback),DCB_WINDOW,(HANDLE)(wDeviceID),MM_MCISIGNAL,hDriver,((dwFlags) & MCI_DGV_SIGNAL_POSITION) ? (dwPos):(dwUser),((dwFlags) & MCI_DGV_SIGNAL_POSITION) ? (dwUser):(dwPos))
270
271 #define MCI_DGV_STATUS_NOMINAL 0x00020000L
272 #define MCI_DGV_STATUS_REFERENCE 0x00040000L
273 #define MCI_DGV_STATUS_LEFT 0x00080000L
274 #define MCI_DGV_STATUS_RIGHT 0x00100000L
275 #define MCI_DGV_STATUS_DISKSPACE 0x00200000L
276 #define MCI_DGV_STATUS_INPUT 0x00400000L
277 #define MCI_DGV_STATUS_OUTPUT 0x00800000L
278 #define MCI_DGV_STATUS_RECORD 0x01000000L
279
280 #define MCI_DGV_STATUS_AUDIO_INPUT 0x00004000L
281 #define MCI_DGV_STATUS_HWND 0x00004001L
282 #define MCI_DGV_STATUS_SPEED 0x00004003L
283 #define MCI_DGV_STATUS_HPAL 0x00004004L
284 #define MCI_DGV_STATUS_BRIGHTNESS 0x00004005L
285 #define MCI_DGV_STATUS_COLOR 0x00004006L
286 #define MCI_DGV_STATUS_CONTRAST 0x00004007L
287 #define MCI_DGV_STATUS_FILEFORMAT 0x00004008L
288 #define MCI_DGV_STATUS_AUDIO_SOURCE 0x00004009L
289 #define MCI_DGV_STATUS_GAMMA 0x0000400aL
290 #define MCI_DGV_STATUS_MONITOR 0x0000400bL
291 #define MCI_DGV_STATUS_MONITOR_METHOD 0x0000400cL
292 #define MCI_DGV_STATUS_FRAME_RATE 0x0000400eL
293 #define MCI_DGV_STATUS_BASS 0x0000400fL
294 #define MCI_DGV_STATUS_SIZE 0x00004010L
295 #define MCI_DGV_STATUS_SEEK_EXACTLY 0x00004011L
296 #define MCI_DGV_STATUS_SHARPNESS 0x00004012L
297 #define MCI_DGV_STATUS_SMPTE 0x00004013L
298 #define MCI_DGV_STATUS_AUDIO 0x00004014L
299 #define MCI_DGV_STATUS_TINT 0x00004015L
300 #define MCI_DGV_STATUS_TREBLE 0x00004016L
301 #define MCI_DGV_STATUS_UNSAVED 0x00004017L
302 #define MCI_DGV_STATUS_VIDEO 0x00004018L
303 #define MCI_DGV_STATUS_VOLUME 0x00004019L
304 #define MCI_DGV_STATUS_AUDIO_RECORD 0x0000401aL
305 #define MCI_DGV_STATUS_VIDEO_SOURCE 0x0000401bL
306 #define MCI_DGV_STATUS_VIDEO_RECORD 0x0000401cL
307 #define MCI_DGV_STATUS_STILL_FILEFORMAT 0x0000401dL
308 #define MCI_DGV_STATUS_VIDEO_SRC_NUM 0x0000401eL
309 #define MCI_DGV_STATUS_FILE_MODE 0x0000401fL
310 #define MCI_DGV_STATUS_FILE_COMPLETION 0x00004020L
311 #define MCI_DGV_STATUS_WINDOW_VISIBLE 0x00004021L
312 #define MCI_DGV_STATUS_WINDOW_MINIMIZED 0x00004022L
313 #define MCI_DGV_STATUS_WINDOW_MAXIMIZED 0x00004023L
314 #define MCI_DGV_STATUS_KEY_INDEX 0x00004024L
315 #define MCI_DGV_STATUS_KEY_COLOR 0x00004025L
316 #define MCI_DGV_STATUS_PAUSE_MODE 0x00004026L
317 #define MCI_DGV_STATUS_SAMPLESPERSEC 0x00004027L
318 #define MCI_DGV_STATUS_AVGBYTESPERSEC 0x00004028L
319 #define MCI_DGV_STATUS_BLOCKALIGN 0x00004029L
320 #define MCI_DGV_STATUS_BITSPERSAMPLE 0x0000402aL
321 #define MCI_DGV_STATUS_BITSPERPEL 0x0000402bL
322 #define MCI_DGV_STATUS_FORWARD 0x0000402cL
323 #define MCI_DGV_STATUS_AUDIO_STREAM 0x0000402dL
324 #define MCI_DGV_STATUS_VIDEO_STREAM 0x0000402eL
325
326 #define MCI_DGV_STEP_REVERSE 0x00010000L
327 #define MCI_DGV_STEP_FRAMES 0x00020000L
328
329 #define MCI_DGV_STOP_HOLD 0x00010000L
330
331 #define MCI_DGV_UPDATE_HDC 0x00020000L
332 #define MCI_DGV_UPDATE_PAINT 0x00040000L
333
334 #define MCI_DGV_WHERE_SOURCE 0x00020000L
335 #define MCI_DGV_WHERE_DESTINATION 0x00040000L
336 #define MCI_DGV_WHERE_FRAME 0x00080000L
337 #define MCI_DGV_WHERE_VIDEO 0x00100000L
338 #define MCI_DGV_WHERE_WINDOW 0x00200000L
339 #define MCI_DGV_WHERE_MAX 0x00400000L
340
341 #define MCI_DGV_WINDOW_HWND 0x00010000L
342 #define MCI_DGV_WINDOW_STATE 0x00040000L
343 #define MCI_DGV_WINDOW_TEXT 0x00080000L
344
345 #define MCI_DGV_WINDOW_DEFAULT 0x00000000L
346
347 typedef struct {
348 DWORD_PTR dwCallback;
349 #ifdef MCI_USE_OFFEXT
350 POINT ptOffset;
351 POINT ptExtent;
352 #else
353 RECT rc;
354 #endif
355 } MCI_DGV_RECT_PARMS;
356
357 typedef MCI_DGV_RECT_PARMS *LPMCI_DGV_RECT_PARMS;
358
359 typedef struct {
360 DWORD_PTR dwCallback;
361 LPSTR lpstrFileName;
362 #ifdef MCI_USE_OFFEXT
363 POINT ptOffset;
364 POINT ptExtent;
365 #else
366 RECT rc;
367 #endif
368 } MCI_DGV_CAPTURE_PARMSA;
369
370 typedef struct {
371 DWORD_PTR dwCallback;
372 LPWSTR lpstrFileName;
373 #ifdef MCI_USE_OFFEXT
374 POINT ptOffset;
375 POINT ptExtent;
376 #else
377 RECT rc;
378 #endif
379 } MCI_DGV_CAPTURE_PARMSW;
380
381 #ifdef UNICODE
382 typedef MCI_DGV_CAPTURE_PARMSW MCI_DGV_CAPTURE_PARMS;
383 #else
384 typedef MCI_DGV_CAPTURE_PARMSA MCI_DGV_CAPTURE_PARMS;
385 #endif
386
387 typedef MCI_DGV_CAPTURE_PARMSA *LPMCI_DGV_CAPTURE_PARMSA;
388 typedef MCI_DGV_CAPTURE_PARMSW *LPMCI_DGV_CAPTURE_PARMSW;
389
390 #ifdef UNICODE
391 typedef LPMCI_DGV_CAPTURE_PARMSW LPMCI_DGV_CAPTURE_PARMS;
392 #else
393 typedef LPMCI_DGV_CAPTURE_PARMSA LPMCI_DGV_CAPTURE_PARMS;
394 #endif
395
396 typedef MCI_GENERIC_PARMS MCI_CLOSE_PARMS;
397 typedef MCI_CLOSE_PARMS *LPMCI_CLOSE_PARMS;
398
399 typedef struct {
400 DWORD_PTR dwCallback;
401 DWORD dwFrom;
402 DWORD dwTo;
403 #ifdef MCI_USE_OFFEXT
404 POINT ptOffset;
405 POINT ptExtent;
406 #else
407 RECT rc;
408 #endif
409 DWORD dwAudioStream;
410 DWORD dwVideoStream;
411 } MCI_DGV_COPY_PARMS;
412
413 typedef MCI_DGV_COPY_PARMS *LPMCI_DGV_COPY_PARMS;
414
415 typedef struct {
416 DWORD_PTR dwCallback;
417 DWORD dwTo;
418 } MCI_DGV_CUE_PARMS;
419
420 typedef MCI_DGV_CUE_PARMS *LPMCI_DGV_CUE_PARMS;
421
422 typedef struct {
423 DWORD_PTR dwCallback;
424 DWORD dwFrom;
425 DWORD dwTo;
426 #ifdef MCI_USE_OFFEXT
427 POINT ptOffset;
428 POINT ptExtent;
429 #else
430 RECT rc;
431 #endif
432 DWORD dwAudioStream;
433 DWORD dwVideoStream;
434 } MCI_DGV_CUT_PARMS;
435
436 typedef MCI_DGV_CUT_PARMS *LPMCI_DGV_CUT_PARMS;
437
438 typedef struct {
439 DWORD_PTR dwCallback;
440 DWORD dwFrom;
441 DWORD dwTo;
442 #ifdef MCI_USE_OFFEXT
443 POINT ptOffset;
444 POINT ptExtent;
445 #else
446 RECT rc;
447 #endif
448 DWORD dwAudioStream;
449 DWORD dwVideoStream;
450 } MCI_DGV_DELETE_PARMS;
451
452 typedef MCI_DGV_DELETE_PARMS *LPMCI_DGV_DELETE_PARMS;
453 typedef MCI_DGV_RECT_PARMS MCI_DGV_FREEZE_PARMS;
454 typedef MCI_DGV_FREEZE_PARMS *LPMCI_DGV_FREEZE_PARMS;
455
456 typedef struct {
457 DWORD_PTR dwCallback;
458 LPSTR lpstrReturn;
459 DWORD dwRetSize;
460 DWORD dwItem;
461 } MCI_DGV_INFO_PARMSA;
462
463 typedef struct {
464 DWORD_PTR dwCallback;
465 LPWSTR lpstrReturn;
466 DWORD dwRetSize;
467 DWORD dwItem;
468 } MCI_DGV_INFO_PARMSW;
469
470 #ifdef UNICODE
471 typedef MCI_DGV_INFO_PARMSW MCI_DGV_INFO_PARMS;
472 #else
473 typedef MCI_DGV_INFO_PARMSA MCI_DGV_INFO_PARMS;
474 #endif
475
476 typedef MCI_DGV_INFO_PARMSA *LPMCI_DGV_INFO_PARMSA;
477 typedef MCI_DGV_INFO_PARMSW *LPMCI_DGV_INFO_PARMSW;
478 #ifdef UNICODE
479 typedef LPMCI_DGV_INFO_PARMSW LPMCI_DGV_INFO_PARMS;
480 #else
481 typedef LPMCI_DGV_INFO_PARMSA LPMCI_DGV_INFO_PARMS;
482 #endif
483
484 typedef struct {
485 DWORD_PTR dwCallback;
486 LPSTR lpstrReturn;
487 DWORD dwLength;
488 DWORD dwNumber;
489 DWORD dwItem;
490 LPSTR lpstrAlgorithm;
491 } MCI_DGV_LIST_PARMSA;
492
493 typedef struct {
494 DWORD_PTR dwCallback;
495 LPWSTR lpstrReturn;
496 DWORD dwLength;
497 DWORD dwNumber;
498 DWORD dwItem;
499 LPWSTR lpstrAlgorithm;
500 } MCI_DGV_LIST_PARMSW;
501
502 #ifdef UNICODE
503 typedef MCI_DGV_LIST_PARMSW MCI_DGV_LIST_PARMS;
504 #else
505 typedef MCI_DGV_LIST_PARMSA MCI_DGV_LIST_PARMS;
506 #endif
507 typedef MCI_DGV_LIST_PARMSA *LPMCI_DGV_LIST_PARMSA;
508 typedef MCI_DGV_LIST_PARMSW *LPMCI_DGV_LIST_PARMSW;
509 #ifdef UNICODE
510 typedef LPMCI_DGV_LIST_PARMSW LPMCI_DGV_LIST_PARMS;
511 #else
512 typedef LPMCI_DGV_LIST_PARMSA LPMCI_DGV_LIST_PARMS;
513 #endif
514
515 typedef MCI_LOAD_PARMS MCI_DGV_LOAD_PARMS;
516 typedef MCI_DGV_LOAD_PARMS *LPMCI_DGV_LOAD_PARMS;
517
518 typedef struct {
519 DWORD_PTR dwCallback;
520 DWORD dwSource;
521 DWORD dwMethod;
522 } MCI_DGV_MONITOR_PARMS;
523
524 typedef MCI_DGV_MONITOR_PARMS *LPMCI_DGV_MONITOR_PARMS;
525
526 typedef struct {
527 DWORD_PTR dwCallback;
528 UINT wDeviceID;
529 LPSTR lpstrDeviceType;
530 LPSTR lpstrElementName;
531 LPSTR lpstrAlias;
532 DWORD dwStyle;
533 HWND hWndParent;
534 } MCI_DGV_OPEN_PARMSA;
535
536 typedef struct {
537 DWORD_PTR dwCallback;
538 UINT wDeviceID;
539 LPWSTR lpstrDeviceType;
540 LPWSTR lpstrElementName;
541 LPWSTR lpstrAlias;
542 DWORD dwStyle;
543 HWND hWndParent;
544 } MCI_DGV_OPEN_PARMSW;
545
546 #ifdef UNICODE
547 typedef MCI_DGV_OPEN_PARMSW MCI_DGV_OPEN_PARMS;
548 #else
549 typedef MCI_DGV_OPEN_PARMSA MCI_DGV_OPEN_PARMS;
550 #endif
551 typedef MCI_DGV_OPEN_PARMSA *LPMCI_DGV_OPEN_PARMSA;
552 typedef MCI_DGV_OPEN_PARMSW *LPMCI_DGV_OPEN_PARMSW;
553 #ifdef UNICODE
554 typedef LPMCI_DGV_OPEN_PARMSW LPMCI_DGV_OPEN_PARMS;
555 #else
556 typedef LPMCI_DGV_OPEN_PARMSA LPMCI_DGV_OPEN_PARMS;
557 #endif
558
559 typedef MCI_GENERIC_PARMS MCI_DGV_PAUSE_PARMS;
560 typedef MCI_DGV_PAUSE_PARMS *LPMCI_DGV_PAUSE_PARMS;
561
562 typedef struct {
563 DWORD_PTR dwCallback;
564 DWORD dwTo;
565 #ifdef MCI_USE_OFFEXT
566 POINT ptOffset;
567 POINT ptExtent;
568 #else
569 RECT rc;
570 #endif
571 DWORD dwAudioStream;
572 DWORD dwVideoStream;
573 } MCI_DGV_PASTE_PARMS;
574
575 typedef MCI_DGV_PASTE_PARMS *LPMCI_DGV_PASTE_PARMS;
576 typedef MCI_PLAY_PARMS MCI_DGV_PLAY_PARMS;
577 typedef MCI_DGV_PLAY_PARMS *LPMCI_DGV_PLAY_PARMS;
578 typedef MCI_DGV_RECT_PARMS MCI_DGV_PUT_PARMS;
579 typedef MCI_DGV_PUT_PARMS *LPMCI_DGV_PUT_PARMS;
580
581 typedef struct {
582 DWORD_PTR dwCallback;
583 DWORD dwItem;
584 LPSTR lpstrName;
585 DWORD lpstrAlgorithm;
586 DWORD dwHandle;
587 } MCI_DGV_QUALITY_PARMSA;
588
589 typedef struct {
590 DWORD_PTR dwCallback;
591 DWORD dwItem;
592 LPWSTR lpstrName;
593 DWORD lpstrAlgorithm;
594 DWORD dwHandle;
595 } MCI_DGV_QUALITY_PARMSW;
596
597 #ifdef UNICODE
598 typedef MCI_DGV_QUALITY_PARMSW MCI_DGV_QUALITY_PARMS;
599 #else
600 typedef MCI_DGV_QUALITY_PARMSA MCI_DGV_QUALITY_PARMS;
601 #endif
602 typedef MCI_DGV_QUALITY_PARMSA *LPMCI_DGV_QUALITY_PARMSA;
603 typedef MCI_DGV_QUALITY_PARMSW *LPMCI_DGV_QUALITY_PARMSW;
604 #ifdef UNICODE
605 typedef LPMCI_DGV_QUALITY_PARMSW LPMCI_DGV_QUALITY_PARMS;
606 #else
607 typedef LPMCI_DGV_QUALITY_PARMSA LPMCI_DGV_QUALITY_PARMS;
608 #endif
609
610 typedef MCI_GENERIC_PARMS MCI_REALIZE_PARMS;
611 typedef MCI_REALIZE_PARMS *LPMCI_REALIZE_PARMS;
612
613 typedef struct {
614 DWORD_PTR dwCallback;
615 DWORD dwFrom;
616 DWORD dwTo;
617 #ifdef MCI_USE_OFFEXT
618 POINT ptOffset;
619 POINT ptExtent;
620 #else
621 RECT rc;
622 #endif
623 DWORD dwAudioStream;
624 DWORD dwVideoStream;
625 } MCI_DGV_RECORD_PARMS;
626
627 typedef MCI_DGV_RECORD_PARMS *LPMCI_DGV_RECORD_PARMS;
628
629 typedef struct {
630 DWORD_PTR dwCallback;
631 LPSTR lpstrPath;
632 DWORD dwSize;
633 } MCI_DGV_RESERVE_PARMSA;
634
635 typedef struct {
636 DWORD_PTR dwCallback;
637 LPWSTR lpstrPath;
638 DWORD dwSize;
639 } MCI_DGV_RESERVE_PARMSW;
640
641 #ifdef UNICODE
642 typedef MCI_DGV_RESERVE_PARMSW MCI_DGV_RESERVE_PARMS;
643 #else
644 typedef MCI_DGV_RESERVE_PARMSA MCI_DGV_RESERVE_PARMS;
645 #endif
646 typedef MCI_DGV_RESERVE_PARMSA *LPMCI_DGV_RESERVE_PARMSA;
647 typedef MCI_DGV_RESERVE_PARMSW *LPMCI_DGV_RESERVE_PARMSW;
648 #ifdef UNICODE
649 typedef LPMCI_DGV_RESERVE_PARMSW LPMCI_DGV_RESERVE_PARMS;
650 #else
651 typedef LPMCI_DGV_RESERVE_PARMSA LPMCI_DGV_RESERVE_PARMS;
652 #endif
653
654 typedef struct {
655 DWORD_PTR dwCallback;
656 LPSTR lpstrFileName;
657 #ifdef MCI_USE_OFFEXT
658 POINT ptOffset;
659 POINT ptExtent;
660 #else
661 RECT rc;
662 #endif
663 } MCI_DGV_RESTORE_PARMSA;
664
665 typedef struct {
666 DWORD_PTR dwCallback;
667 LPWSTR lpstrFileName;
668 #ifdef MCI_USE_OFFEXT
669 POINT ptOffset;
670 POINT ptExtent;
671 #else
672 RECT rc;
673 #endif
674 } MCI_DGV_RESTORE_PARMSW;
675
676 #ifdef UNICODE
677 typedef MCI_DGV_RESTORE_PARMSW MCI_DGV_RESTORE_PARMS;
678 #else
679 typedef MCI_DGV_RESTORE_PARMSA MCI_DGV_RESTORE_PARMS;
680 #endif
681 typedef MCI_DGV_RESTORE_PARMSA *LPMCI_DGV_RESTORE_PARMSA;
682 typedef MCI_DGV_RESTORE_PARMSW *LPMCI_DGV_RESTORE_PARMSW;
683 #ifdef UNICODE
684 typedef LPMCI_DGV_RESTORE_PARMSW LPMCI_DGV_RESTORE_PARMS;
685 #else
686 typedef LPMCI_DGV_RESTORE_PARMSA LPMCI_DGV_RESTORE_PARMS;
687 #endif
688
689 typedef MCI_GENERIC_PARMS MCI_DGV_RESUME_PARMS;
690 typedef MCI_DGV_RESUME_PARMS *LPMCI_DGV_RESUME_PARMS;
691
692 typedef struct {
693 DWORD_PTR dwCallback;
694 LPSTR lpstrFileName;
695 RECT rc;
696 } MCI_DGV_SAVE_PARMSA;
697
698 typedef struct {
699 DWORD_PTR dwCallback;
700 LPWSTR lpstrFileName;
701 RECT rc;
702 } MCI_DGV_SAVE_PARMSW;
703
704 #ifdef UNICODE
705 typedef MCI_DGV_SAVE_PARMSW MCI_DGV_SAVE_PARMS;
706 #else
707 typedef MCI_DGV_SAVE_PARMSA MCI_DGV_SAVE_PARMS;
708 #endif
709 typedef MCI_DGV_SAVE_PARMSA *LPMCI_DGV_SAVE_PARMSA;
710 typedef MCI_DGV_SAVE_PARMSW *LPMCI_DGV_SAVE_PARMSW;
711 #ifdef UNICODE
712 typedef LPMCI_DGV_SAVE_PARMSW LPMCI_DGV_SAVE_PARMS;
713 #else
714 typedef LPMCI_DGV_SAVE_PARMSA LPMCI_DGV_SAVE_PARMS;
715 #endif
716
717 typedef struct {
718 DWORD_PTR dwCallback;
719 DWORD dwTimeFormat;
720 DWORD dwAudio;
721 DWORD dwFileFormat;
722 DWORD dwSpeed;
723 } MCI_DGV_SET_PARMS;
724
725 typedef MCI_DGV_SET_PARMS *LPMCI_DGV_SET_PARMS;
726
727 typedef struct {
728 DWORD_PTR dwCallback;
729 DWORD dwItem;
730 DWORD dwValue;
731 DWORD dwOver;
732 LPSTR lpstrAlgorithm;
733 LPSTR lpstrQuality;
734 } MCI_DGV_SETAUDIO_PARMSA;
735
736 typedef struct {
737 DWORD_PTR dwCallback;
738 DWORD dwItem;
739 DWORD dwValue;
740 DWORD dwOver;
741 LPWSTR lpstrAlgorithm;
742 LPWSTR lpstrQuality;
743 } MCI_DGV_SETAUDIO_PARMSW;
744
745 #ifdef UNICODE
746 typedef MCI_DGV_SETAUDIO_PARMSW MCI_DGV_SETAUDIO_PARMS;
747 #else
748 typedef MCI_DGV_SETAUDIO_PARMSA MCI_DGV_SETAUDIO_PARMS;
749 #endif
750 typedef MCI_DGV_SETAUDIO_PARMSA *LPMCI_DGV_SETAUDIO_PARMSA;
751 typedef MCI_DGV_SETAUDIO_PARMSW *LPMCI_DGV_SETAUDIO_PARMSW;
752 #ifdef UNICODE
753 typedef LPMCI_DGV_SETAUDIO_PARMSW LPMCI_DGV_SETAUDIO_PARMS;
754 #else
755 typedef LPMCI_DGV_SETAUDIO_PARMSA LPMCI_DGV_SETAUDIO_PARMS;
756 #endif
757
758 typedef struct {
759 DWORD_PTR dwCallback;
760 DWORD dwPosition;
761 DWORD dwPeriod;
762 DWORD dwUserParm;
763 } MCI_DGV_SIGNAL_PARMS;
764 typedef MCI_DGV_SIGNAL_PARMS *LPMCI_DGV_SIGNAL_PARMS;
765
766 typedef struct {
767 DWORD_PTR dwCallback;
768 DWORD dwItem;
769 DWORD dwValue;
770 DWORD dwOver;
771 LPSTR lpstrAlgorithm;
772 LPSTR lpstrQuality;
773 DWORD dwSourceNumber;
774 } MCI_DGV_SETVIDEO_PARMSA;
775
776 typedef struct {
777 DWORD_PTR dwCallback;
778 DWORD dwItem;
779 DWORD dwValue;
780 DWORD dwOver;
781 LPWSTR lpstrAlgorithm;
782 LPWSTR lpstrQuality;
783 DWORD dwSourceNumber;
784 } MCI_DGV_SETVIDEO_PARMSW;
785
786 #ifdef UNICODE
787 typedef MCI_DGV_SETVIDEO_PARMSW MCI_DGV_SETVIDEO_PARMS;
788 #else
789 typedef MCI_DGV_SETVIDEO_PARMSA MCI_DGV_SETVIDEO_PARMS;
790 #endif
791 typedef MCI_DGV_SETVIDEO_PARMSA *LPMCI_DGV_SETVIDEO_PARMSA;
792 typedef MCI_DGV_SETVIDEO_PARMSW *LPMCI_DGV_SETVIDEO_PARMSW;
793 #ifdef UNICODE
794 typedef LPMCI_DGV_SETVIDEO_PARMSW LPMCI_DGV_SETVIDEO_PARMS;
795 #else
796 typedef LPMCI_DGV_SETVIDEO_PARMSA LPMCI_DGV_SETVIDEO_PARMS;
797 #endif
798
799 typedef struct {
800 DWORD_PTR dwCallback;
801 DWORD_PTR dwReturn;
802 DWORD dwItem;
803 DWORD dwTrack;
804 LPSTR lpstrDrive;
805 DWORD dwReference;
806 } MCI_DGV_STATUS_PARMSA;
807 typedef struct {
808 DWORD_PTR dwCallback;
809 DWORD_PTR dwReturn;
810 DWORD dwItem;
811 DWORD dwTrack;
812 LPWSTR lpstrDrive;
813 DWORD dwReference;
814 } MCI_DGV_STATUS_PARMSW;
815 #ifdef UNICODE
816 typedef MCI_DGV_STATUS_PARMSW MCI_DGV_STATUS_PARMS;
817 #else
818 typedef MCI_DGV_STATUS_PARMSA MCI_DGV_STATUS_PARMS;
819 #endif
820 typedef MCI_DGV_STATUS_PARMSA *LPMCI_DGV_STATUS_PARMSA;
821 typedef MCI_DGV_STATUS_PARMSW *LPMCI_DGV_STATUS_PARMSW;
822 #ifdef UNICODE
823 typedef LPMCI_DGV_STATUS_PARMSW LPMCI_DGV_STATUS_PARMS;
824 #else
825 typedef LPMCI_DGV_STATUS_PARMSA LPMCI_DGV_STATUS_PARMS;
826 #endif
827
828 typedef struct {
829 DWORD_PTR dwCallback;
830 DWORD dwFrames;
831 } MCI_DGV_STEP_PARMS;
832 typedef MCI_DGV_STEP_PARMS *LPMCI_DGV_STEP_PARMS;
833
834 typedef MCI_GENERIC_PARMS MCI_DGV_STOP_PARMS;
835 typedef MCI_DGV_STOP_PARMS *LPMCI_DGV_STOP_PARMS;
836
837 typedef MCI_DGV_RECT_PARMS MCI_DGV_UNFREEZE_PARMS;
838 typedef MCI_DGV_UNFREEZE_PARMS *LPMCI_DGV_UNFREEZE_PARMS;
839
840 typedef struct {
841 DWORD_PTR dwCallback;
842 #ifdef MCI_USE_OFFEXT
843 POINT ptOffset;
844 POINT ptExtent;
845 #else
846 RECT rc;
847 #endif
848 HDC hDC;
849 } MCI_DGV_UPDATE_PARMS;
850
851 typedef MCI_DGV_UPDATE_PARMS *LPMCI_DGV_UPDATE_PARMS;
852
853 typedef MCI_DGV_RECT_PARMS MCI_DGV_WHERE_PARMS;
854 typedef MCI_DGV_WHERE_PARMS *LPMCI_DGV_WHERE_PARMS;
855
856 typedef struct {
857 DWORD_PTR dwCallback;
858 HWND hWnd;
859 UINT nCmdShow;
860 LPSTR lpstrText;
861 } MCI_DGV_WINDOW_PARMSA;
862
863 typedef struct {
864 DWORD_PTR dwCallback;
865 HWND hWnd;
866 UINT nCmdShow;
867 LPWSTR lpstrText;
868 } MCI_DGV_WINDOW_PARMSW;
869
870 #ifdef UNICODE
871 typedef MCI_DGV_WINDOW_PARMSW MCI_DGV_WINDOW_PARMS;
872 #else
873 typedef MCI_DGV_WINDOW_PARMSA MCI_DGV_WINDOW_PARMS;
874 #endif
875 typedef MCI_DGV_WINDOW_PARMSA *LPMCI_DGV_WINDOW_PARMSA;
876 typedef MCI_DGV_WINDOW_PARMSW *LPMCI_DGV_WINDOW_PARMSW;
877 #ifdef UNICODE
878 typedef LPMCI_DGV_WINDOW_PARMSW LPMCI_DGV_WINDOW_PARMS;
879 #else
880 typedef LPMCI_DGV_WINDOW_PARMSA LPMCI_DGV_WINDOW_PARMS;
881 #endif
882
883 #ifdef __cplusplus
884 }
885 #endif
886
887 #include <poppack.h>
888
889 #endif