widl: Generate helper macros for WinRT implementation.
[wine/zf.git] / include / digitalv.h
blobb2930fe602c61c5706deb6b6b26539ed0ef79fbc
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 #include <pshpack1.h>
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
32 #define MCI_TEST __MSABI_LONG(0x00000020)
34 /* Message values */
36 #define MCI_CAPTURE 0x0870
37 #define MCI_MONITOR 0x0871
38 #define MCI_RESERVE 0x0872
39 #define MCI_SETAUDIO 0x0873
40 #define MCI_SIGNAL 0x0875
41 #define MCI_SETVIDEO 0x0876
42 #define MCI_QUALITY 0x0877
43 #define MCI_LIST 0x0878
44 #define MCI_UNDO 0x0879
45 #define MCI_CONFIGURE 0x087A
46 #define MCI_RESTORE 0x087B
48 /* Return and string constant values */
50 #define MCI_ON 1
51 #define MCI_OFF 0
53 #define MCI_DGV_FILE_MODE_SAVING 0x0001
54 #define MCI_DGV_FILE_MODE_LOADING 0x0002
55 #define MCI_DGV_FILE_MODE_EDITING 0x0003
56 #define MCI_DGV_FILE_MODE_IDLE 0x0004
58 /* These identifiers are used only by device drivers */
60 #define MCI_ON_S __MSABI_LONG(0x00008000)
61 #define MCI_OFF_S __MSABI_LONG(0x00008001)
62 #define MCI_DGV_FILE_S __MSABI_LONG(0x00008002)
63 #define MCI_DGV_INPUT_S __MSABI_LONG(0x00008003)
65 #define MCI_DGV_FILE_MODE_SAVING_S __MSABI_LONG(0x00008004)
66 #define MCI_DGV_FILE_MODE_LOADING_S __MSABI_LONG(0x00008005)
67 #define MCI_DGV_FILE_MODE_EDITING_S __MSABI_LONG(0x00008006)
68 #define MCI_DGV_FILE_MODE_IDLE_S __MSABI_LONG(0x00008007)
70 #define MCI_DGV_SETVIDEO_SRC_NTSC_S __MSABI_LONG(0x00008010)
71 #define MCI_DGV_SETVIDEO_SRC_RGB_S __MSABI_LONG(0x00008011)
72 #define MCI_DGV_SETVIDEO_SRC_SVIDEO_S __MSABI_LONG(0x00008012)
73 #define MCI_DGV_SETVIDEO_SRC_PAL_S __MSABI_LONG(0x00008013)
74 #define MCI_DGV_SETVIDEO_SRC_SECAM_S __MSABI_LONG(0x00008014)
75 #define MCI_DGV_SETVIDEO_SRC_GENERIC_S __MSABI_LONG(0x00008015)
77 #define MCI_DGV_SETAUDIO_SRC_LEFT_S __MSABI_LONG(0x00008020)
78 #define MCI_DGV_SETAUDIO_SRC_RIGHT_S __MSABI_LONG(0x00008021)
79 #define MCI_DGV_SETAUDIO_SRC_AVERAGE_S __MSABI_LONG(0x00008022)
80 #define MCI_DGV_SETAUDIO_SRC_STEREO_S __MSABI_LONG(0x00008023)
82 /* Window message for signal notification */
84 #ifndef MM_MCISIGNAL
85 #define MM_MCISIGNAL 0x3CB
86 #endif
88 /* error values */
90 #define MCIERR_DGV_DEVICE_LIMIT (MCIERR_CUSTOM_DRIVER_BASE+0)
91 #define MCIERR_DGV_IOERR (MCIERR_CUSTOM_DRIVER_BASE+1)
92 #define MCIERR_DGV_WORKSPACE_EMPTY (MCIERR_CUSTOM_DRIVER_BASE+2)
93 #define MCIERR_DGV_DISK_FULL (MCIERR_CUSTOM_DRIVER_BASE+3)
94 #define MCIERR_DGV_DEVICE_MEMORY_FULL (MCIERR_CUSTOM_DRIVER_BASE+4)
95 #define MCIERR_DGV_BAD_CLIPBOARD_RANGE (MCIERR_CUSTOM_DRIVER_BASE+5)
97 /* defines for monitor methods */
99 #define MCI_DGV_METHOD_PRE __MSABI_LONG(0x0000a000)
100 #define MCI_DGV_METHOD_POST __MSABI_LONG(0x0000a001)
101 #define MCI_DGV_METHOD_DIRECT __MSABI_LONG(0x0000a002)
103 /* defines for known file formats */
105 #define MCI_DGV_FF_AVSS __MSABI_LONG(0x00004000)
106 #define MCI_DGV_FF_AVI __MSABI_LONG(0x00004001)
107 #define MCI_DGV_FF_DIB __MSABI_LONG(0x00004002)
108 #define MCI_DGV_FF_RDIB __MSABI_LONG(0x00004003)
109 #define MCI_DGV_FF_JPEG __MSABI_LONG(0x00004004)
110 #define MCI_DGV_FF_RJPEG __MSABI_LONG(0x00004005)
111 #define MCI_DGV_FF_JFIF __MSABI_LONG(0x00004006)
112 #define MCI_DGV_FF_MPEG __MSABI_LONG(0x00004007)
114 /* values for dwItem field of MCI_CAPABILITY_PARMS structure */
116 #define MCI_DGV_GETDEVCAPS_CAN_LOCK __MSABI_LONG(0x00004000)
117 #define MCI_DGV_GETDEVCAPS_CAN_STRETCH __MSABI_LONG(0x00004001)
118 #define MCI_DGV_GETDEVCAPS_CAN_FREEZE __MSABI_LONG(0x00004002)
119 #define MCI_DGV_GETDEVCAPS_MAX_WINDOWS __MSABI_LONG(0x00004003)
120 #define MCI_DGV_GETDEVCAPS_CAN_REVERSE __MSABI_LONG(0x00004004)
121 #define MCI_DGV_GETDEVCAPS_HAS_STILL __MSABI_LONG(0x00004005)
122 #define MCI_DGV_GETDEVCAPS_PALETTES __MSABI_LONG(0x00004006)
123 #define MCI_DGV_GETDEVCAPS_CAN_STR_IN __MSABI_LONG(0x00004008)
124 #define MCI_DGV_GETDEVCAPS_CAN_TEST __MSABI_LONG(0x00004009)
125 #define MCI_DGV_GETDEVCAPS_MAXIMUM_RATE __MSABI_LONG(0x0000400a)
126 #define MCI_DGV_GETDEVCAPS_MINIMUM_RATE __MSABI_LONG(0x0000400b)
128 /* flags for dwFlags parameter of MCI_CAPTURE command message */
130 #define MCI_DGV_CAPTURE_AS __MSABI_LONG(0x00010000)
131 #define MCI_DGV_CAPTURE_AT __MSABI_LONG(0x00020000)
133 /* flags for dwFlags parameter of MCI_COPY command message */
135 #define MCI_DGV_COPY_AT __MSABI_LONG(0x00010000)
136 #define MCI_DGV_COPY_AUDIO_STREAM __MSABI_LONG(0x00020000)
137 #define MCI_DGV_COPY_VIDEO_STREAM __MSABI_LONG(0x00040000)
139 /* flags for dwFlags parameter of MCI_CUE command message */
141 #define MCI_DGV_CUE_INPUT __MSABI_LONG(0x00010000)
142 #define MCI_DGV_CUE_OUTPUT __MSABI_LONG(0x00020000)
143 #define MCI_DGV_CUE_NOSHOW __MSABI_LONG(0x00040000)
145 /* flags for dwFlags parameter of MCI_CUT command message */
147 #define MCI_DGV_CUT_AT __MSABI_LONG(0x00010000)
148 #define MCI_DGV_CUT_AUDIO_STREAM __MSABI_LONG(0x00020000)
149 #define MCI_DGV_CUT_VIDEO_STREAM __MSABI_LONG(0x00040000)
151 /* flags for dwFlags parameter of MCI_DELETE command message */
153 #define MCI_DGV_DELETE_AT __MSABI_LONG(0x00010000)
154 #define MCI_DGV_DELETE_AUDIO_STREAM __MSABI_LONG(0x00020000)
155 #define MCI_DGV_DELETE_VIDEO_STREAM __MSABI_LONG(0x00040000)
157 /* flags for dwFlags parameter of MCI_FREEZE command message */
159 #define MCI_DGV_FREEZE_AT __MSABI_LONG(0x00010000)
160 #define MCI_DGV_FREEZE_OUTSIDE __MSABI_LONG(0x00020000)
162 /* flags for dwFlags parameter of MCI_INFO command message */
164 #define MCI_DGV_INFO_TEXT __MSABI_LONG(0x00010000)
165 #define MCI_DGV_INFO_ITEM __MSABI_LONG(0x00020000)
167 /* values for dwItem field of MCI_DGV_INFO_PARMS structure */
169 #define MCI_INFO_VERSION __MSABI_LONG(0x00000400)
171 #define MCI_DGV_INFO_USAGE __MSABI_LONG(0x00004000)
172 #define MCI_DGV_INFO_AUDIO_QUALITY __MSABI_LONG(0x00004001)
173 #define MCI_DGV_INFO_STILL_QUALITY __MSABI_LONG(0x00004002)
174 #define MCI_DGV_INFO_VIDEO_QUALITY __MSABI_LONG(0x00004003)
175 #define MCI_DGV_INFO_AUDIO_ALG __MSABI_LONG(0x00004004)
176 #define MCI_DGV_INFO_STILL_ALG __MSABI_LONG(0x00004005)
177 #define MCI_DGV_INFO_VIDEO_ALG __MSABI_LONG(0x00004006)
179 /* flags for dwFlags parameter of MCI_LIST command message */
181 #define MCI_DGV_LIST_ITEM __MSABI_LONG(0x00010000)
182 #define MCI_DGV_LIST_COUNT __MSABI_LONG(0x00020000)
183 #define MCI_DGV_LIST_NUMBER __MSABI_LONG(0x00040000)
184 #define MCI_DGV_LIST_ALG __MSABI_LONG(0x00080000)
186 /* values for dwItem field of MCI_DGV_LIST_PARMS structure */
188 #define MCI_DGV_LIST_AUDIO_ALG __MSABI_LONG(0x00004000)
189 #define MCI_DGV_LIST_AUDIO_QUALITY __MSABI_LONG(0x00004001)
190 #define MCI_DGV_LIST_AUDIO_STREAM __MSABI_LONG(0x00004002)
191 #define MCI_DGV_LIST_STILL_ALG __MSABI_LONG(0x00004003)
192 #define MCI_DGV_LIST_STILL_QUALITY __MSABI_LONG(0x00004004)
193 #define MCI_DGV_LIST_VIDEO_ALG __MSABI_LONG(0x00004005)
194 #define MCI_DGV_LIST_VIDEO_QUALITY __MSABI_LONG(0x00004006)
195 #define MCI_DGV_LIST_VIDEO_STREAM __MSABI_LONG(0x00004007)
196 #define MCI_DGV_LIST_VIDEO_SOURCE __MSABI_LONG(0x00004008)
199 /* flags for dwFlags parameter of MCI_MONITOR command message */
201 #define MCI_DGV_MONITOR_METHOD __MSABI_LONG(0x00010000)
202 #define MCI_DGV_MONITOR_SOURCE __MSABI_LONG(0x00020000)
204 /* values for dwSource parameter of the MCI_DGV_MONITOR_PARMS structure */
206 #define MCI_DGV_MONITOR_INPUT __MSABI_LONG(0x00004000)
207 #define MCI_DGV_MONITOR_FILE __MSABI_LONG(0x00004001)
209 /* flags for dwFlags parameter of MCI_OPEN command message */
211 #define MCI_DGV_OPEN_WS __MSABI_LONG(0x00010000)
212 #define MCI_DGV_OPEN_PARENT __MSABI_LONG(0x00020000)
213 #define MCI_DGV_OPEN_NOSTATIC __MSABI_LONG(0x00040000)
214 #define MCI_DGV_OPEN_16BIT __MSABI_LONG(0x00080000)
215 #define MCI_DGV_OPEN_32BIT __MSABI_LONG(0x00100000)
217 /* flags for dwFlags parameter of MCI_PASTE command message */
219 #define MCI_DGV_PASTE_AT __MSABI_LONG(0x00010000)
220 #define MCI_DGV_PASTE_AUDIO_STREAM __MSABI_LONG(0x00020000)
221 #define MCI_DGV_PASTE_VIDEO_STREAM __MSABI_LONG(0x00040000)
222 #define MCI_DGV_PASTE_INSERT __MSABI_LONG(0x00080000)
223 #define MCI_DGV_PASTE_OVERWRITE __MSABI_LONG(0x00100000)
225 /* flags for dwFlags parameter of MCI_PLAY command message */
227 #define MCI_DGV_PLAY_REPEAT __MSABI_LONG(0x00010000)
228 #define MCI_DGV_PLAY_REVERSE __MSABI_LONG(0x00020000)
230 /* flags for dwFlags parameter of MCI_PUT command message */
232 #define MCI_DGV_RECT __MSABI_LONG(0x00010000)
233 #define MCI_DGV_PUT_SOURCE __MSABI_LONG(0x00020000)
234 #define MCI_DGV_PUT_DESTINATION __MSABI_LONG(0x00040000)
235 #define MCI_DGV_PUT_FRAME __MSABI_LONG(0x00080000)
236 #define MCI_DGV_PUT_VIDEO __MSABI_LONG(0x00100000)
237 #define MCI_DGV_PUT_WINDOW __MSABI_LONG(0x00200000)
238 #define MCI_DGV_PUT_CLIENT __MSABI_LONG(0x00400000)
240 /* flags for dwFlags parameter of MCI_QUALITY command message */
242 #define MCI_QUALITY_ITEM __MSABI_LONG(0x00010000)
243 #define MCI_QUALITY_NAME __MSABI_LONG(0x00020000)
244 #define MCI_QUALITY_ALG __MSABI_LONG(0x00040000)
245 #define MCI_QUALITY_DIALOG __MSABI_LONG(0x00080000)
246 #define MCI_QUALITY_HANDLE __MSABI_LONG(0x00100000)
248 /* values for dwItem field of MCI_QUALITY_PARMS structure */
250 #define MCI_QUALITY_ITEM_AUDIO __MSABI_LONG(0x00004000)
251 #define MCI_QUALITY_ITEM_STILL __MSABI_LONG(0x00004001)
252 #define MCI_QUALITY_ITEM_VIDEO __MSABI_LONG(0x00004002)
254 /* flags for dwFlags parameter of MCI_REALIZE command message */
256 #define MCI_DGV_REALIZE_NORM __MSABI_LONG(0x00010000)
257 #define MCI_DGV_REALIZE_BKGD __MSABI_LONG(0x00020000)
259 /* flags for dwFlags parameter of MCI_RECORD command message */
261 #define MCI_DGV_RECORD_HOLD __MSABI_LONG(0x00020000)
262 #define MCI_DGV_RECORD_AUDIO_STREAM __MSABI_LONG(0x00040000)
263 #define MCI_DGV_RECORD_VIDEO_STREAM __MSABI_LONG(0x00080000)
265 /* flags for dwFlags parameters of MCI_RESERVE command message */
267 #define MCI_DGV_RESERVE_IN __MSABI_LONG(0x00010000)
268 #define MCI_DGV_RESERVE_SIZE __MSABI_LONG(0x00020000)
270 /* flags for dwFlags parameter of MCI_RESTORE command message */
272 #define MCI_DGV_RESTORE_FROM __MSABI_LONG(0x00010000)
273 #define MCI_DGV_RESTORE_AT __MSABI_LONG(0x00020000)
275 /* flags for dwFlags parameters of MCI_SAVE command message */
277 #define MCI_DGV_SAVE_ABORT __MSABI_LONG(0x00020000)
278 #define MCI_DGV_SAVE_KEEPRESERVE __MSABI_LONG(0x00040000)
280 /* flags for dwFlags parameters of MCI_SET command message */
282 #define MCI_DGV_SET_SEEK_EXACTLY __MSABI_LONG(0x00010000)
283 #define MCI_DGV_SET_SPEED __MSABI_LONG(0x00020000)
284 #define MCI_DGV_SET_STILL __MSABI_LONG(0x00040000)
285 #define MCI_DGV_SET_FILEFORMAT __MSABI_LONG(0x00080000)
287 /* flags for the dwFlags parameter of MCI_SETAUDIO command message */
289 #define MCI_DGV_SETAUDIO_OVER __MSABI_LONG(0x00010000)
290 #define MCI_DGV_SETAUDIO_CLOCKTIME __MSABI_LONG(0x00020000)
291 #define MCI_DGV_SETAUDIO_ALG __MSABI_LONG(0x00040000)
292 #define MCI_DGV_SETAUDIO_QUALITY __MSABI_LONG(0x00080000)
293 #define MCI_DGV_SETAUDIO_RECORD __MSABI_LONG(0x00100000)
294 #define MCI_DGV_SETAUDIO_LEFT __MSABI_LONG(0x00200000)
295 #define MCI_DGV_SETAUDIO_RIGHT __MSABI_LONG(0x00400000)
296 #define MCI_DGV_SETAUDIO_ITEM __MSABI_LONG(0x00800000)
297 #define MCI_DGV_SETAUDIO_VALUE __MSABI_LONG(0x01000000)
298 #define MCI_DGV_SETAUDIO_INPUT __MSABI_LONG(0x02000000)
299 #define MCI_DGV_SETAUDIO_OUTPUT __MSABI_LONG(0x04000000)
301 /* values for the dwItem parameter of MCI_DGV_SETAUDIO_PARMS */
303 #define MCI_DGV_SETAUDIO_TREBLE __MSABI_LONG(0x00004000)
304 #define MCI_DGV_SETAUDIO_BASS __MSABI_LONG(0x00004001)
305 #define MCI_DGV_SETAUDIO_VOLUME __MSABI_LONG(0x00004002)
306 #define MCI_DGV_SETAUDIO_STREAM __MSABI_LONG(0x00004003)
307 #define MCI_DGV_SETAUDIO_SOURCE __MSABI_LONG(0x00004004)
308 #define MCI_DGV_SETAUDIO_SAMPLESPERSEC __MSABI_LONG(0x00004005)
309 #define MCI_DGV_SETAUDIO_AVGBYTESPERSEC __MSABI_LONG(0x00004006)
310 #define MCI_DGV_SETAUDIO_BLOCKALIGN __MSABI_LONG(0x00004007)
311 #define MCI_DGV_SETAUDIO_BITSPERSAMPLE __MSABI_LONG(0x00004008)
313 /* values for the dwValue parameter of MCI_DGV_SETAUDIO_PARMS
314 used with MCI_DGV_SETAUDIO_SOURCE */
316 #define MCI_DGV_SETAUDIO_SOURCE_STEREO __MSABI_LONG(0x00000000)
317 #define MCI_DGV_SETAUDIO_SOURCE_LEFT __MSABI_LONG(0x00000001)
318 #define MCI_DGV_SETAUDIO_SOURCE_RIGHT __MSABI_LONG(0x00000002)
319 #define MCI_DGV_SETAUDIO_SOURCE_AVERAGE __MSABI_LONG(0x00004000)
321 /* flags for the dwFlags parameter of MCI_SETVIDEO command */
323 #define MCI_DGV_SETVIDEO_QUALITY __MSABI_LONG(0x00010000)
324 #define MCI_DGV_SETVIDEO_ALG __MSABI_LONG(0x00020000)
325 #define MCI_DGV_SETVIDEO_CLOCKTIME __MSABI_LONG(0x00040000)
326 #define MCI_DGV_SETVIDEO_SRC_NUMBER __MSABI_LONG(0x00080000)
327 #define MCI_DGV_SETVIDEO_ITEM __MSABI_LONG(0x00100000)
328 #define MCI_DGV_SETVIDEO_OVER __MSABI_LONG(0x00200000)
329 #define MCI_DGV_SETVIDEO_RECORD __MSABI_LONG(0x00400000)
330 #define MCI_DGV_SETVIDEO_STILL __MSABI_LONG(0x00800000)
331 #define MCI_DGV_SETVIDEO_VALUE __MSABI_LONG(0x01000000)
332 #define MCI_DGV_SETVIDEO_INPUT __MSABI_LONG(0x02000000)
333 #define MCI_DGV_SETVIDEO_OUTPUT __MSABI_LONG(0x04000000)
335 /* values for the dwTo field of MCI_SETVIDEO_PARMS
336 used with MCI_DGV_SETVIDEO_SOURCE */
338 #define MCI_DGV_SETVIDEO_SRC_NTSC __MSABI_LONG(0x00004000)
339 #define MCI_DGV_SETVIDEO_SRC_RGB __MSABI_LONG(0x00004001)
340 #define MCI_DGV_SETVIDEO_SRC_SVIDEO __MSABI_LONG(0x00004002)
341 #define MCI_DGV_SETVIDEO_SRC_PAL __MSABI_LONG(0x00004003)
342 #define MCI_DGV_SETVIDEO_SRC_SECAM __MSABI_LONG(0x00004004)
343 #define MCI_DGV_SETVIDEO_SRC_GENERIC __MSABI_LONG(0x00004005)
345 /* values for the dwItem field of MCI_SETVIDEO_PARMS */
347 #define MCI_DGV_SETVIDEO_BRIGHTNESS __MSABI_LONG(0x00004000)
348 #define MCI_DGV_SETVIDEO_COLOR __MSABI_LONG(0x00004001)
349 #define MCI_DGV_SETVIDEO_CONTRAST __MSABI_LONG(0x00004002)
350 #define MCI_DGV_SETVIDEO_TINT __MSABI_LONG(0x00004003)
351 #define MCI_DGV_SETVIDEO_SHARPNESS __MSABI_LONG(0x00004004)
352 #define MCI_DGV_SETVIDEO_GAMMA __MSABI_LONG(0x00004005)
353 #define MCI_DGV_SETVIDEO_STREAM __MSABI_LONG(0x00004006)
354 #define MCI_DGV_SETVIDEO_PALHANDLE __MSABI_LONG(0x00004007)
355 #define MCI_DGV_SETVIDEO_FRAME_RATE __MSABI_LONG(0x00004008)
356 #define MCI_DGV_SETVIDEO_SOURCE __MSABI_LONG(0x00004009)
357 #define MCI_DGV_SETVIDEO_KEY_INDEX __MSABI_LONG(0x0000400a)
358 #define MCI_DGV_SETVIDEO_KEY_COLOR __MSABI_LONG(0x0000400b)
359 #define MCI_DGV_SETVIDEO_BITSPERPEL __MSABI_LONG(0x0000400c)
361 /* flags for the dwFlags parameter of MCI_SIGNAL */
363 #define MCI_DGV_SIGNAL_AT __MSABI_LONG(0x00010000)
364 #define MCI_DGV_SIGNAL_EVERY __MSABI_LONG(0x00020000)
365 #define MCI_DGV_SIGNAL_USERVAL __MSABI_LONG(0x00040000)
366 #define MCI_DGV_SIGNAL_CANCEL __MSABI_LONG(0x00080000)
367 #define MCI_DGV_SIGNAL_POSITION __MSABI_LONG(0x00100000)
369 /* flags for the dwFlags parameter of MCI_STATUS command */
371 #define MCI_DGV_STATUS_NOMINAL __MSABI_LONG(0x00020000)
372 #define MCI_DGV_STATUS_REFERENCE __MSABI_LONG(0x00040000)
373 #define MCI_DGV_STATUS_LEFT __MSABI_LONG(0x00080000)
374 #define MCI_DGV_STATUS_RIGHT __MSABI_LONG(0x00100000)
375 #define MCI_DGV_STATUS_DISKSPACE __MSABI_LONG(0x00200000)
376 #define MCI_DGV_STATUS_INPUT __MSABI_LONG(0x00400000)
377 #define MCI_DGV_STATUS_OUTPUT __MSABI_LONG(0x00800000)
378 #define MCI_DGV_STATUS_RECORD __MSABI_LONG(0x01000000)
380 /* values for dwItem field of MCI_STATUS_PARMS structure */
382 #define MCI_DGV_STATUS_AUDIO_INPUT __MSABI_LONG(0x00004000)
383 #define MCI_DGV_STATUS_HWND __MSABI_LONG(0x00004001)
384 #define MCI_DGV_STATUS_SPEED __MSABI_LONG(0x00004003)
385 #define MCI_DGV_STATUS_HPAL __MSABI_LONG(0x00004004)
386 #define MCI_DGV_STATUS_BRIGHTNESS __MSABI_LONG(0x00004005)
387 #define MCI_DGV_STATUS_COLOR __MSABI_LONG(0x00004006)
388 #define MCI_DGV_STATUS_CONTRAST __MSABI_LONG(0x00004007)
389 #define MCI_DGV_STATUS_FILEFORMAT __MSABI_LONG(0x00004008)
390 #define MCI_DGV_STATUS_AUDIO_SOURCE __MSABI_LONG(0x00004009)
391 #define MCI_DGV_STATUS_GAMMA __MSABI_LONG(0x0000400a)
392 #define MCI_DGV_STATUS_MONITOR __MSABI_LONG(0x0000400b)
393 #define MCI_DGV_STATUS_MONITOR_METHOD __MSABI_LONG(0x0000400c)
394 #define MCI_DGV_STATUS_FRAME_RATE __MSABI_LONG(0x0000400e)
395 #define MCI_DGV_STATUS_BASS __MSABI_LONG(0x0000400f)
396 #define MCI_DGV_STATUS_SIZE __MSABI_LONG(0x00004010)
397 #define MCI_DGV_STATUS_SEEK_EXACTLY __MSABI_LONG(0x00004011)
398 #define MCI_DGV_STATUS_SHARPNESS __MSABI_LONG(0x00004012)
399 #define MCI_DGV_STATUS_SMPTE __MSABI_LONG(0x00004013)
400 #define MCI_DGV_STATUS_AUDIO __MSABI_LONG(0x00004014)
401 #define MCI_DGV_STATUS_TINT __MSABI_LONG(0x00004015)
402 #define MCI_DGV_STATUS_TREBLE __MSABI_LONG(0x00004016)
403 #define MCI_DGV_STATUS_UNSAVED __MSABI_LONG(0x00004017)
404 #define MCI_DGV_STATUS_VIDEO __MSABI_LONG(0x00004018)
405 #define MCI_DGV_STATUS_VOLUME __MSABI_LONG(0x00004019)
406 #define MCI_DGV_STATUS_AUDIO_RECORD __MSABI_LONG(0x0000401a)
407 #define MCI_DGV_STATUS_VIDEO_SOURCE __MSABI_LONG(0x0000401b)
408 #define MCI_DGV_STATUS_VIDEO_RECORD __MSABI_LONG(0x0000401c)
409 #define MCI_DGV_STATUS_STILL_FILEFORMAT __MSABI_LONG(0x0000401d)
410 #define MCI_DGV_STATUS_VIDEO_SRC_NUM __MSABI_LONG(0x0000401e)
411 #define MCI_DGV_STATUS_FILE_MODE __MSABI_LONG(0x0000401f)
412 #define MCI_DGV_STATUS_FILE_COMPLETION __MSABI_LONG(0x00004020)
413 #define MCI_DGV_STATUS_WINDOW_VISIBLE __MSABI_LONG(0x00004021)
414 #define MCI_DGV_STATUS_WINDOW_MINIMIZED __MSABI_LONG(0x00004022)
415 #define MCI_DGV_STATUS_WINDOW_MAXIMIZED __MSABI_LONG(0x00004023)
416 #define MCI_DGV_STATUS_KEY_INDEX __MSABI_LONG(0x00004024)
417 #define MCI_DGV_STATUS_KEY_COLOR __MSABI_LONG(0x00004025)
418 #define MCI_DGV_STATUS_PAUSE_MODE __MSABI_LONG(0x00004026)
419 #define MCI_DGV_STATUS_SAMPLESPERSEC __MSABI_LONG(0x00004027)
420 #define MCI_DGV_STATUS_AVGBYTESPERSEC __MSABI_LONG(0x00004028)
421 #define MCI_DGV_STATUS_BLOCKALIGN __MSABI_LONG(0x00004029)
422 #define MCI_DGV_STATUS_BITSPERSAMPLE __MSABI_LONG(0x0000402a)
423 #define MCI_DGV_STATUS_BITSPERPEL __MSABI_LONG(0x0000402b)
424 #define MCI_DGV_STATUS_FORWARD __MSABI_LONG(0x0000402c)
425 #define MCI_DGV_STATUS_AUDIO_STREAM __MSABI_LONG(0x0000402d)
426 #define MCI_DGV_STATUS_VIDEO_STREAM __MSABI_LONG(0x0000402e)
428 /* flags for dwFlags parameter of MCI_STEP command message */
430 #define MCI_DGV_STEP_REVERSE __MSABI_LONG(0x00010000)
431 #define MCI_DGV_STEP_FRAMES __MSABI_LONG(0x00020000)
433 /* flags for dwFlags parameter of MCI_STOP command message */
435 #define MCI_DGV_STOP_HOLD __MSABI_LONG(0x00010000)
437 /* flags for dwFlags parameter of MCI_UPDATE command message */
439 #define MCI_DGV_UPDATE_HDC __MSABI_LONG(0x00020000)
440 #define MCI_DGV_UPDATE_PAINT __MSABI_LONG(0x00040000)
442 /* flags for dwFlags parameter of MCI_WHERE command message */
444 #define MCI_DGV_WHERE_SOURCE __MSABI_LONG(0x00020000)
445 #define MCI_DGV_WHERE_DESTINATION __MSABI_LONG(0x00040000)
446 #define MCI_DGV_WHERE_FRAME __MSABI_LONG(0x00080000)
447 #define MCI_DGV_WHERE_VIDEO __MSABI_LONG(0x00100000)
448 #define MCI_DGV_WHERE_WINDOW __MSABI_LONG(0x00200000)
449 #define MCI_DGV_WHERE_MAX __MSABI_LONG(0x00400000)
451 /* flags for dwFlags parameter of MCI_WINDOW command message */
453 #define MCI_DGV_WINDOW_HWND __MSABI_LONG(0x00010000)
454 #define MCI_DGV_WINDOW_STATE __MSABI_LONG(0x00040000)
455 #define MCI_DGV_WINDOW_TEXT __MSABI_LONG(0x00080000)
457 /* flags for hWnd parameter of MCI_DGV_WINDOW_PARMS parameter block */
459 #define MCI_DGV_WINDOW_DEFAULT __MSABI_LONG(0x00000000)
461 /* parameter block for MCI_WHERE, MCI_PUT, MCI_FREEZE, MCI_UNFREEZE cmds */
463 typedef struct {
464 DWORD_PTR dwCallback;
465 RECT rc;
466 } MCI_DGV_RECT_PARMS, *LPMCI_DGV_RECT_PARMS;
468 /* parameter block for MCI_CAPTURE command message */
470 typedef struct {
471 DWORD_PTR dwCallback;
472 LPSTR lpstrFileName;
473 RECT rc;
474 } MCI_DGV_CAPTURE_PARMSA, *LPMCI_DGV_CAPTURE_PARMSA;
476 typedef struct {
477 DWORD_PTR dwCallback;
478 LPWSTR lpstrFileName;
479 RECT rc;
480 } MCI_DGV_CAPTURE_PARMSW, *LPMCI_DGV_CAPTURE_PARMSW;
482 DECL_WINELIB_TYPE_AW(MCI_DGV_CAPTURE_PARMS)
483 DECL_WINELIB_TYPE_AW(LPMCI_DGV_CAPTURE_PARMS)
485 /* parameter block for MCI_CLOSE command message */
487 typedef MCI_GENERIC_PARMS MCI_CLOSE_PARMS, *LPMCI_CLOSE_PARMS;
489 /* parameter block for MCI_COPY command message */
491 typedef struct {
492 DWORD_PTR dwCallback;
493 DWORD dwFrom;
494 DWORD dwTo;
495 RECT rc;
496 DWORD dwAudioStream;
497 DWORD dwVideoStream;
498 } MCI_DGV_COPY_PARMS, *LPMCI_DGV_COPY_PARMS;
500 /* parameter block for MCI_CUE command message */
502 typedef struct {
503 DWORD_PTR dwCallback;
504 DWORD dwTo;
505 } MCI_DGV_CUE_PARMS, *LPMCI_DGV_CUE_PARMS;
507 /* parameter block for MCI_CUT command message */
509 typedef struct {
510 DWORD_PTR dwCallback;
511 DWORD dwFrom;
512 DWORD dwTo;
513 RECT rc;
514 DWORD dwAudioStream;
515 DWORD dwVideoStream;
516 } MCI_DGV_CUT_PARMS, * LPMCI_DGV_CUT_PARMS;
518 /* parameter block for MCI_DELETE command message */
520 typedef struct {
521 DWORD_PTR dwCallback;
522 DWORD dwFrom;
523 DWORD dwTo;
524 RECT rc;
525 DWORD dwAudioStream;
526 DWORD dwVideoStream;
527 } MCI_DGV_DELETE_PARMS, * LPMCI_DGV_DELETE_PARMS;
529 /* parameter block for MCI_FREEZE command message */
531 typedef MCI_DGV_RECT_PARMS MCI_DGV_FREEZE_PARMS, * LPMCI_DGV_FREEZE_PARMS;
533 /* parameter block for MCI_INFO command message */
535 typedef struct {
536 DWORD_PTR dwCallback;
537 LPSTR lpstrReturn;
538 DWORD dwRetSize;
539 DWORD dwItem;
540 } MCI_DGV_INFO_PARMSA, * LPMCI_DGV_INFO_PARMSA;
542 typedef struct {
543 DWORD_PTR dwCallback;
544 LPWSTR lpstrReturn;
545 DWORD dwRetSize;
546 DWORD dwItem;
547 } MCI_DGV_INFO_PARMSW, *LPMCI_DGV_INFO_PARMSW;
549 DECL_WINELIB_TYPE_AW(MCI_DGV_INFO_PARMS)
550 DECL_WINELIB_TYPE_AW(LPMCI_DGV_INFO_PARMS)
552 /* parameter block for MCI_LIST command message */
554 typedef struct {
555 DWORD_PTR dwCallback;
556 LPSTR lpstrReturn;
557 DWORD dwLength;
558 DWORD dwNumber;
559 DWORD dwItem;
560 LPSTR lpstrAlgorithm;
561 } MCI_DGV_LIST_PARMSA, *LPMCI_DGV_LIST_PARMSA;
563 typedef struct {
564 DWORD_PTR dwCallback;
565 LPWSTR lpstrReturn;
566 DWORD dwLength;
567 DWORD dwNumber;
568 DWORD dwItem;
569 LPWSTR lpstrAlgorithm;
570 } MCI_DGV_LIST_PARMSW, *LPMCI_DGV_LIST_PARMSW;
572 DECL_WINELIB_TYPE_AW(MCI_DGV_LIST_PARMS)
573 DECL_WINELIB_TYPE_AW(LPMCI_DGV_LIST_PARMS)
575 /* parameter block for MCI_LOAD command message */
577 typedef MCI_LOAD_PARMSA MCI_DGV_LOAD_PARMSA, * LPMCI_DGV_LOAD_PARMSA;
578 typedef MCI_LOAD_PARMSW MCI_DGV_LOAD_PARMSW, * LPMCI_DGV_LOAD_PARMSW;
580 DECL_WINELIB_TYPE_AW(MCI_DGV_LOAD_PARMS)
581 DECL_WINELIB_TYPE_AW(LPMCI_DGV_LOAD_PARMS)
583 /* parameter block for MCI_MONITOR command message */
585 typedef struct {
586 DWORD_PTR dwCallback;
587 DWORD dwSource;
588 DWORD dwMethod;
589 } MCI_DGV_MONITOR_PARMS, * LPMCI_DGV_MONITOR_PARMS;
591 /* parameter block for MCI_OPEN command message */
593 typedef struct {
594 DWORD_PTR dwCallback;
595 UINT wDeviceID;
596 LPSTR lpstrDeviceType;
597 LPSTR lpstrElementName;
598 LPSTR lpstrAlias;
599 DWORD dwStyle;
600 HWND hWndParent;
601 } MCI_DGV_OPEN_PARMSA, *LPMCI_DGV_OPEN_PARMSA;
603 typedef struct {
604 DWORD_PTR dwCallback;
605 UINT wDeviceID;
606 LPWSTR lpstrDeviceType;
607 LPWSTR lpstrElementName;
608 LPWSTR lpstrAlias;
609 DWORD dwStyle;
610 HWND hWndParent;
611 } MCI_DGV_OPEN_PARMSW, *LPMCI_DGV_OPEN_PARMSW;
613 DECL_WINELIB_TYPE_AW(MCI_DGV_OPEN_PARMS)
614 DECL_WINELIB_TYPE_AW(LPMCI_DGV_OPEN_PARMS)
616 /* parameter block for MCI_PAUSE command message */
618 typedef MCI_GENERIC_PARMS MCI_DGV_PAUSE_PARMS, * LPMCI_DGV_PAUSE_PARMS;
620 /* parameter block for MCI_PASTE command message */
622 typedef struct {
623 DWORD_PTR dwCallback;
624 DWORD dwTo;
625 RECT rc;
626 DWORD dwAudioStream;
627 DWORD dwVideoStream;
628 } MCI_DGV_PASTE_PARMS, * LPMCI_DGV_PASTE_PARMS;
630 /* parameter block for MCI_PLAY command message */
632 typedef MCI_PLAY_PARMS MCI_DGV_PLAY_PARMS, * LPMCI_DGV_PLAY_PARMS;
634 /* parameter block for MCI_PUT command message */
636 typedef MCI_DGV_RECT_PARMS MCI_DGV_PUT_PARMS, * LPMCI_DGV_PUT_PARMS;
638 /* parameter block for MCI_QUALITY command message */
640 typedef struct {
641 DWORD_PTR dwCallback;
642 DWORD dwItem;
643 LPSTR lpstrName;
644 DWORD lpstrAlgorithm;
645 DWORD dwHandle;
646 } MCI_DGV_QUALITY_PARMSA, *LPMCI_DGV_QUALITY_PARMSA;
648 typedef struct {
649 DWORD_PTR dwCallback;
650 DWORD dwItem;
651 LPWSTR lpstrName;
652 DWORD lpstrAlgorithm;
653 DWORD dwHandle;
654 } MCI_DGV_QUALITY_PARMSW, *LPMCI_DGV_QUALITY_PARMSW;
656 DECL_WINELIB_TYPE_AW(MCI_DGV_QUALITY_PARMS)
657 DECL_WINELIB_TYPE_AW(LPMCI_DGV_QUALITY_PARMS)
659 /* parameter block for MCI_REALIZE command message */
661 typedef MCI_GENERIC_PARMS MCI_REALIZE_PARMS, * LPMCI_REALIZE_PARMS;
663 /* parameter block for MCI_RECORD command message */
665 typedef struct {
666 DWORD_PTR dwCallback;
667 DWORD dwFrom;
668 DWORD dwTo;
669 RECT rc;
670 DWORD dwAudioStream;
671 DWORD dwVideoStream;
672 } MCI_DGV_RECORD_PARMS, * LPMCI_DGV_RECORD_PARMS;
674 /* parameter block for MCI_RESERVE command message */
676 typedef struct {
677 DWORD_PTR dwCallback;
678 LPSTR lpstrPath;
679 DWORD dwSize;
680 } MCI_DGV_RESERVE_PARMSA, *LPMCI_DGV_RESERVE_PARMSA;
682 typedef struct {
683 DWORD_PTR dwCallback;
684 LPWSTR lpstrPath;
685 DWORD dwSize;
686 } MCI_DGV_RESERVE_PARMSW, *LPMCI_DGV_RESERVE_PARMSW;
688 DECL_WINELIB_TYPE_AW(MCI_DGV_RESERVE_PARMS)
689 DECL_WINELIB_TYPE_AW(LPMCI_DGV_RESERVE_PARMS)
691 /* parameter block for MCI_RESTORE command message */
693 typedef struct {
694 DWORD_PTR dwCallback;
695 LPSTR lpstrFileName;
696 RECT rc;
697 } MCI_DGV_RESTORE_PARMSA, *LPMCI_DGV_RESTORE_PARMSA;
699 typedef struct {
700 DWORD_PTR dwCallback;
701 LPWSTR lpstrFileName;
702 RECT rc;
703 } MCI_DGV_RESTORE_PARMSW, *LPMCI_DGV_RESTORE_PARMSW;
705 DECL_WINELIB_TYPE_AW(MCI_DGV_RESTORE_PARMS)
706 DECL_WINELIB_TYPE_AW(LPMCI_DGV_RESTORE_PARMS)
708 /* parameter block for MCI_RESUME command message */
710 typedef MCI_GENERIC_PARMS MCI_DGV_RESUME_PARMS, * LPMCI_DGV_RESUME_PARMS;
712 /* parameter block for MCI_SAVE command message */
714 typedef struct {
715 DWORD_PTR dwCallback;
716 LPSTR lpstrFileName;
717 RECT rc;
718 } MCI_DGV_SAVE_PARMSA, *LPMCI_DGV_SAVE_PARMSA;
720 typedef struct {
721 DWORD_PTR dwCallback;
722 LPWSTR lpstrFileName;
723 RECT rc;
724 } MCI_DGV_SAVE_PARMSW, *LPMCI_DGV_SAVE_PARMSW;
726 DECL_WINELIB_TYPE_AW(MCI_DGV_SAVE_PARMS)
727 DECL_WINELIB_TYPE_AW(LPMCI_DGV_SAVE_PARMS)
729 /* parameter block for MCI_SET command message */
731 typedef struct {
732 DWORD_PTR dwCallback;
733 DWORD dwTimeFormat;
734 DWORD dwAudio;
735 DWORD dwFileFormat;
736 DWORD dwSpeed;
737 } MCI_DGV_SET_PARMS, *LPMCI_DGV_SET_PARMS;
739 /* parameter block for MCI_SETAUDIO command message */
741 typedef struct {
742 DWORD_PTR dwCallback;
743 DWORD dwItem;
744 DWORD dwValue;
745 DWORD dwOver;
746 LPSTR lpstrAlgorithm;
747 LPSTR lpstrQuality;
748 } MCI_DGV_SETAUDIO_PARMSA, *LPMCI_DGV_SETAUDIO_PARMSA;
750 typedef struct {
751 DWORD_PTR dwCallback;
752 DWORD dwItem;
753 DWORD dwValue;
754 DWORD dwOver;
755 LPWSTR lpstrAlgorithm;
756 LPWSTR lpstrQuality;
757 } MCI_DGV_SETAUDIO_PARMSW, *LPMCI_DGV_SETAUDIO_PARMSW;
759 DECL_WINELIB_TYPE_AW(MCI_DGV_SETAUDIO_PARMS)
760 DECL_WINELIB_TYPE_AW(LPMCI_DGV_SETAUDIO_PARMS)
762 /* parameter block for MCI_SIGNAL command message */
764 typedef struct {
765 DWORD_PTR dwCallback;
766 DWORD dwPosition;
767 DWORD dwPeriod;
768 DWORD dwUserParm;
769 } MCI_DGV_SIGNAL_PARMS, * LPMCI_DGV_SIGNAL_PARMS;
771 /* parameter block for MCI_SETVIDEO command message */
773 typedef struct {
774 DWORD_PTR dwCallback;
775 DWORD dwItem;
776 DWORD dwValue;
777 DWORD dwOver;
778 LPSTR lpstrAlgorithm;
779 LPSTR lpstrQuality;
780 DWORD dwSourceNumber;
781 } MCI_DGV_SETVIDEO_PARMSA, *LPMCI_DGV_SETVIDEO_PARMSA;
783 typedef struct {
784 DWORD_PTR dwCallback;
785 DWORD dwItem;
786 DWORD dwValue;
787 DWORD dwOver;
788 LPWSTR lpstrAlgorithm;
789 LPWSTR lpstrQuality;
790 DWORD dwSourceNumber;
791 } MCI_DGV_SETVIDEO_PARMSW, *LPMCI_DGV_SETVIDEO_PARMSW;
793 DECL_WINELIB_TYPE_AW(MCI_DGV_SETVIDEO_PARMS)
794 DECL_WINELIB_TYPE_AW(LPMCI_DGV_SETVIDEO_PARMS)
796 /* parameter block for MCI_STATUS command message */
798 typedef struct {
799 DWORD_PTR dwCallback;
800 DWORD_PTR dwReturn;
801 DWORD dwItem;
802 DWORD dwTrack;
803 LPSTR lpstrDrive;
804 DWORD dwReference;
805 } MCI_DGV_STATUS_PARMSA, *LPMCI_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, *LPMCI_DGV_STATUS_PARMSW;
816 DECL_WINELIB_TYPE_AW(MCI_DGV_STATUS_PARMS)
817 DECL_WINELIB_TYPE_AW(LPMCI_DGV_STATUS_PARMS)
819 /* parameter block for MCI_STEP command message */
821 typedef struct {
822 DWORD_PTR dwCallback;
823 DWORD dwFrames;
824 } MCI_DGV_STEP_PARMS, *LPMCI_DGV_STEP_PARMS;
826 /* parameter block for MCI_STOP command message */
828 typedef MCI_GENERIC_PARMS MCI_DGV_STOP_PARMS, * LPMCI_DGV_STOP_PARMS;
830 /* parameter block for MCI_UNFREEZE command message */
832 typedef MCI_DGV_RECT_PARMS MCI_DGV_UNFREEZE_PARMS, * LPMCI_DGV_UNFREEZE_PARMS;
834 /* parameter block for MCI_UPDATE command message */
836 typedef struct {
837 DWORD_PTR dwCallback;
838 RECT rc;
839 HDC hDC;
840 } MCI_DGV_UPDATE_PARMS, * LPMCI_DGV_UPDATE_PARMS;
842 /* parameter block for MCI_WHERE command message */
844 typedef MCI_DGV_RECT_PARMS MCI_DGV_WHERE_PARMS, * LPMCI_DGV_WHERE_PARMS;
846 /* parameter block for MCI_WINDOW command message */
848 typedef struct {
849 DWORD_PTR dwCallback;
850 HWND hWnd;
851 UINT nCmdShow;
852 LPSTR lpstrText;
853 } MCI_DGV_WINDOW_PARMSA, *LPMCI_DGV_WINDOW_PARMSA;
855 typedef struct {
856 DWORD_PTR dwCallback;
857 HWND hWnd;
858 UINT nCmdShow;
859 LPWSTR lpstrText;
860 } MCI_DGV_WINDOW_PARMSW, *LPMCI_DGV_WINDOW_PARMSW;
862 DECL_WINELIB_TYPE_AW(MCI_DGV_WINDOW_PARMS)
864 #ifdef __cplusplus
866 #endif
868 #include <poppack.h>
870 #endif /* __WINE_DIGITALV_H */