ntdll: Change the virtual memory test to accept both READWRITE and WRITECOPY protections.
[wine.git] / include / digitalv.h
bloba4ceb54903e3ae503ab58797c4bfaa8242470210
1 /*
2 * Copyright (C) 1999 Eric Pouech
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 #ifndef __WINE_DIGITALV_H
20 #define __WINE_DIGITALV_H
23 * Wine Digital Video extensions
26 #ifdef __cplusplus
27 extern "C" {
28 #endif
30 #define MCI_TEST __MSABI_LONG(0x00000020)
32 /* Message values */
34 #define MCI_CAPTURE 0x0870
35 #define MCI_MONITOR 0x0871
36 #define MCI_RESERVE 0x0872
37 #define MCI_SETAUDIO 0x0873
38 #define MCI_SIGNAL 0x0875
39 #define MCI_SETVIDEO 0x0876
40 #define MCI_QUALITY 0x0877
41 #define MCI_LIST 0x0878
42 #define MCI_UNDO 0x0879
43 #define MCI_CONFIGURE 0x087A
44 #define MCI_RESTORE 0x087B
46 /* Return and string constant values */
48 #define MCI_ON 1
49 #define MCI_OFF 0
51 #define MCI_DGV_FILE_MODE_SAVING 0x0001
52 #define MCI_DGV_FILE_MODE_LOADING 0x0002
53 #define MCI_DGV_FILE_MODE_EDITING 0x0003
54 #define MCI_DGV_FILE_MODE_IDLE 0x0004
56 /* These identifiers are used only by device drivers */
58 #define MCI_ON_S __MSABI_LONG(0x00008000)
59 #define MCI_OFF_S __MSABI_LONG(0x00008001)
60 #define MCI_DGV_FILE_S __MSABI_LONG(0x00008002)
61 #define MCI_DGV_INPUT_S __MSABI_LONG(0x00008003)
63 #define MCI_DGV_FILE_MODE_SAVING_S __MSABI_LONG(0x00008004)
64 #define MCI_DGV_FILE_MODE_LOADING_S __MSABI_LONG(0x00008005)
65 #define MCI_DGV_FILE_MODE_EDITING_S __MSABI_LONG(0x00008006)
66 #define MCI_DGV_FILE_MODE_IDLE_S __MSABI_LONG(0x00008007)
68 #define MCI_DGV_SETVIDEO_SRC_NTSC_S __MSABI_LONG(0x00008010)
69 #define MCI_DGV_SETVIDEO_SRC_RGB_S __MSABI_LONG(0x00008011)
70 #define MCI_DGV_SETVIDEO_SRC_SVIDEO_S __MSABI_LONG(0x00008012)
71 #define MCI_DGV_SETVIDEO_SRC_PAL_S __MSABI_LONG(0x00008013)
72 #define MCI_DGV_SETVIDEO_SRC_SECAM_S __MSABI_LONG(0x00008014)
73 #define MCI_DGV_SETVIDEO_SRC_GENERIC_S __MSABI_LONG(0x00008015)
75 #define MCI_DGV_SETAUDIO_SRC_LEFT_S __MSABI_LONG(0x00008020)
76 #define MCI_DGV_SETAUDIO_SRC_RIGHT_S __MSABI_LONG(0x00008021)
77 #define MCI_DGV_SETAUDIO_SRC_AVERAGE_S __MSABI_LONG(0x00008022)
78 #define MCI_DGV_SETAUDIO_SRC_STEREO_S __MSABI_LONG(0x00008023)
80 /* Window message for signal notification */
82 #ifndef MM_MCISIGNAL
83 #define MM_MCISIGNAL 0x3CB
84 #endif
86 /* error values */
88 #define MCIERR_DGV_DEVICE_LIMIT (MCIERR_CUSTOM_DRIVER_BASE+0)
89 #define MCIERR_DGV_IOERR (MCIERR_CUSTOM_DRIVER_BASE+1)
90 #define MCIERR_DGV_WORKSPACE_EMPTY (MCIERR_CUSTOM_DRIVER_BASE+2)
91 #define MCIERR_DGV_DISK_FULL (MCIERR_CUSTOM_DRIVER_BASE+3)
92 #define MCIERR_DGV_DEVICE_MEMORY_FULL (MCIERR_CUSTOM_DRIVER_BASE+4)
93 #define MCIERR_DGV_BAD_CLIPBOARD_RANGE (MCIERR_CUSTOM_DRIVER_BASE+5)
95 /* defines for monitor methods */
97 #define MCI_DGV_METHOD_PRE __MSABI_LONG(0x0000a000)
98 #define MCI_DGV_METHOD_POST __MSABI_LONG(0x0000a001)
99 #define MCI_DGV_METHOD_DIRECT __MSABI_LONG(0x0000a002)
101 /* defines for known file formats */
103 #define MCI_DGV_FF_AVSS __MSABI_LONG(0x00004000)
104 #define MCI_DGV_FF_AVI __MSABI_LONG(0x00004001)
105 #define MCI_DGV_FF_DIB __MSABI_LONG(0x00004002)
106 #define MCI_DGV_FF_RDIB __MSABI_LONG(0x00004003)
107 #define MCI_DGV_FF_JPEG __MSABI_LONG(0x00004004)
108 #define MCI_DGV_FF_RJPEG __MSABI_LONG(0x00004005)
109 #define MCI_DGV_FF_JFIF __MSABI_LONG(0x00004006)
110 #define MCI_DGV_FF_MPEG __MSABI_LONG(0x00004007)
112 /* values for dwItem field of MCI_CAPABILITY_PARMS structure */
114 #define MCI_DGV_GETDEVCAPS_CAN_LOCK __MSABI_LONG(0x00004000)
115 #define MCI_DGV_GETDEVCAPS_CAN_STRETCH __MSABI_LONG(0x00004001)
116 #define MCI_DGV_GETDEVCAPS_CAN_FREEZE __MSABI_LONG(0x00004002)
117 #define MCI_DGV_GETDEVCAPS_MAX_WINDOWS __MSABI_LONG(0x00004003)
118 #define MCI_DGV_GETDEVCAPS_CAN_REVERSE __MSABI_LONG(0x00004004)
119 #define MCI_DGV_GETDEVCAPS_HAS_STILL __MSABI_LONG(0x00004005)
120 #define MCI_DGV_GETDEVCAPS_PALETTES __MSABI_LONG(0x00004006)
121 #define MCI_DGV_GETDEVCAPS_CAN_STR_IN __MSABI_LONG(0x00004008)
122 #define MCI_DGV_GETDEVCAPS_CAN_TEST __MSABI_LONG(0x00004009)
123 #define MCI_DGV_GETDEVCAPS_MAXIMUM_RATE __MSABI_LONG(0x0000400a)
124 #define MCI_DGV_GETDEVCAPS_MINIMUM_RATE __MSABI_LONG(0x0000400b)
126 /* flags for dwFlags parameter of MCI_CAPTURE command message */
128 #define MCI_DGV_CAPTURE_AS __MSABI_LONG(0x00010000)
129 #define MCI_DGV_CAPTURE_AT __MSABI_LONG(0x00020000)
131 /* flags for dwFlags parameter of MCI_COPY command message */
133 #define MCI_DGV_COPY_AT __MSABI_LONG(0x00010000)
134 #define MCI_DGV_COPY_AUDIO_STREAM __MSABI_LONG(0x00020000)
135 #define MCI_DGV_COPY_VIDEO_STREAM __MSABI_LONG(0x00040000)
137 /* flags for dwFlags parameter of MCI_CUE command message */
139 #define MCI_DGV_CUE_INPUT __MSABI_LONG(0x00010000)
140 #define MCI_DGV_CUE_OUTPUT __MSABI_LONG(0x00020000)
141 #define MCI_DGV_CUE_NOSHOW __MSABI_LONG(0x00040000)
143 /* flags for dwFlags parameter of MCI_CUT command message */
145 #define MCI_DGV_CUT_AT __MSABI_LONG(0x00010000)
146 #define MCI_DGV_CUT_AUDIO_STREAM __MSABI_LONG(0x00020000)
147 #define MCI_DGV_CUT_VIDEO_STREAM __MSABI_LONG(0x00040000)
149 /* flags for dwFlags parameter of MCI_DELETE command message */
151 #define MCI_DGV_DELETE_AT __MSABI_LONG(0x00010000)
152 #define MCI_DGV_DELETE_AUDIO_STREAM __MSABI_LONG(0x00020000)
153 #define MCI_DGV_DELETE_VIDEO_STREAM __MSABI_LONG(0x00040000)
155 /* flags for dwFlags parameter of MCI_FREEZE command message */
157 #define MCI_DGV_FREEZE_AT __MSABI_LONG(0x00010000)
158 #define MCI_DGV_FREEZE_OUTSIDE __MSABI_LONG(0x00020000)
160 /* flags for dwFlags parameter of MCI_INFO command message */
162 #define MCI_DGV_INFO_TEXT __MSABI_LONG(0x00010000)
163 #define MCI_DGV_INFO_ITEM __MSABI_LONG(0x00020000)
165 /* values for dwItem field of MCI_DGV_INFO_PARMS structure */
167 #define MCI_INFO_VERSION __MSABI_LONG(0x00000400)
169 #define MCI_DGV_INFO_USAGE __MSABI_LONG(0x00004000)
170 #define MCI_DGV_INFO_AUDIO_QUALITY __MSABI_LONG(0x00004001)
171 #define MCI_DGV_INFO_STILL_QUALITY __MSABI_LONG(0x00004002)
172 #define MCI_DGV_INFO_VIDEO_QUALITY __MSABI_LONG(0x00004003)
173 #define MCI_DGV_INFO_AUDIO_ALG __MSABI_LONG(0x00004004)
174 #define MCI_DGV_INFO_STILL_ALG __MSABI_LONG(0x00004005)
175 #define MCI_DGV_INFO_VIDEO_ALG __MSABI_LONG(0x00004006)
177 /* flags for dwFlags parameter of MCI_LIST command message */
179 #define MCI_DGV_LIST_ITEM __MSABI_LONG(0x00010000)
180 #define MCI_DGV_LIST_COUNT __MSABI_LONG(0x00020000)
181 #define MCI_DGV_LIST_NUMBER __MSABI_LONG(0x00040000)
182 #define MCI_DGV_LIST_ALG __MSABI_LONG(0x00080000)
184 /* values for dwItem field of MCI_DGV_LIST_PARMS structure */
186 #define MCI_DGV_LIST_AUDIO_ALG __MSABI_LONG(0x00004000)
187 #define MCI_DGV_LIST_AUDIO_QUALITY __MSABI_LONG(0x00004001)
188 #define MCI_DGV_LIST_AUDIO_STREAM __MSABI_LONG(0x00004002)
189 #define MCI_DGV_LIST_STILL_ALG __MSABI_LONG(0x00004003)
190 #define MCI_DGV_LIST_STILL_QUALITY __MSABI_LONG(0x00004004)
191 #define MCI_DGV_LIST_VIDEO_ALG __MSABI_LONG(0x00004005)
192 #define MCI_DGV_LIST_VIDEO_QUALITY __MSABI_LONG(0x00004006)
193 #define MCI_DGV_LIST_VIDEO_STREAM __MSABI_LONG(0x00004007)
194 #define MCI_DGV_LIST_VIDEO_SOURCE __MSABI_LONG(0x00004008)
197 /* flags for dwFlags parameter of MCI_MONITOR command message */
199 #define MCI_DGV_MONITOR_METHOD __MSABI_LONG(0x00010000)
200 #define MCI_DGV_MONITOR_SOURCE __MSABI_LONG(0x00020000)
202 /* values for dwSource parameter of the MCI_DGV_MONITOR_PARMS structure */
204 #define MCI_DGV_MONITOR_INPUT __MSABI_LONG(0x00004000)
205 #define MCI_DGV_MONITOR_FILE __MSABI_LONG(0x00004001)
207 /* flags for dwFlags parameter of MCI_OPEN command message */
209 #define MCI_DGV_OPEN_WS __MSABI_LONG(0x00010000)
210 #define MCI_DGV_OPEN_PARENT __MSABI_LONG(0x00020000)
211 #define MCI_DGV_OPEN_NOSTATIC __MSABI_LONG(0x00040000)
212 #define MCI_DGV_OPEN_16BIT __MSABI_LONG(0x00080000)
213 #define MCI_DGV_OPEN_32BIT __MSABI_LONG(0x00100000)
215 /* flags for dwFlags parameter of MCI_PASTE command message */
217 #define MCI_DGV_PASTE_AT __MSABI_LONG(0x00010000)
218 #define MCI_DGV_PASTE_AUDIO_STREAM __MSABI_LONG(0x00020000)
219 #define MCI_DGV_PASTE_VIDEO_STREAM __MSABI_LONG(0x00040000)
220 #define MCI_DGV_PASTE_INSERT __MSABI_LONG(0x00080000)
221 #define MCI_DGV_PASTE_OVERWRITE __MSABI_LONG(0x00100000)
223 /* flags for dwFlags parameter of MCI_PLAY command message */
225 #define MCI_DGV_PLAY_REPEAT __MSABI_LONG(0x00010000)
226 #define MCI_DGV_PLAY_REVERSE __MSABI_LONG(0x00020000)
228 /* flags for dwFlags parameter of MCI_PUT command message */
230 #define MCI_DGV_RECT __MSABI_LONG(0x00010000)
231 #define MCI_DGV_PUT_SOURCE __MSABI_LONG(0x00020000)
232 #define MCI_DGV_PUT_DESTINATION __MSABI_LONG(0x00040000)
233 #define MCI_DGV_PUT_FRAME __MSABI_LONG(0x00080000)
234 #define MCI_DGV_PUT_VIDEO __MSABI_LONG(0x00100000)
235 #define MCI_DGV_PUT_WINDOW __MSABI_LONG(0x00200000)
236 #define MCI_DGV_PUT_CLIENT __MSABI_LONG(0x00400000)
238 /* flags for dwFlags parameter of MCI_QUALITY command message */
240 #define MCI_QUALITY_ITEM __MSABI_LONG(0x00010000)
241 #define MCI_QUALITY_NAME __MSABI_LONG(0x00020000)
242 #define MCI_QUALITY_ALG __MSABI_LONG(0x00040000)
243 #define MCI_QUALITY_DIALOG __MSABI_LONG(0x00080000)
244 #define MCI_QUALITY_HANDLE __MSABI_LONG(0x00100000)
246 /* values for dwItem field of MCI_QUALITY_PARMS structure */
248 #define MCI_QUALITY_ITEM_AUDIO __MSABI_LONG(0x00004000)
249 #define MCI_QUALITY_ITEM_STILL __MSABI_LONG(0x00004001)
250 #define MCI_QUALITY_ITEM_VIDEO __MSABI_LONG(0x00004002)
252 /* flags for dwFlags parameter of MCI_REALIZE command message */
254 #define MCI_DGV_REALIZE_NORM __MSABI_LONG(0x00010000)
255 #define MCI_DGV_REALIZE_BKGD __MSABI_LONG(0x00020000)
257 /* flags for dwFlags parameter of MCI_RECORD command message */
259 #define MCI_DGV_RECORD_HOLD __MSABI_LONG(0x00020000)
260 #define MCI_DGV_RECORD_AUDIO_STREAM __MSABI_LONG(0x00040000)
261 #define MCI_DGV_RECORD_VIDEO_STREAM __MSABI_LONG(0x00080000)
263 /* flags for dwFlags parameters of MCI_RESERVE command message */
265 #define MCI_DGV_RESERVE_IN __MSABI_LONG(0x00010000)
266 #define MCI_DGV_RESERVE_SIZE __MSABI_LONG(0x00020000)
268 /* flags for dwFlags parameter of MCI_RESTORE command message */
270 #define MCI_DGV_RESTORE_FROM __MSABI_LONG(0x00010000)
271 #define MCI_DGV_RESTORE_AT __MSABI_LONG(0x00020000)
273 /* flags for dwFlags parameters of MCI_SAVE command message */
275 #define MCI_DGV_SAVE_ABORT __MSABI_LONG(0x00020000)
276 #define MCI_DGV_SAVE_KEEPRESERVE __MSABI_LONG(0x00040000)
278 /* flags for dwFlags parameters of MCI_SET command message */
280 #define MCI_DGV_SET_SEEK_EXACTLY __MSABI_LONG(0x00010000)
281 #define MCI_DGV_SET_SPEED __MSABI_LONG(0x00020000)
282 #define MCI_DGV_SET_STILL __MSABI_LONG(0x00040000)
283 #define MCI_DGV_SET_FILEFORMAT __MSABI_LONG(0x00080000)
285 /* flags for the dwFlags parameter of MCI_SETAUDIO command message */
287 #define MCI_DGV_SETAUDIO_OVER __MSABI_LONG(0x00010000)
288 #define MCI_DGV_SETAUDIO_CLOCKTIME __MSABI_LONG(0x00020000)
289 #define MCI_DGV_SETAUDIO_ALG __MSABI_LONG(0x00040000)
290 #define MCI_DGV_SETAUDIO_QUALITY __MSABI_LONG(0x00080000)
291 #define MCI_DGV_SETAUDIO_RECORD __MSABI_LONG(0x00100000)
292 #define MCI_DGV_SETAUDIO_LEFT __MSABI_LONG(0x00200000)
293 #define MCI_DGV_SETAUDIO_RIGHT __MSABI_LONG(0x00400000)
294 #define MCI_DGV_SETAUDIO_ITEM __MSABI_LONG(0x00800000)
295 #define MCI_DGV_SETAUDIO_VALUE __MSABI_LONG(0x01000000)
296 #define MCI_DGV_SETAUDIO_INPUT __MSABI_LONG(0x02000000)
297 #define MCI_DGV_SETAUDIO_OUTPUT __MSABI_LONG(0x04000000)
299 /* values for the dwItem parameter of MCI_DGV_SETAUDIO_PARMS */
301 #define MCI_DGV_SETAUDIO_TREBLE __MSABI_LONG(0x00004000)
302 #define MCI_DGV_SETAUDIO_BASS __MSABI_LONG(0x00004001)
303 #define MCI_DGV_SETAUDIO_VOLUME __MSABI_LONG(0x00004002)
304 #define MCI_DGV_SETAUDIO_STREAM __MSABI_LONG(0x00004003)
305 #define MCI_DGV_SETAUDIO_SOURCE __MSABI_LONG(0x00004004)
306 #define MCI_DGV_SETAUDIO_SAMPLESPERSEC __MSABI_LONG(0x00004005)
307 #define MCI_DGV_SETAUDIO_AVGBYTESPERSEC __MSABI_LONG(0x00004006)
308 #define MCI_DGV_SETAUDIO_BLOCKALIGN __MSABI_LONG(0x00004007)
309 #define MCI_DGV_SETAUDIO_BITSPERSAMPLE __MSABI_LONG(0x00004008)
311 /* values for the dwValue parameter of MCI_DGV_SETAUDIO_PARMS
312 used with MCI_DGV_SETAUDIO_SOURCE */
314 #define MCI_DGV_SETAUDIO_SOURCE_STEREO __MSABI_LONG(0x00000000)
315 #define MCI_DGV_SETAUDIO_SOURCE_LEFT __MSABI_LONG(0x00000001)
316 #define MCI_DGV_SETAUDIO_SOURCE_RIGHT __MSABI_LONG(0x00000002)
317 #define MCI_DGV_SETAUDIO_SOURCE_AVERAGE __MSABI_LONG(0x00004000)
319 /* flags for the dwFlags parameter of MCI_SETVIDEO command */
321 #define MCI_DGV_SETVIDEO_QUALITY __MSABI_LONG(0x00010000)
322 #define MCI_DGV_SETVIDEO_ALG __MSABI_LONG(0x00020000)
323 #define MCI_DGV_SETVIDEO_CLOCKTIME __MSABI_LONG(0x00040000)
324 #define MCI_DGV_SETVIDEO_SRC_NUMBER __MSABI_LONG(0x00080000)
325 #define MCI_DGV_SETVIDEO_ITEM __MSABI_LONG(0x00100000)
326 #define MCI_DGV_SETVIDEO_OVER __MSABI_LONG(0x00200000)
327 #define MCI_DGV_SETVIDEO_RECORD __MSABI_LONG(0x00400000)
328 #define MCI_DGV_SETVIDEO_STILL __MSABI_LONG(0x00800000)
329 #define MCI_DGV_SETVIDEO_VALUE __MSABI_LONG(0x01000000)
330 #define MCI_DGV_SETVIDEO_INPUT __MSABI_LONG(0x02000000)
331 #define MCI_DGV_SETVIDEO_OUTPUT __MSABI_LONG(0x04000000)
333 /* values for the dwTo field of MCI_SETVIDEO_PARMS
334 used with MCI_DGV_SETVIDEO_SOURCE */
336 #define MCI_DGV_SETVIDEO_SRC_NTSC __MSABI_LONG(0x00004000)
337 #define MCI_DGV_SETVIDEO_SRC_RGB __MSABI_LONG(0x00004001)
338 #define MCI_DGV_SETVIDEO_SRC_SVIDEO __MSABI_LONG(0x00004002)
339 #define MCI_DGV_SETVIDEO_SRC_PAL __MSABI_LONG(0x00004003)
340 #define MCI_DGV_SETVIDEO_SRC_SECAM __MSABI_LONG(0x00004004)
341 #define MCI_DGV_SETVIDEO_SRC_GENERIC __MSABI_LONG(0x00004005)
343 /* values for the dwItem field of MCI_SETVIDEO_PARMS */
345 #define MCI_DGV_SETVIDEO_BRIGHTNESS __MSABI_LONG(0x00004000)
346 #define MCI_DGV_SETVIDEO_COLOR __MSABI_LONG(0x00004001)
347 #define MCI_DGV_SETVIDEO_CONTRAST __MSABI_LONG(0x00004002)
348 #define MCI_DGV_SETVIDEO_TINT __MSABI_LONG(0x00004003)
349 #define MCI_DGV_SETVIDEO_SHARPNESS __MSABI_LONG(0x00004004)
350 #define MCI_DGV_SETVIDEO_GAMMA __MSABI_LONG(0x00004005)
351 #define MCI_DGV_SETVIDEO_STREAM __MSABI_LONG(0x00004006)
352 #define MCI_DGV_SETVIDEO_PALHANDLE __MSABI_LONG(0x00004007)
353 #define MCI_DGV_SETVIDEO_FRAME_RATE __MSABI_LONG(0x00004008)
354 #define MCI_DGV_SETVIDEO_SOURCE __MSABI_LONG(0x00004009)
355 #define MCI_DGV_SETVIDEO_KEY_INDEX __MSABI_LONG(0x0000400a)
356 #define MCI_DGV_SETVIDEO_KEY_COLOR __MSABI_LONG(0x0000400b)
357 #define MCI_DGV_SETVIDEO_BITSPERPEL __MSABI_LONG(0x0000400c)
359 /* flags for the dwFlags parameter of MCI_SIGNAL */
361 #define MCI_DGV_SIGNAL_AT __MSABI_LONG(0x00010000)
362 #define MCI_DGV_SIGNAL_EVERY __MSABI_LONG(0x00020000)
363 #define MCI_DGV_SIGNAL_USERVAL __MSABI_LONG(0x00040000)
364 #define MCI_DGV_SIGNAL_CANCEL __MSABI_LONG(0x00080000)
365 #define MCI_DGV_SIGNAL_POSITION __MSABI_LONG(0x00100000)
367 /* flags for the dwFlags parameter of MCI_STATUS command */
369 #define MCI_DGV_STATUS_NOMINAL __MSABI_LONG(0x00020000)
370 #define MCI_DGV_STATUS_REFERENCE __MSABI_LONG(0x00040000)
371 #define MCI_DGV_STATUS_LEFT __MSABI_LONG(0x00080000)
372 #define MCI_DGV_STATUS_RIGHT __MSABI_LONG(0x00100000)
373 #define MCI_DGV_STATUS_DISKSPACE __MSABI_LONG(0x00200000)
374 #define MCI_DGV_STATUS_INPUT __MSABI_LONG(0x00400000)
375 #define MCI_DGV_STATUS_OUTPUT __MSABI_LONG(0x00800000)
376 #define MCI_DGV_STATUS_RECORD __MSABI_LONG(0x01000000)
378 /* values for dwItem field of MCI_STATUS_PARMS structure */
380 #define MCI_DGV_STATUS_AUDIO_INPUT __MSABI_LONG(0x00004000)
381 #define MCI_DGV_STATUS_HWND __MSABI_LONG(0x00004001)
382 #define MCI_DGV_STATUS_SPEED __MSABI_LONG(0x00004003)
383 #define MCI_DGV_STATUS_HPAL __MSABI_LONG(0x00004004)
384 #define MCI_DGV_STATUS_BRIGHTNESS __MSABI_LONG(0x00004005)
385 #define MCI_DGV_STATUS_COLOR __MSABI_LONG(0x00004006)
386 #define MCI_DGV_STATUS_CONTRAST __MSABI_LONG(0x00004007)
387 #define MCI_DGV_STATUS_FILEFORMAT __MSABI_LONG(0x00004008)
388 #define MCI_DGV_STATUS_AUDIO_SOURCE __MSABI_LONG(0x00004009)
389 #define MCI_DGV_STATUS_GAMMA __MSABI_LONG(0x0000400a)
390 #define MCI_DGV_STATUS_MONITOR __MSABI_LONG(0x0000400b)
391 #define MCI_DGV_STATUS_MONITOR_METHOD __MSABI_LONG(0x0000400c)
392 #define MCI_DGV_STATUS_FRAME_RATE __MSABI_LONG(0x0000400e)
393 #define MCI_DGV_STATUS_BASS __MSABI_LONG(0x0000400f)
394 #define MCI_DGV_STATUS_SIZE __MSABI_LONG(0x00004010)
395 #define MCI_DGV_STATUS_SEEK_EXACTLY __MSABI_LONG(0x00004011)
396 #define MCI_DGV_STATUS_SHARPNESS __MSABI_LONG(0x00004012)
397 #define MCI_DGV_STATUS_SMPTE __MSABI_LONG(0x00004013)
398 #define MCI_DGV_STATUS_AUDIO __MSABI_LONG(0x00004014)
399 #define MCI_DGV_STATUS_TINT __MSABI_LONG(0x00004015)
400 #define MCI_DGV_STATUS_TREBLE __MSABI_LONG(0x00004016)
401 #define MCI_DGV_STATUS_UNSAVED __MSABI_LONG(0x00004017)
402 #define MCI_DGV_STATUS_VIDEO __MSABI_LONG(0x00004018)
403 #define MCI_DGV_STATUS_VOLUME __MSABI_LONG(0x00004019)
404 #define MCI_DGV_STATUS_AUDIO_RECORD __MSABI_LONG(0x0000401a)
405 #define MCI_DGV_STATUS_VIDEO_SOURCE __MSABI_LONG(0x0000401b)
406 #define MCI_DGV_STATUS_VIDEO_RECORD __MSABI_LONG(0x0000401c)
407 #define MCI_DGV_STATUS_STILL_FILEFORMAT __MSABI_LONG(0x0000401d)
408 #define MCI_DGV_STATUS_VIDEO_SRC_NUM __MSABI_LONG(0x0000401e)
409 #define MCI_DGV_STATUS_FILE_MODE __MSABI_LONG(0x0000401f)
410 #define MCI_DGV_STATUS_FILE_COMPLETION __MSABI_LONG(0x00004020)
411 #define MCI_DGV_STATUS_WINDOW_VISIBLE __MSABI_LONG(0x00004021)
412 #define MCI_DGV_STATUS_WINDOW_MINIMIZED __MSABI_LONG(0x00004022)
413 #define MCI_DGV_STATUS_WINDOW_MAXIMIZED __MSABI_LONG(0x00004023)
414 #define MCI_DGV_STATUS_KEY_INDEX __MSABI_LONG(0x00004024)
415 #define MCI_DGV_STATUS_KEY_COLOR __MSABI_LONG(0x00004025)
416 #define MCI_DGV_STATUS_PAUSE_MODE __MSABI_LONG(0x00004026)
417 #define MCI_DGV_STATUS_SAMPLESPERSEC __MSABI_LONG(0x00004027)
418 #define MCI_DGV_STATUS_AVGBYTESPERSEC __MSABI_LONG(0x00004028)
419 #define MCI_DGV_STATUS_BLOCKALIGN __MSABI_LONG(0x00004029)
420 #define MCI_DGV_STATUS_BITSPERSAMPLE __MSABI_LONG(0x0000402a)
421 #define MCI_DGV_STATUS_BITSPERPEL __MSABI_LONG(0x0000402b)
422 #define MCI_DGV_STATUS_FORWARD __MSABI_LONG(0x0000402c)
423 #define MCI_DGV_STATUS_AUDIO_STREAM __MSABI_LONG(0x0000402d)
424 #define MCI_DGV_STATUS_VIDEO_STREAM __MSABI_LONG(0x0000402e)
426 /* flags for dwFlags parameter of MCI_STEP command message */
428 #define MCI_DGV_STEP_REVERSE __MSABI_LONG(0x00010000)
429 #define MCI_DGV_STEP_FRAMES __MSABI_LONG(0x00020000)
431 /* flags for dwFlags parameter of MCI_STOP command message */
433 #define MCI_DGV_STOP_HOLD __MSABI_LONG(0x00010000)
435 /* flags for dwFlags parameter of MCI_UPDATE command message */
437 #define MCI_DGV_UPDATE_HDC __MSABI_LONG(0x00020000)
438 #define MCI_DGV_UPDATE_PAINT __MSABI_LONG(0x00040000)
440 /* flags for dwFlags parameter of MCI_WHERE command message */
442 #define MCI_DGV_WHERE_SOURCE __MSABI_LONG(0x00020000)
443 #define MCI_DGV_WHERE_DESTINATION __MSABI_LONG(0x00040000)
444 #define MCI_DGV_WHERE_FRAME __MSABI_LONG(0x00080000)
445 #define MCI_DGV_WHERE_VIDEO __MSABI_LONG(0x00100000)
446 #define MCI_DGV_WHERE_WINDOW __MSABI_LONG(0x00200000)
447 #define MCI_DGV_WHERE_MAX __MSABI_LONG(0x00400000)
449 /* flags for dwFlags parameter of MCI_WINDOW command message */
451 #define MCI_DGV_WINDOW_HWND __MSABI_LONG(0x00010000)
452 #define MCI_DGV_WINDOW_STATE __MSABI_LONG(0x00040000)
453 #define MCI_DGV_WINDOW_TEXT __MSABI_LONG(0x00080000)
455 /* flags for hWnd parameter of MCI_DGV_WINDOW_PARMS parameter block */
457 #define MCI_DGV_WINDOW_DEFAULT __MSABI_LONG(0x00000000)
459 /* parameter block for MCI_WHERE, MCI_PUT, MCI_FREEZE, MCI_UNFREEZE cmds */
461 typedef struct {
462 DWORD_PTR dwCallback;
463 RECT rc;
464 } MCI_DGV_RECT_PARMS, *LPMCI_DGV_RECT_PARMS;
466 /* parameter block for MCI_CAPTURE command message */
468 typedef struct {
469 DWORD_PTR dwCallback;
470 LPSTR lpstrFileName;
471 RECT rc;
472 } MCI_DGV_CAPTURE_PARMSA, *LPMCI_DGV_CAPTURE_PARMSA;
474 typedef struct {
475 DWORD_PTR dwCallback;
476 LPWSTR lpstrFileName;
477 RECT rc;
478 } MCI_DGV_CAPTURE_PARMSW, *LPMCI_DGV_CAPTURE_PARMSW;
480 DECL_WINELIB_TYPE_AW(MCI_DGV_CAPTURE_PARMS)
481 DECL_WINELIB_TYPE_AW(LPMCI_DGV_CAPTURE_PARMS)
483 /* parameter block for MCI_CLOSE command message */
485 typedef MCI_GENERIC_PARMS MCI_CLOSE_PARMS, *LPMCI_CLOSE_PARMS;
487 /* parameter block for MCI_COPY command message */
489 typedef struct {
490 DWORD_PTR dwCallback;
491 DWORD dwFrom;
492 DWORD dwTo;
493 RECT rc;
494 DWORD dwAudioStream;
495 DWORD dwVideoStream;
496 } MCI_DGV_COPY_PARMS, *LPMCI_DGV_COPY_PARMS;
498 /* parameter block for MCI_CUE command message */
500 typedef struct {
501 DWORD_PTR dwCallback;
502 DWORD dwTo;
503 } MCI_DGV_CUE_PARMS, *LPMCI_DGV_CUE_PARMS;
505 /* parameter block for MCI_CUT command message */
507 typedef struct {
508 DWORD_PTR dwCallback;
509 DWORD dwFrom;
510 DWORD dwTo;
511 RECT rc;
512 DWORD dwAudioStream;
513 DWORD dwVideoStream;
514 } MCI_DGV_CUT_PARMS, * LPMCI_DGV_CUT_PARMS;
516 /* parameter block for MCI_DELETE command message */
518 typedef struct {
519 DWORD_PTR dwCallback;
520 DWORD dwFrom;
521 DWORD dwTo;
522 RECT rc;
523 DWORD dwAudioStream;
524 DWORD dwVideoStream;
525 } MCI_DGV_DELETE_PARMS, * LPMCI_DGV_DELETE_PARMS;
527 /* parameter block for MCI_FREEZE command message */
529 typedef MCI_DGV_RECT_PARMS MCI_DGV_FREEZE_PARMS, * LPMCI_DGV_FREEZE_PARMS;
531 /* parameter block for MCI_INFO command message */
533 typedef struct {
534 DWORD_PTR dwCallback;
535 LPSTR lpstrReturn;
536 DWORD dwRetSize;
537 DWORD dwItem;
538 } MCI_DGV_INFO_PARMSA, * LPMCI_DGV_INFO_PARMSA;
540 typedef struct {
541 DWORD_PTR dwCallback;
542 LPWSTR lpstrReturn;
543 DWORD dwRetSize;
544 DWORD dwItem;
545 } MCI_DGV_INFO_PARMSW, *LPMCI_DGV_INFO_PARMSW;
547 DECL_WINELIB_TYPE_AW(MCI_DGV_INFO_PARMS)
548 DECL_WINELIB_TYPE_AW(LPMCI_DGV_INFO_PARMS)
550 /* parameter block for MCI_LIST command message */
552 typedef struct {
553 DWORD_PTR dwCallback;
554 LPSTR lpstrReturn;
555 DWORD dwLength;
556 DWORD dwNumber;
557 DWORD dwItem;
558 LPSTR lpstrAlgorithm;
559 } MCI_DGV_LIST_PARMSA, *LPMCI_DGV_LIST_PARMSA;
561 typedef struct {
562 DWORD_PTR dwCallback;
563 LPWSTR lpstrReturn;
564 DWORD dwLength;
565 DWORD dwNumber;
566 DWORD dwItem;
567 LPWSTR lpstrAlgorithm;
568 } MCI_DGV_LIST_PARMSW, *LPMCI_DGV_LIST_PARMSW;
570 DECL_WINELIB_TYPE_AW(MCI_DGV_LIST_PARMS)
571 DECL_WINELIB_TYPE_AW(LPMCI_DGV_LIST_PARMS)
573 /* parameter block for MCI_LOAD command message */
575 typedef MCI_LOAD_PARMSA MCI_DGV_LOAD_PARMSA, * LPMCI_DGV_LOAD_PARMSA;
576 typedef MCI_LOAD_PARMSW MCI_DGV_LOAD_PARMSW, * LPMCI_DGV_LOAD_PARMSW;
578 DECL_WINELIB_TYPE_AW(MCI_DGV_LOAD_PARMS)
579 DECL_WINELIB_TYPE_AW(LPMCI_DGV_LOAD_PARMS)
581 /* parameter block for MCI_MONITOR command message */
583 typedef struct {
584 DWORD_PTR dwCallback;
585 DWORD dwSource;
586 DWORD dwMethod;
587 } MCI_DGV_MONITOR_PARMS, * LPMCI_DGV_MONITOR_PARMS;
589 /* parameter block for MCI_OPEN command message */
591 typedef struct {
592 DWORD_PTR dwCallback;
593 UINT wDeviceID;
594 LPSTR lpstrDeviceType;
595 LPSTR lpstrElementName;
596 LPSTR lpstrAlias;
597 DWORD dwStyle;
598 HWND hWndParent;
599 } MCI_DGV_OPEN_PARMSA, *LPMCI_DGV_OPEN_PARMSA;
601 typedef struct {
602 DWORD_PTR dwCallback;
603 UINT wDeviceID;
604 LPWSTR lpstrDeviceType;
605 LPWSTR lpstrElementName;
606 LPWSTR lpstrAlias;
607 DWORD dwStyle;
608 HWND hWndParent;
609 } MCI_DGV_OPEN_PARMSW, *LPMCI_DGV_OPEN_PARMSW;
611 DECL_WINELIB_TYPE_AW(MCI_DGV_OPEN_PARMS)
612 DECL_WINELIB_TYPE_AW(LPMCI_DGV_OPEN_PARMS)
614 /* parameter block for MCI_PAUSE command message */
616 typedef MCI_GENERIC_PARMS MCI_DGV_PAUSE_PARMS, * LPMCI_DGV_PAUSE_PARMS;
618 /* parameter block for MCI_PASTE command message */
620 typedef struct {
621 DWORD_PTR dwCallback;
622 DWORD dwTo;
623 RECT rc;
624 DWORD dwAudioStream;
625 DWORD dwVideoStream;
626 } MCI_DGV_PASTE_PARMS, * LPMCI_DGV_PASTE_PARMS;
628 /* parameter block for MCI_PLAY command message */
630 typedef MCI_PLAY_PARMS MCI_DGV_PLAY_PARMS, * LPMCI_DGV_PLAY_PARMS;
632 /* parameter block for MCI_PUT command message */
634 typedef MCI_DGV_RECT_PARMS MCI_DGV_PUT_PARMS, * LPMCI_DGV_PUT_PARMS;
636 /* parameter block for MCI_QUALITY command message */
638 typedef struct {
639 DWORD_PTR dwCallback;
640 DWORD dwItem;
641 LPSTR lpstrName;
642 DWORD lpstrAlgorithm;
643 DWORD dwHandle;
644 } MCI_DGV_QUALITY_PARMSA, *LPMCI_DGV_QUALITY_PARMSA;
646 typedef struct {
647 DWORD_PTR dwCallback;
648 DWORD dwItem;
649 LPWSTR lpstrName;
650 DWORD lpstrAlgorithm;
651 DWORD dwHandle;
652 } MCI_DGV_QUALITY_PARMSW, *LPMCI_DGV_QUALITY_PARMSW;
654 DECL_WINELIB_TYPE_AW(MCI_DGV_QUALITY_PARMS)
655 DECL_WINELIB_TYPE_AW(LPMCI_DGV_QUALITY_PARMS)
657 /* parameter block for MCI_REALIZE command message */
659 typedef MCI_GENERIC_PARMS MCI_REALIZE_PARMS, * LPMCI_REALIZE_PARMS;
661 /* parameter block for MCI_RECORD command message */
663 typedef struct {
664 DWORD_PTR dwCallback;
665 DWORD dwFrom;
666 DWORD dwTo;
667 RECT rc;
668 DWORD dwAudioStream;
669 DWORD dwVideoStream;
670 } MCI_DGV_RECORD_PARMS, * LPMCI_DGV_RECORD_PARMS;
672 /* parameter block for MCI_RESERVE command message */
674 typedef struct {
675 DWORD_PTR dwCallback;
676 LPSTR lpstrPath;
677 DWORD dwSize;
678 } MCI_DGV_RESERVE_PARMSA, *LPMCI_DGV_RESERVE_PARMSA;
680 typedef struct {
681 DWORD_PTR dwCallback;
682 LPWSTR lpstrPath;
683 DWORD dwSize;
684 } MCI_DGV_RESERVE_PARMSW, *LPMCI_DGV_RESERVE_PARMSW;
686 DECL_WINELIB_TYPE_AW(MCI_DGV_RESERVE_PARMS)
687 DECL_WINELIB_TYPE_AW(LPMCI_DGV_RESERVE_PARMS)
689 /* parameter block for MCI_RESTORE command message */
691 typedef struct {
692 DWORD_PTR dwCallback;
693 LPSTR lpstrFileName;
694 RECT rc;
695 } MCI_DGV_RESTORE_PARMSA, *LPMCI_DGV_RESTORE_PARMSA;
697 typedef struct {
698 DWORD_PTR dwCallback;
699 LPWSTR lpstrFileName;
700 RECT rc;
701 } MCI_DGV_RESTORE_PARMSW, *LPMCI_DGV_RESTORE_PARMSW;
703 DECL_WINELIB_TYPE_AW(MCI_DGV_RESTORE_PARMS)
704 DECL_WINELIB_TYPE_AW(LPMCI_DGV_RESTORE_PARMS)
706 /* parameter block for MCI_RESUME command message */
708 typedef MCI_GENERIC_PARMS MCI_DGV_RESUME_PARMS, * LPMCI_DGV_RESUME_PARMS;
710 /* parameter block for MCI_SAVE command message */
712 typedef struct {
713 DWORD_PTR dwCallback;
714 LPSTR lpstrFileName;
715 RECT rc;
716 } MCI_DGV_SAVE_PARMSA, *LPMCI_DGV_SAVE_PARMSA;
718 typedef struct {
719 DWORD_PTR dwCallback;
720 LPWSTR lpstrFileName;
721 RECT rc;
722 } MCI_DGV_SAVE_PARMSW, *LPMCI_DGV_SAVE_PARMSW;
724 DECL_WINELIB_TYPE_AW(MCI_DGV_SAVE_PARMS)
725 DECL_WINELIB_TYPE_AW(LPMCI_DGV_SAVE_PARMS)
727 /* parameter block for MCI_SET command message */
729 typedef struct {
730 DWORD_PTR dwCallback;
731 DWORD dwTimeFormat;
732 DWORD dwAudio;
733 DWORD dwFileFormat;
734 DWORD dwSpeed;
735 } MCI_DGV_SET_PARMS, *LPMCI_DGV_SET_PARMS;
737 /* parameter block for MCI_SETAUDIO command message */
739 typedef struct {
740 DWORD_PTR dwCallback;
741 DWORD dwItem;
742 DWORD dwValue;
743 DWORD dwOver;
744 LPSTR lpstrAlgorithm;
745 LPSTR lpstrQuality;
746 } MCI_DGV_SETAUDIO_PARMSA, *LPMCI_DGV_SETAUDIO_PARMSA;
748 typedef struct {
749 DWORD_PTR dwCallback;
750 DWORD dwItem;
751 DWORD dwValue;
752 DWORD dwOver;
753 LPWSTR lpstrAlgorithm;
754 LPWSTR lpstrQuality;
755 } MCI_DGV_SETAUDIO_PARMSW, *LPMCI_DGV_SETAUDIO_PARMSW;
757 DECL_WINELIB_TYPE_AW(MCI_DGV_SETAUDIO_PARMS)
758 DECL_WINELIB_TYPE_AW(LPMCI_DGV_SETAUDIO_PARMS)
760 /* parameter block for MCI_SIGNAL command message */
762 typedef struct {
763 DWORD_PTR dwCallback;
764 DWORD dwPosition;
765 DWORD dwPeriod;
766 DWORD dwUserParm;
767 } MCI_DGV_SIGNAL_PARMS, * LPMCI_DGV_SIGNAL_PARMS;
769 /* parameter block for MCI_SETVIDEO command message */
771 typedef struct {
772 DWORD_PTR dwCallback;
773 DWORD dwItem;
774 DWORD dwValue;
775 DWORD dwOver;
776 LPSTR lpstrAlgorithm;
777 LPSTR lpstrQuality;
778 DWORD dwSourceNumber;
779 } MCI_DGV_SETVIDEO_PARMSA, *LPMCI_DGV_SETVIDEO_PARMSA;
781 typedef struct {
782 DWORD_PTR dwCallback;
783 DWORD dwItem;
784 DWORD dwValue;
785 DWORD dwOver;
786 LPWSTR lpstrAlgorithm;
787 LPWSTR lpstrQuality;
788 DWORD dwSourceNumber;
789 } MCI_DGV_SETVIDEO_PARMSW, *LPMCI_DGV_SETVIDEO_PARMSW;
791 DECL_WINELIB_TYPE_AW(MCI_DGV_SETVIDEO_PARMS)
792 DECL_WINELIB_TYPE_AW(LPMCI_DGV_SETVIDEO_PARMS)
794 /* parameter block for MCI_STATUS command message */
796 typedef struct {
797 DWORD_PTR dwCallback;
798 DWORD_PTR dwReturn;
799 DWORD dwItem;
800 DWORD dwTrack;
801 LPSTR lpstrDrive;
802 DWORD dwReference;
803 } MCI_DGV_STATUS_PARMSA, *LPMCI_DGV_STATUS_PARMSA;
805 typedef struct {
806 DWORD_PTR dwCallback;
807 DWORD_PTR dwReturn;
808 DWORD dwItem;
809 DWORD dwTrack;
810 LPWSTR lpstrDrive;
811 DWORD dwReference;
812 } MCI_DGV_STATUS_PARMSW, *LPMCI_DGV_STATUS_PARMSW;
814 DECL_WINELIB_TYPE_AW(MCI_DGV_STATUS_PARMS)
815 DECL_WINELIB_TYPE_AW(LPMCI_DGV_STATUS_PARMS)
817 /* parameter block for MCI_STEP command message */
819 typedef struct {
820 DWORD_PTR dwCallback;
821 DWORD dwFrames;
822 } MCI_DGV_STEP_PARMS, *LPMCI_DGV_STEP_PARMS;
824 /* parameter block for MCI_STOP command message */
826 typedef MCI_GENERIC_PARMS MCI_DGV_STOP_PARMS, * LPMCI_DGV_STOP_PARMS;
828 /* parameter block for MCI_UNFREEZE command message */
830 typedef MCI_DGV_RECT_PARMS MCI_DGV_UNFREEZE_PARMS, * LPMCI_DGV_UNFREEZE_PARMS;
832 /* parameter block for MCI_UPDATE command message */
834 typedef struct {
835 DWORD_PTR dwCallback;
836 RECT rc;
837 HDC hDC;
838 } MCI_DGV_UPDATE_PARMS, * LPMCI_DGV_UPDATE_PARMS;
840 /* parameter block for MCI_WHERE command message */
842 typedef MCI_DGV_RECT_PARMS MCI_DGV_WHERE_PARMS, * LPMCI_DGV_WHERE_PARMS;
844 /* parameter block for MCI_WINDOW command message */
846 typedef struct {
847 DWORD_PTR dwCallback;
848 HWND hWnd;
849 UINT nCmdShow;
850 LPSTR lpstrText;
851 } MCI_DGV_WINDOW_PARMSA, *LPMCI_DGV_WINDOW_PARMSA;
853 typedef struct {
854 DWORD_PTR dwCallback;
855 HWND hWnd;
856 UINT nCmdShow;
857 LPWSTR lpstrText;
858 } MCI_DGV_WINDOW_PARMSW, *LPMCI_DGV_WINDOW_PARMSW;
860 DECL_WINELIB_TYPE_AW(MCI_DGV_WINDOW_PARMS)
862 #ifdef __cplusplus
864 #endif
866 #endif /* __WINE_DIGITALV_H */