| /* |
| * Copyright (C) 1999 Eric Pouech |
| * |
| * This library is free software; you can redistribute it and/or |
| * modify it under the terms of the GNU Lesser General Public |
| * License as published by the Free Software Foundation; either |
| * version 2.1 of the License, or (at your option) any later version. |
| * |
| * This library is distributed in the hope that it will be useful, |
| * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| * Lesser General Public License for more details. |
| * |
| * You should have received a copy of the GNU Lesser General Public |
| * License along with this library; if not, write to the Free Software |
| * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA |
| */ |
| |
| #ifndef __WINE_DIGITALV_H |
| #define __WINE_DIGITALV_H |
| |
| /* |
| * Wine Digital Video extensions |
| */ |
| |
| #include <pshpack1.h> |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| #define MCI_TEST __MSABI_LONG(0x00000020) |
| |
| /* Message values */ |
| |
| #define MCI_CAPTURE 0x0870 |
| #define MCI_MONITOR 0x0871 |
| #define MCI_RESERVE 0x0872 |
| #define MCI_SETAUDIO 0x0873 |
| #define MCI_SIGNAL 0x0875 |
| #define MCI_SETVIDEO 0x0876 |
| #define MCI_QUALITY 0x0877 |
| #define MCI_LIST 0x0878 |
| #define MCI_UNDO 0x0879 |
| #define MCI_CONFIGURE 0x087A |
| #define MCI_RESTORE 0x087B |
| |
| /* Return and string constant values */ |
| |
| #define MCI_ON 1 |
| #define MCI_OFF 0 |
| |
| #define MCI_DGV_FILE_MODE_SAVING 0x0001 |
| #define MCI_DGV_FILE_MODE_LOADING 0x0002 |
| #define MCI_DGV_FILE_MODE_EDITING 0x0003 |
| #define MCI_DGV_FILE_MODE_IDLE 0x0004 |
| |
| /* These identifiers are used only by device drivers */ |
| |
| #define MCI_ON_S __MSABI_LONG(0x00008000) |
| #define MCI_OFF_S __MSABI_LONG(0x00008001) |
| #define MCI_DGV_FILE_S __MSABI_LONG(0x00008002) |
| #define MCI_DGV_INPUT_S __MSABI_LONG(0x00008003) |
| |
| #define MCI_DGV_FILE_MODE_SAVING_S __MSABI_LONG(0x00008004) |
| #define MCI_DGV_FILE_MODE_LOADING_S __MSABI_LONG(0x00008005) |
| #define MCI_DGV_FILE_MODE_EDITING_S __MSABI_LONG(0x00008006) |
| #define MCI_DGV_FILE_MODE_IDLE_S __MSABI_LONG(0x00008007) |
| |
| #define MCI_DGV_SETVIDEO_SRC_NTSC_S __MSABI_LONG(0x00008010) |
| #define MCI_DGV_SETVIDEO_SRC_RGB_S __MSABI_LONG(0x00008011) |
| #define MCI_DGV_SETVIDEO_SRC_SVIDEO_S __MSABI_LONG(0x00008012) |
| #define MCI_DGV_SETVIDEO_SRC_PAL_S __MSABI_LONG(0x00008013) |
| #define MCI_DGV_SETVIDEO_SRC_SECAM_S __MSABI_LONG(0x00008014) |
| #define MCI_DGV_SETVIDEO_SRC_GENERIC_S __MSABI_LONG(0x00008015) |
| |
| #define MCI_DGV_SETAUDIO_SRC_LEFT_S __MSABI_LONG(0x00008020) |
| #define MCI_DGV_SETAUDIO_SRC_RIGHT_S __MSABI_LONG(0x00008021) |
| #define MCI_DGV_SETAUDIO_SRC_AVERAGE_S __MSABI_LONG(0x00008022) |
| #define MCI_DGV_SETAUDIO_SRC_STEREO_S __MSABI_LONG(0x00008023) |
| |
| /* Window message for signal notification */ |
| |
| #ifndef MM_MCISIGNAL |
| #define MM_MCISIGNAL 0x3CB |
| #endif |
| |
| /* error values */ |
| |
| #define MCIERR_DGV_DEVICE_LIMIT (MCIERR_CUSTOM_DRIVER_BASE+0) |
| #define MCIERR_DGV_IOERR (MCIERR_CUSTOM_DRIVER_BASE+1) |
| #define MCIERR_DGV_WORKSPACE_EMPTY (MCIERR_CUSTOM_DRIVER_BASE+2) |
| #define MCIERR_DGV_DISK_FULL (MCIERR_CUSTOM_DRIVER_BASE+3) |
| #define MCIERR_DGV_DEVICE_MEMORY_FULL (MCIERR_CUSTOM_DRIVER_BASE+4) |
| #define MCIERR_DGV_BAD_CLIPBOARD_RANGE (MCIERR_CUSTOM_DRIVER_BASE+5) |
| |
| /* defines for monitor methods */ |
| |
| #define MCI_DGV_METHOD_PRE __MSABI_LONG(0x0000a000) |
| #define MCI_DGV_METHOD_POST __MSABI_LONG(0x0000a001) |
| #define MCI_DGV_METHOD_DIRECT __MSABI_LONG(0x0000a002) |
| |
| /* defines for known file formats */ |
| |
| #define MCI_DGV_FF_AVSS __MSABI_LONG(0x00004000) |
| #define MCI_DGV_FF_AVI __MSABI_LONG(0x00004001) |
| #define MCI_DGV_FF_DIB __MSABI_LONG(0x00004002) |
| #define MCI_DGV_FF_RDIB __MSABI_LONG(0x00004003) |
| #define MCI_DGV_FF_JPEG __MSABI_LONG(0x00004004) |
| #define MCI_DGV_FF_RJPEG __MSABI_LONG(0x00004005) |
| #define MCI_DGV_FF_JFIF __MSABI_LONG(0x00004006) |
| #define MCI_DGV_FF_MPEG __MSABI_LONG(0x00004007) |
| |
| /* values for dwItem field of MCI_CAPABILITY_PARMS structure */ |
| |
| #define MCI_DGV_GETDEVCAPS_CAN_LOCK __MSABI_LONG(0x00004000) |
| #define MCI_DGV_GETDEVCAPS_CAN_STRETCH __MSABI_LONG(0x00004001) |
| #define MCI_DGV_GETDEVCAPS_CAN_FREEZE __MSABI_LONG(0x00004002) |
| #define MCI_DGV_GETDEVCAPS_MAX_WINDOWS __MSABI_LONG(0x00004003) |
| #define MCI_DGV_GETDEVCAPS_CAN_REVERSE __MSABI_LONG(0x00004004) |
| #define MCI_DGV_GETDEVCAPS_HAS_STILL __MSABI_LONG(0x00004005) |
| #define MCI_DGV_GETDEVCAPS_PALETTES __MSABI_LONG(0x00004006) |
| #define MCI_DGV_GETDEVCAPS_CAN_STR_IN __MSABI_LONG(0x00004008) |
| #define MCI_DGV_GETDEVCAPS_CAN_TEST __MSABI_LONG(0x00004009) |
| #define MCI_DGV_GETDEVCAPS_MAXIMUM_RATE __MSABI_LONG(0x0000400a) |
| #define MCI_DGV_GETDEVCAPS_MINIMUM_RATE __MSABI_LONG(0x0000400b) |
| |
| /* flags for dwFlags parameter of MCI_CAPTURE command message */ |
| |
| #define MCI_DGV_CAPTURE_AS __MSABI_LONG(0x00010000) |
| #define MCI_DGV_CAPTURE_AT __MSABI_LONG(0x00020000) |
| |
| /* flags for dwFlags parameter of MCI_COPY command message */ |
| |
| #define MCI_DGV_COPY_AT __MSABI_LONG(0x00010000) |
| #define MCI_DGV_COPY_AUDIO_STREAM __MSABI_LONG(0x00020000) |
| #define MCI_DGV_COPY_VIDEO_STREAM __MSABI_LONG(0x00040000) |
| |
| /* flags for dwFlags parameter of MCI_CUE command message */ |
| |
| #define MCI_DGV_CUE_INPUT __MSABI_LONG(0x00010000) |
| #define MCI_DGV_CUE_OUTPUT __MSABI_LONG(0x00020000) |
| #define MCI_DGV_CUE_NOSHOW __MSABI_LONG(0x00040000) |
| |
| /* flags for dwFlags parameter of MCI_CUT command message */ |
| |
| #define MCI_DGV_CUT_AT __MSABI_LONG(0x00010000) |
| #define MCI_DGV_CUT_AUDIO_STREAM __MSABI_LONG(0x00020000) |
| #define MCI_DGV_CUT_VIDEO_STREAM __MSABI_LONG(0x00040000) |
| |
| /* flags for dwFlags parameter of MCI_DELETE command message */ |
| |
| #define MCI_DGV_DELETE_AT __MSABI_LONG(0x00010000) |
| #define MCI_DGV_DELETE_AUDIO_STREAM __MSABI_LONG(0x00020000) |
| #define MCI_DGV_DELETE_VIDEO_STREAM __MSABI_LONG(0x00040000) |
| |
| /* flags for dwFlags parameter of MCI_FREEZE command message */ |
| |
| #define MCI_DGV_FREEZE_AT __MSABI_LONG(0x00010000) |
| #define MCI_DGV_FREEZE_OUTSIDE __MSABI_LONG(0x00020000) |
| |
| /* flags for dwFlags parameter of MCI_INFO command message */ |
| |
| #define MCI_DGV_INFO_TEXT __MSABI_LONG(0x00010000) |
| #define MCI_DGV_INFO_ITEM __MSABI_LONG(0x00020000) |
| |
| /* values for dwItem field of MCI_DGV_INFO_PARMS structure */ |
| |
| #define MCI_INFO_VERSION __MSABI_LONG(0x00000400) |
| |
| #define MCI_DGV_INFO_USAGE __MSABI_LONG(0x00004000) |
| #define MCI_DGV_INFO_AUDIO_QUALITY __MSABI_LONG(0x00004001) |
| #define MCI_DGV_INFO_STILL_QUALITY __MSABI_LONG(0x00004002) |
| #define MCI_DGV_INFO_VIDEO_QUALITY __MSABI_LONG(0x00004003) |
| #define MCI_DGV_INFO_AUDIO_ALG __MSABI_LONG(0x00004004) |
| #define MCI_DGV_INFO_STILL_ALG __MSABI_LONG(0x00004005) |
| #define MCI_DGV_INFO_VIDEO_ALG __MSABI_LONG(0x00004006) |
| |
| /* flags for dwFlags parameter of MCI_LIST command message */ |
| |
| #define MCI_DGV_LIST_ITEM __MSABI_LONG(0x00010000) |
| #define MCI_DGV_LIST_COUNT __MSABI_LONG(0x00020000) |
| #define MCI_DGV_LIST_NUMBER __MSABI_LONG(0x00040000) |
| #define MCI_DGV_LIST_ALG __MSABI_LONG(0x00080000) |
| |
| /* values for dwItem field of MCI_DGV_LIST_PARMS structure */ |
| |
| #define MCI_DGV_LIST_AUDIO_ALG __MSABI_LONG(0x00004000) |
| #define MCI_DGV_LIST_AUDIO_QUALITY __MSABI_LONG(0x00004001) |
| #define MCI_DGV_LIST_AUDIO_STREAM __MSABI_LONG(0x00004002) |
| #define MCI_DGV_LIST_STILL_ALG __MSABI_LONG(0x00004003) |
| #define MCI_DGV_LIST_STILL_QUALITY __MSABI_LONG(0x00004004) |
| #define MCI_DGV_LIST_VIDEO_ALG __MSABI_LONG(0x00004005) |
| #define MCI_DGV_LIST_VIDEO_QUALITY __MSABI_LONG(0x00004006) |
| #define MCI_DGV_LIST_VIDEO_STREAM __MSABI_LONG(0x00004007) |
| #define MCI_DGV_LIST_VIDEO_SOURCE __MSABI_LONG(0x00004008) |
| |
| |
| /* flags for dwFlags parameter of MCI_MONITOR command message */ |
| |
| #define MCI_DGV_MONITOR_METHOD __MSABI_LONG(0x00010000) |
| #define MCI_DGV_MONITOR_SOURCE __MSABI_LONG(0x00020000) |
| |
| /* values for dwSource parameter of the MCI_DGV_MONITOR_PARMS structure */ |
| |
| #define MCI_DGV_MONITOR_INPUT __MSABI_LONG(0x00004000) |
| #define MCI_DGV_MONITOR_FILE __MSABI_LONG(0x00004001) |
| |
| /* flags for dwFlags parameter of MCI_OPEN command message */ |
| |
| #define MCI_DGV_OPEN_WS __MSABI_LONG(0x00010000) |
| #define MCI_DGV_OPEN_PARENT __MSABI_LONG(0x00020000) |
| #define MCI_DGV_OPEN_NOSTATIC __MSABI_LONG(0x00040000) |
| #define MCI_DGV_OPEN_16BIT __MSABI_LONG(0x00080000) |
| #define MCI_DGV_OPEN_32BIT __MSABI_LONG(0x00100000) |
| |
| /* flags for dwFlags parameter of MCI_PASTE command message */ |
| |
| #define MCI_DGV_PASTE_AT __MSABI_LONG(0x00010000) |
| #define MCI_DGV_PASTE_AUDIO_STREAM __MSABI_LONG(0x00020000) |
| #define MCI_DGV_PASTE_VIDEO_STREAM __MSABI_LONG(0x00040000) |
| #define MCI_DGV_PASTE_INSERT __MSABI_LONG(0x00080000) |
| #define MCI_DGV_PASTE_OVERWRITE __MSABI_LONG(0x00100000) |
| |
| /* flags for dwFlags parameter of MCI_PLAY command message */ |
| |
| #define MCI_DGV_PLAY_REPEAT __MSABI_LONG(0x00010000) |
| #define MCI_DGV_PLAY_REVERSE __MSABI_LONG(0x00020000) |
| |
| /* flags for dwFlags parameter of MCI_PUT command message */ |
| |
| #define MCI_DGV_RECT __MSABI_LONG(0x00010000) |
| #define MCI_DGV_PUT_SOURCE __MSABI_LONG(0x00020000) |
| #define MCI_DGV_PUT_DESTINATION __MSABI_LONG(0x00040000) |
| #define MCI_DGV_PUT_FRAME __MSABI_LONG(0x00080000) |
| #define MCI_DGV_PUT_VIDEO __MSABI_LONG(0x00100000) |
| #define MCI_DGV_PUT_WINDOW __MSABI_LONG(0x00200000) |
| #define MCI_DGV_PUT_CLIENT __MSABI_LONG(0x00400000) |
| |
| /* flags for dwFlags parameter of MCI_QUALITY command message */ |
| |
| #define MCI_QUALITY_ITEM __MSABI_LONG(0x00010000) |
| #define MCI_QUALITY_NAME __MSABI_LONG(0x00020000) |
| #define MCI_QUALITY_ALG __MSABI_LONG(0x00040000) |
| #define MCI_QUALITY_DIALOG __MSABI_LONG(0x00080000) |
| #define MCI_QUALITY_HANDLE __MSABI_LONG(0x00100000) |
| |
| /* values for dwItem field of MCI_QUALITY_PARMS structure */ |
| |
| #define MCI_QUALITY_ITEM_AUDIO __MSABI_LONG(0x00004000) |
| #define MCI_QUALITY_ITEM_STILL __MSABI_LONG(0x00004001) |
| #define MCI_QUALITY_ITEM_VIDEO __MSABI_LONG(0x00004002) |
| |
| /* flags for dwFlags parameter of MCI_REALIZE command message */ |
| |
| #define MCI_DGV_REALIZE_NORM __MSABI_LONG(0x00010000) |
| #define MCI_DGV_REALIZE_BKGD __MSABI_LONG(0x00020000) |
| |
| /* flags for dwFlags parameter of MCI_RECORD command message */ |
| |
| #define MCI_DGV_RECORD_HOLD __MSABI_LONG(0x00020000) |
| #define MCI_DGV_RECORD_AUDIO_STREAM __MSABI_LONG(0x00040000) |
| #define MCI_DGV_RECORD_VIDEO_STREAM __MSABI_LONG(0x00080000) |
| |
| /* flags for dwFlags parameters of MCI_RESERVE command message */ |
| |
| #define MCI_DGV_RESERVE_IN __MSABI_LONG(0x00010000) |
| #define MCI_DGV_RESERVE_SIZE __MSABI_LONG(0x00020000) |
| |
| /* flags for dwFlags parameter of MCI_RESTORE command message */ |
| |
| #define MCI_DGV_RESTORE_FROM __MSABI_LONG(0x00010000) |
| #define MCI_DGV_RESTORE_AT __MSABI_LONG(0x00020000) |
| |
| /* flags for dwFlags parameters of MCI_SAVE command message */ |
| |
| #define MCI_DGV_SAVE_ABORT __MSABI_LONG(0x00020000) |
| #define MCI_DGV_SAVE_KEEPRESERVE __MSABI_LONG(0x00040000) |
| |
| /* flags for dwFlags parameters of MCI_SET command message */ |
| |
| #define MCI_DGV_SET_SEEK_EXACTLY __MSABI_LONG(0x00010000) |
| #define MCI_DGV_SET_SPEED __MSABI_LONG(0x00020000) |
| #define MCI_DGV_SET_STILL __MSABI_LONG(0x00040000) |
| #define MCI_DGV_SET_FILEFORMAT __MSABI_LONG(0x00080000) |
| |
| /* flags for the dwFlags parameter of MCI_SETAUDIO command message */ |
| |
| #define MCI_DGV_SETAUDIO_OVER __MSABI_LONG(0x00010000) |
| #define MCI_DGV_SETAUDIO_CLOCKTIME __MSABI_LONG(0x00020000) |
| #define MCI_DGV_SETAUDIO_ALG __MSABI_LONG(0x00040000) |
| #define MCI_DGV_SETAUDIO_QUALITY __MSABI_LONG(0x00080000) |
| #define MCI_DGV_SETAUDIO_RECORD __MSABI_LONG(0x00100000) |
| #define MCI_DGV_SETAUDIO_LEFT __MSABI_LONG(0x00200000) |
| #define MCI_DGV_SETAUDIO_RIGHT __MSABI_LONG(0x00400000) |
| #define MCI_DGV_SETAUDIO_ITEM __MSABI_LONG(0x00800000) |
| #define MCI_DGV_SETAUDIO_VALUE __MSABI_LONG(0x01000000) |
| #define MCI_DGV_SETAUDIO_INPUT __MSABI_LONG(0x02000000) |
| #define MCI_DGV_SETAUDIO_OUTPUT __MSABI_LONG(0x04000000) |
| |
| /* values for the dwItem parameter of MCI_DGV_SETAUDIO_PARMS */ |
| |
| #define MCI_DGV_SETAUDIO_TREBLE __MSABI_LONG(0x00004000) |
| #define MCI_DGV_SETAUDIO_BASS __MSABI_LONG(0x00004001) |
| #define MCI_DGV_SETAUDIO_VOLUME __MSABI_LONG(0x00004002) |
| #define MCI_DGV_SETAUDIO_STREAM __MSABI_LONG(0x00004003) |
| #define MCI_DGV_SETAUDIO_SOURCE __MSABI_LONG(0x00004004) |
| #define MCI_DGV_SETAUDIO_SAMPLESPERSEC __MSABI_LONG(0x00004005) |
| #define MCI_DGV_SETAUDIO_AVGBYTESPERSEC __MSABI_LONG(0x00004006) |
| #define MCI_DGV_SETAUDIO_BLOCKALIGN __MSABI_LONG(0x00004007) |
| #define MCI_DGV_SETAUDIO_BITSPERSAMPLE __MSABI_LONG(0x00004008) |
| |
| /* values for the dwValue parameter of MCI_DGV_SETAUDIO_PARMS |
| used with MCI_DGV_SETAUDIO_SOURCE */ |
| |
| #define MCI_DGV_SETAUDIO_SOURCE_STEREO __MSABI_LONG(0x00000000) |
| #define MCI_DGV_SETAUDIO_SOURCE_LEFT __MSABI_LONG(0x00000001) |
| #define MCI_DGV_SETAUDIO_SOURCE_RIGHT __MSABI_LONG(0x00000002) |
| #define MCI_DGV_SETAUDIO_SOURCE_AVERAGE __MSABI_LONG(0x00004000) |
| |
| /* flags for the dwFlags parameter of MCI_SETVIDEO command */ |
| |
| #define MCI_DGV_SETVIDEO_QUALITY __MSABI_LONG(0x00010000) |
| #define MCI_DGV_SETVIDEO_ALG __MSABI_LONG(0x00020000) |
| #define MCI_DGV_SETVIDEO_CLOCKTIME __MSABI_LONG(0x00040000) |
| #define MCI_DGV_SETVIDEO_SRC_NUMBER __MSABI_LONG(0x00080000) |
| #define MCI_DGV_SETVIDEO_ITEM __MSABI_LONG(0x00100000) |
| #define MCI_DGV_SETVIDEO_OVER __MSABI_LONG(0x00200000) |
| #define MCI_DGV_SETVIDEO_RECORD __MSABI_LONG(0x00400000) |
| #define MCI_DGV_SETVIDEO_STILL __MSABI_LONG(0x00800000) |
| #define MCI_DGV_SETVIDEO_VALUE __MSABI_LONG(0x01000000) |
| #define MCI_DGV_SETVIDEO_INPUT __MSABI_LONG(0x02000000) |
| #define MCI_DGV_SETVIDEO_OUTPUT __MSABI_LONG(0x04000000) |
| |
| /* values for the dwTo field of MCI_SETVIDEO_PARMS |
| used with MCI_DGV_SETVIDEO_SOURCE */ |
| |
| #define MCI_DGV_SETVIDEO_SRC_NTSC __MSABI_LONG(0x00004000) |
| #define MCI_DGV_SETVIDEO_SRC_RGB __MSABI_LONG(0x00004001) |
| #define MCI_DGV_SETVIDEO_SRC_SVIDEO __MSABI_LONG(0x00004002) |
| #define MCI_DGV_SETVIDEO_SRC_PAL __MSABI_LONG(0x00004003) |
| #define MCI_DGV_SETVIDEO_SRC_SECAM __MSABI_LONG(0x00004004) |
| #define MCI_DGV_SETVIDEO_SRC_GENERIC __MSABI_LONG(0x00004005) |
| |
| /* values for the dwItem field of MCI_SETVIDEO_PARMS */ |
| |
| #define MCI_DGV_SETVIDEO_BRIGHTNESS __MSABI_LONG(0x00004000) |
| #define MCI_DGV_SETVIDEO_COLOR __MSABI_LONG(0x00004001) |
| #define MCI_DGV_SETVIDEO_CONTRAST __MSABI_LONG(0x00004002) |
| #define MCI_DGV_SETVIDEO_TINT __MSABI_LONG(0x00004003) |
| #define MCI_DGV_SETVIDEO_SHARPNESS __MSABI_LONG(0x00004004) |
| #define MCI_DGV_SETVIDEO_GAMMA __MSABI_LONG(0x00004005) |
| #define MCI_DGV_SETVIDEO_STREAM __MSABI_LONG(0x00004006) |
| #define MCI_DGV_SETVIDEO_PALHANDLE __MSABI_LONG(0x00004007) |
| #define MCI_DGV_SETVIDEO_FRAME_RATE __MSABI_LONG(0x00004008) |
| #define MCI_DGV_SETVIDEO_SOURCE __MSABI_LONG(0x00004009) |
| #define MCI_DGV_SETVIDEO_KEY_INDEX __MSABI_LONG(0x0000400a) |
| #define MCI_DGV_SETVIDEO_KEY_COLOR __MSABI_LONG(0x0000400b) |
| #define MCI_DGV_SETVIDEO_BITSPERPEL __MSABI_LONG(0x0000400c) |
| |
| /* flags for the dwFlags parameter of MCI_SIGNAL */ |
| |
| #define MCI_DGV_SIGNAL_AT __MSABI_LONG(0x00010000) |
| #define MCI_DGV_SIGNAL_EVERY __MSABI_LONG(0x00020000) |
| #define MCI_DGV_SIGNAL_USERVAL __MSABI_LONG(0x00040000) |
| #define MCI_DGV_SIGNAL_CANCEL __MSABI_LONG(0x00080000) |
| #define MCI_DGV_SIGNAL_POSITION __MSABI_LONG(0x00100000) |
| |
| /* flags for the dwFlags parameter of MCI_STATUS command */ |
| |
| #define MCI_DGV_STATUS_NOMINAL __MSABI_LONG(0x00020000) |
| #define MCI_DGV_STATUS_REFERENCE __MSABI_LONG(0x00040000) |
| #define MCI_DGV_STATUS_LEFT __MSABI_LONG(0x00080000) |
| #define MCI_DGV_STATUS_RIGHT __MSABI_LONG(0x00100000) |
| #define MCI_DGV_STATUS_DISKSPACE __MSABI_LONG(0x00200000) |
| #define MCI_DGV_STATUS_INPUT __MSABI_LONG(0x00400000) |
| #define MCI_DGV_STATUS_OUTPUT __MSABI_LONG(0x00800000) |
| #define MCI_DGV_STATUS_RECORD __MSABI_LONG(0x01000000) |
| |
| /* values for dwItem field of MCI_STATUS_PARMS structure */ |
| |
| #define MCI_DGV_STATUS_AUDIO_INPUT __MSABI_LONG(0x00004000) |
| #define MCI_DGV_STATUS_HWND __MSABI_LONG(0x00004001) |
| #define MCI_DGV_STATUS_SPEED __MSABI_LONG(0x00004003) |
| #define MCI_DGV_STATUS_HPAL __MSABI_LONG(0x00004004) |
| #define MCI_DGV_STATUS_BRIGHTNESS __MSABI_LONG(0x00004005) |
| #define MCI_DGV_STATUS_COLOR __MSABI_LONG(0x00004006) |
| #define MCI_DGV_STATUS_CONTRAST __MSABI_LONG(0x00004007) |
| #define MCI_DGV_STATUS_FILEFORMAT __MSABI_LONG(0x00004008) |
| #define MCI_DGV_STATUS_AUDIO_SOURCE __MSABI_LONG(0x00004009) |
| #define MCI_DGV_STATUS_GAMMA __MSABI_LONG(0x0000400a) |
| #define MCI_DGV_STATUS_MONITOR __MSABI_LONG(0x0000400b) |
| #define MCI_DGV_STATUS_MONITOR_METHOD __MSABI_LONG(0x0000400c) |
| #define MCI_DGV_STATUS_FRAME_RATE __MSABI_LONG(0x0000400e) |
| #define MCI_DGV_STATUS_BASS __MSABI_LONG(0x0000400f) |
| #define MCI_DGV_STATUS_SIZE __MSABI_LONG(0x00004010) |
| #define MCI_DGV_STATUS_SEEK_EXACTLY __MSABI_LONG(0x00004011) |
| #define MCI_DGV_STATUS_SHARPNESS __MSABI_LONG(0x00004012) |
| #define MCI_DGV_STATUS_SMPTE __MSABI_LONG(0x00004013) |
| #define MCI_DGV_STATUS_AUDIO __MSABI_LONG(0x00004014) |
| #define MCI_DGV_STATUS_TINT __MSABI_LONG(0x00004015) |
| #define MCI_DGV_STATUS_TREBLE __MSABI_LONG(0x00004016) |
| #define MCI_DGV_STATUS_UNSAVED __MSABI_LONG(0x00004017) |
| #define MCI_DGV_STATUS_VIDEO __MSABI_LONG(0x00004018) |
| #define MCI_DGV_STATUS_VOLUME __MSABI_LONG(0x00004019) |
| #define MCI_DGV_STATUS_AUDIO_RECORD __MSABI_LONG(0x0000401a) |
| #define MCI_DGV_STATUS_VIDEO_SOURCE __MSABI_LONG(0x0000401b) |
| #define MCI_DGV_STATUS_VIDEO_RECORD __MSABI_LONG(0x0000401c) |
| #define MCI_DGV_STATUS_STILL_FILEFORMAT __MSABI_LONG(0x0000401d) |
| #define MCI_DGV_STATUS_VIDEO_SRC_NUM __MSABI_LONG(0x0000401e) |
| #define MCI_DGV_STATUS_FILE_MODE __MSABI_LONG(0x0000401f) |
| #define MCI_DGV_STATUS_FILE_COMPLETION __MSABI_LONG(0x00004020) |
| #define MCI_DGV_STATUS_WINDOW_VISIBLE __MSABI_LONG(0x00004021) |
| #define MCI_DGV_STATUS_WINDOW_MINIMIZED __MSABI_LONG(0x00004022) |
| #define MCI_DGV_STATUS_WINDOW_MAXIMIZED __MSABI_LONG(0x00004023) |
| #define MCI_DGV_STATUS_KEY_INDEX __MSABI_LONG(0x00004024) |
| #define MCI_DGV_STATUS_KEY_COLOR __MSABI_LONG(0x00004025) |
| #define MCI_DGV_STATUS_PAUSE_MODE __MSABI_LONG(0x00004026) |
| #define MCI_DGV_STATUS_SAMPLESPERSEC __MSABI_LONG(0x00004027) |
| #define MCI_DGV_STATUS_AVGBYTESPERSEC __MSABI_LONG(0x00004028) |
| #define MCI_DGV_STATUS_BLOCKALIGN __MSABI_LONG(0x00004029) |
| #define MCI_DGV_STATUS_BITSPERSAMPLE __MSABI_LONG(0x0000402a) |
| #define MCI_DGV_STATUS_BITSPERPEL __MSABI_LONG(0x0000402b) |
| #define MCI_DGV_STATUS_FORWARD __MSABI_LONG(0x0000402c) |
| #define MCI_DGV_STATUS_AUDIO_STREAM __MSABI_LONG(0x0000402d) |
| #define MCI_DGV_STATUS_VIDEO_STREAM __MSABI_LONG(0x0000402e) |
| |
| /* flags for dwFlags parameter of MCI_STEP command message */ |
| |
| #define MCI_DGV_STEP_REVERSE __MSABI_LONG(0x00010000) |
| #define MCI_DGV_STEP_FRAMES __MSABI_LONG(0x00020000) |
| |
| /* flags for dwFlags parameter of MCI_STOP command message */ |
| |
| #define MCI_DGV_STOP_HOLD __MSABI_LONG(0x00010000) |
| |
| /* flags for dwFlags parameter of MCI_UPDATE command message */ |
| |
| #define MCI_DGV_UPDATE_HDC __MSABI_LONG(0x00020000) |
| #define MCI_DGV_UPDATE_PAINT __MSABI_LONG(0x00040000) |
| |
| /* flags for dwFlags parameter of MCI_WHERE command message */ |
| |
| #define MCI_DGV_WHERE_SOURCE __MSABI_LONG(0x00020000) |
| #define MCI_DGV_WHERE_DESTINATION __MSABI_LONG(0x00040000) |
| #define MCI_DGV_WHERE_FRAME __MSABI_LONG(0x00080000) |
| #define MCI_DGV_WHERE_VIDEO __MSABI_LONG(0x00100000) |
| #define MCI_DGV_WHERE_WINDOW __MSABI_LONG(0x00200000) |
| #define MCI_DGV_WHERE_MAX __MSABI_LONG(0x00400000) |
| |
| /* flags for dwFlags parameter of MCI_WINDOW command message */ |
| |
| #define MCI_DGV_WINDOW_HWND __MSABI_LONG(0x00010000) |
| #define MCI_DGV_WINDOW_STATE __MSABI_LONG(0x00040000) |
| #define MCI_DGV_WINDOW_TEXT __MSABI_LONG(0x00080000) |
| |
| /* flags for hWnd parameter of MCI_DGV_WINDOW_PARMS parameter block */ |
| |
| #define MCI_DGV_WINDOW_DEFAULT __MSABI_LONG(0x00000000) |
| |
| /* parameter block for MCI_WHERE, MCI_PUT, MCI_FREEZE, MCI_UNFREEZE cmds */ |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| RECT rc; |
| } MCI_DGV_RECT_PARMS, *LPMCI_DGV_RECT_PARMS; |
| |
| /* parameter block for MCI_CAPTURE command message */ |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| LPSTR lpstrFileName; |
| RECT rc; |
| } MCI_DGV_CAPTURE_PARMSA, *LPMCI_DGV_CAPTURE_PARMSA; |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| LPWSTR lpstrFileName; |
| RECT rc; |
| } MCI_DGV_CAPTURE_PARMSW, *LPMCI_DGV_CAPTURE_PARMSW; |
| |
| DECL_WINELIB_TYPE_AW(MCI_DGV_CAPTURE_PARMS) |
| DECL_WINELIB_TYPE_AW(LPMCI_DGV_CAPTURE_PARMS) |
| |
| /* parameter block for MCI_CLOSE command message */ |
| |
| typedef MCI_GENERIC_PARMS MCI_CLOSE_PARMS, *LPMCI_CLOSE_PARMS; |
| |
| /* parameter block for MCI_COPY command message */ |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| DWORD dwFrom; |
| DWORD dwTo; |
| RECT rc; |
| DWORD dwAudioStream; |
| DWORD dwVideoStream; |
| } MCI_DGV_COPY_PARMS, *LPMCI_DGV_COPY_PARMS; |
| |
| /* parameter block for MCI_CUE command message */ |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| DWORD dwTo; |
| } MCI_DGV_CUE_PARMS, *LPMCI_DGV_CUE_PARMS; |
| |
| /* parameter block for MCI_CUT command message */ |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| DWORD dwFrom; |
| DWORD dwTo; |
| RECT rc; |
| DWORD dwAudioStream; |
| DWORD dwVideoStream; |
| } MCI_DGV_CUT_PARMS, * LPMCI_DGV_CUT_PARMS; |
| |
| /* parameter block for MCI_DELETE command message */ |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| DWORD dwFrom; |
| DWORD dwTo; |
| RECT rc; |
| DWORD dwAudioStream; |
| DWORD dwVideoStream; |
| } MCI_DGV_DELETE_PARMS, * LPMCI_DGV_DELETE_PARMS; |
| |
| /* parameter block for MCI_FREEZE command message */ |
| |
| typedef MCI_DGV_RECT_PARMS MCI_DGV_FREEZE_PARMS, * LPMCI_DGV_FREEZE_PARMS; |
| |
| /* parameter block for MCI_INFO command message */ |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| LPSTR lpstrReturn; |
| DWORD dwRetSize; |
| DWORD dwItem; |
| } MCI_DGV_INFO_PARMSA, * LPMCI_DGV_INFO_PARMSA; |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| LPWSTR lpstrReturn; |
| DWORD dwRetSize; |
| DWORD dwItem; |
| } MCI_DGV_INFO_PARMSW, *LPMCI_DGV_INFO_PARMSW; |
| |
| DECL_WINELIB_TYPE_AW(MCI_DGV_INFO_PARMS) |
| DECL_WINELIB_TYPE_AW(LPMCI_DGV_INFO_PARMS) |
| |
| /* parameter block for MCI_LIST command message */ |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| LPSTR lpstrReturn; |
| DWORD dwLength; |
| DWORD dwNumber; |
| DWORD dwItem; |
| LPSTR lpstrAlgorithm; |
| } MCI_DGV_LIST_PARMSA, *LPMCI_DGV_LIST_PARMSA; |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| LPWSTR lpstrReturn; |
| DWORD dwLength; |
| DWORD dwNumber; |
| DWORD dwItem; |
| LPWSTR lpstrAlgorithm; |
| } MCI_DGV_LIST_PARMSW, *LPMCI_DGV_LIST_PARMSW; |
| |
| DECL_WINELIB_TYPE_AW(MCI_DGV_LIST_PARMS) |
| DECL_WINELIB_TYPE_AW(LPMCI_DGV_LIST_PARMS) |
| |
| /* parameter block for MCI_LOAD command message */ |
| |
| typedef MCI_LOAD_PARMSA MCI_DGV_LOAD_PARMSA, * LPMCI_DGV_LOAD_PARMSA; |
| typedef MCI_LOAD_PARMSW MCI_DGV_LOAD_PARMSW, * LPMCI_DGV_LOAD_PARMSW; |
| |
| DECL_WINELIB_TYPE_AW(MCI_DGV_LOAD_PARMS) |
| DECL_WINELIB_TYPE_AW(LPMCI_DGV_LOAD_PARMS) |
| |
| /* parameter block for MCI_MONITOR command message */ |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| DWORD dwSource; |
| DWORD dwMethod; |
| } MCI_DGV_MONITOR_PARMS, * LPMCI_DGV_MONITOR_PARMS; |
| |
| /* parameter block for MCI_OPEN command message */ |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| UINT wDeviceID; |
| LPSTR lpstrDeviceType; |
| LPSTR lpstrElementName; |
| LPSTR lpstrAlias; |
| DWORD dwStyle; |
| HWND hWndParent; |
| } MCI_DGV_OPEN_PARMSA, *LPMCI_DGV_OPEN_PARMSA; |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| UINT wDeviceID; |
| LPWSTR lpstrDeviceType; |
| LPWSTR lpstrElementName; |
| LPWSTR lpstrAlias; |
| DWORD dwStyle; |
| HWND hWndParent; |
| } MCI_DGV_OPEN_PARMSW, *LPMCI_DGV_OPEN_PARMSW; |
| |
| DECL_WINELIB_TYPE_AW(MCI_DGV_OPEN_PARMS) |
| DECL_WINELIB_TYPE_AW(LPMCI_DGV_OPEN_PARMS) |
| |
| /* parameter block for MCI_PAUSE command message */ |
| |
| typedef MCI_GENERIC_PARMS MCI_DGV_PAUSE_PARMS, * LPMCI_DGV_PAUSE_PARMS; |
| |
| /* parameter block for MCI_PASTE command message */ |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| DWORD dwTo; |
| RECT rc; |
| DWORD dwAudioStream; |
| DWORD dwVideoStream; |
| } MCI_DGV_PASTE_PARMS, * LPMCI_DGV_PASTE_PARMS; |
| |
| /* parameter block for MCI_PLAY command message */ |
| |
| typedef MCI_PLAY_PARMS MCI_DGV_PLAY_PARMS, * LPMCI_DGV_PLAY_PARMS; |
| |
| /* parameter block for MCI_PUT command message */ |
| |
| typedef MCI_DGV_RECT_PARMS MCI_DGV_PUT_PARMS, * LPMCI_DGV_PUT_PARMS; |
| |
| /* parameter block for MCI_QUALITY command message */ |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| DWORD dwItem; |
| LPSTR lpstrName; |
| DWORD lpstrAlgorithm; |
| DWORD dwHandle; |
| } MCI_DGV_QUALITY_PARMSA, *LPMCI_DGV_QUALITY_PARMSA; |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| DWORD dwItem; |
| LPWSTR lpstrName; |
| DWORD lpstrAlgorithm; |
| DWORD dwHandle; |
| } MCI_DGV_QUALITY_PARMSW, *LPMCI_DGV_QUALITY_PARMSW; |
| |
| DECL_WINELIB_TYPE_AW(MCI_DGV_QUALITY_PARMS) |
| DECL_WINELIB_TYPE_AW(LPMCI_DGV_QUALITY_PARMS) |
| |
| /* parameter block for MCI_REALIZE command message */ |
| |
| typedef MCI_GENERIC_PARMS MCI_REALIZE_PARMS, * LPMCI_REALIZE_PARMS; |
| |
| /* parameter block for MCI_RECORD command message */ |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| DWORD dwFrom; |
| DWORD dwTo; |
| RECT rc; |
| DWORD dwAudioStream; |
| DWORD dwVideoStream; |
| } MCI_DGV_RECORD_PARMS, * LPMCI_DGV_RECORD_PARMS; |
| |
| /* parameter block for MCI_RESERVE command message */ |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| LPSTR lpstrPath; |
| DWORD dwSize; |
| } MCI_DGV_RESERVE_PARMSA, *LPMCI_DGV_RESERVE_PARMSA; |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| LPWSTR lpstrPath; |
| DWORD dwSize; |
| } MCI_DGV_RESERVE_PARMSW, *LPMCI_DGV_RESERVE_PARMSW; |
| |
| DECL_WINELIB_TYPE_AW(MCI_DGV_RESERVE_PARMS) |
| DECL_WINELIB_TYPE_AW(LPMCI_DGV_RESERVE_PARMS) |
| |
| /* parameter block for MCI_RESTORE command message */ |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| LPSTR lpstrFileName; |
| RECT rc; |
| } MCI_DGV_RESTORE_PARMSA, *LPMCI_DGV_RESTORE_PARMSA; |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| LPWSTR lpstrFileName; |
| RECT rc; |
| } MCI_DGV_RESTORE_PARMSW, *LPMCI_DGV_RESTORE_PARMSW; |
| |
| DECL_WINELIB_TYPE_AW(MCI_DGV_RESTORE_PARMS) |
| DECL_WINELIB_TYPE_AW(LPMCI_DGV_RESTORE_PARMS) |
| |
| /* parameter block for MCI_RESUME command message */ |
| |
| typedef MCI_GENERIC_PARMS MCI_DGV_RESUME_PARMS, * LPMCI_DGV_RESUME_PARMS; |
| |
| /* parameter block for MCI_SAVE command message */ |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| LPSTR lpstrFileName; |
| RECT rc; |
| } MCI_DGV_SAVE_PARMSA, *LPMCI_DGV_SAVE_PARMSA; |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| LPWSTR lpstrFileName; |
| RECT rc; |
| } MCI_DGV_SAVE_PARMSW, *LPMCI_DGV_SAVE_PARMSW; |
| |
| DECL_WINELIB_TYPE_AW(MCI_DGV_SAVE_PARMS) |
| DECL_WINELIB_TYPE_AW(LPMCI_DGV_SAVE_PARMS) |
| |
| /* parameter block for MCI_SET command message */ |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| DWORD dwTimeFormat; |
| DWORD dwAudio; |
| DWORD dwFileFormat; |
| DWORD dwSpeed; |
| } MCI_DGV_SET_PARMS, *LPMCI_DGV_SET_PARMS; |
| |
| /* parameter block for MCI_SETAUDIO command message */ |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| DWORD dwItem; |
| DWORD dwValue; |
| DWORD dwOver; |
| LPSTR lpstrAlgorithm; |
| LPSTR lpstrQuality; |
| } MCI_DGV_SETAUDIO_PARMSA, *LPMCI_DGV_SETAUDIO_PARMSA; |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| DWORD dwItem; |
| DWORD dwValue; |
| DWORD dwOver; |
| LPWSTR lpstrAlgorithm; |
| LPWSTR lpstrQuality; |
| } MCI_DGV_SETAUDIO_PARMSW, *LPMCI_DGV_SETAUDIO_PARMSW; |
| |
| DECL_WINELIB_TYPE_AW(MCI_DGV_SETAUDIO_PARMS) |
| DECL_WINELIB_TYPE_AW(LPMCI_DGV_SETAUDIO_PARMS) |
| |
| /* parameter block for MCI_SIGNAL command message */ |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| DWORD dwPosition; |
| DWORD dwPeriod; |
| DWORD dwUserParm; |
| } MCI_DGV_SIGNAL_PARMS, * LPMCI_DGV_SIGNAL_PARMS; |
| |
| /* parameter block for MCI_SETVIDEO command message */ |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| DWORD dwItem; |
| DWORD dwValue; |
| DWORD dwOver; |
| LPSTR lpstrAlgorithm; |
| LPSTR lpstrQuality; |
| DWORD dwSourceNumber; |
| } MCI_DGV_SETVIDEO_PARMSA, *LPMCI_DGV_SETVIDEO_PARMSA; |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| DWORD dwItem; |
| DWORD dwValue; |
| DWORD dwOver; |
| LPWSTR lpstrAlgorithm; |
| LPWSTR lpstrQuality; |
| DWORD dwSourceNumber; |
| } MCI_DGV_SETVIDEO_PARMSW, *LPMCI_DGV_SETVIDEO_PARMSW; |
| |
| DECL_WINELIB_TYPE_AW(MCI_DGV_SETVIDEO_PARMS) |
| DECL_WINELIB_TYPE_AW(LPMCI_DGV_SETVIDEO_PARMS) |
| |
| /* parameter block for MCI_STATUS command message */ |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| DWORD_PTR dwReturn; |
| DWORD dwItem; |
| DWORD dwTrack; |
| LPSTR lpstrDrive; |
| DWORD dwReference; |
| } MCI_DGV_STATUS_PARMSA, *LPMCI_DGV_STATUS_PARMSA; |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| DWORD_PTR dwReturn; |
| DWORD dwItem; |
| DWORD dwTrack; |
| LPWSTR lpstrDrive; |
| DWORD dwReference; |
| } MCI_DGV_STATUS_PARMSW, *LPMCI_DGV_STATUS_PARMSW; |
| |
| DECL_WINELIB_TYPE_AW(MCI_DGV_STATUS_PARMS) |
| DECL_WINELIB_TYPE_AW(LPMCI_DGV_STATUS_PARMS) |
| |
| /* parameter block for MCI_STEP command message */ |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| DWORD dwFrames; |
| } MCI_DGV_STEP_PARMS, *LPMCI_DGV_STEP_PARMS; |
| |
| /* parameter block for MCI_STOP command message */ |
| |
| typedef MCI_GENERIC_PARMS MCI_DGV_STOP_PARMS, * LPMCI_DGV_STOP_PARMS; |
| |
| /* parameter block for MCI_UNFREEZE command message */ |
| |
| typedef MCI_DGV_RECT_PARMS MCI_DGV_UNFREEZE_PARMS, * LPMCI_DGV_UNFREEZE_PARMS; |
| |
| /* parameter block for MCI_UPDATE command message */ |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| RECT rc; |
| HDC hDC; |
| } MCI_DGV_UPDATE_PARMS, * LPMCI_DGV_UPDATE_PARMS; |
| |
| /* parameter block for MCI_WHERE command message */ |
| |
| typedef MCI_DGV_RECT_PARMS MCI_DGV_WHERE_PARMS, * LPMCI_DGV_WHERE_PARMS; |
| |
| /* parameter block for MCI_WINDOW command message */ |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| HWND hWnd; |
| UINT nCmdShow; |
| LPSTR lpstrText; |
| } MCI_DGV_WINDOW_PARMSA, *LPMCI_DGV_WINDOW_PARMSA; |
| |
| typedef struct { |
| DWORD_PTR dwCallback; |
| HWND hWnd; |
| UINT nCmdShow; |
| LPWSTR lpstrText; |
| } MCI_DGV_WINDOW_PARMSW, *LPMCI_DGV_WINDOW_PARMSW; |
| |
| DECL_WINELIB_TYPE_AW(MCI_DGV_WINDOW_PARMS) |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| |
| #include <poppack.h> |
| |
| #endif /* __WINE_DIGITALV_H */ |