| /* Automated generated idl file <imapi2>. |
| * Generated by genidl tool (c) 2009, 2010 Mingw-w64 project. |
| */ |
| |
| #include <windows.h> |
| |
| /* Interface forward declarations. */ |
| interface DDiscMaster2Events; |
| interface DWriteEngine2Events; |
| interface DDiscFormat2EraseEvents; |
| interface DDiscFormat2DataEvents; |
| interface DDiscFormat2TrackAtOnceEvents; |
| interface DDiscFormat2RawCDEvents; |
| interface IStream; |
| interface ISequentialStream; |
| interface IBurnVerification; |
| interface IConnectionPointContainer; |
| interface IEnumConnectionPoints; |
| interface IConnectionPoint; |
| interface IEnumConnections; |
| interface IDiscRecorder2Ex; |
| interface IStreamPseudoRandomBased; |
| interface IStreamConcatenate; |
| interface IStreamInterleave; |
| interface IMultisessionSequential; |
| interface IMultisession; |
| |
| /* Structure forward declarations. */ |
| struct _LARGE_INTEGER; |
| struct _ULARGE_INTEGER; |
| struct tagSTATSTG; |
| struct _FILETIME; |
| struct tagCONNECTDATA; |
| |
| /* Union record forward declarations. */ |
| dispinterface IWriteEngine2EventArgs; |
| dispinterface IDiscFormat2DataEventArgs; |
| dispinterface IDiscFormat2TrackAtOnceEventArgs; |
| dispinterface IDiscFormat2RawCDEventArgs; |
| dispinterface IWriteSpeedDescriptor; |
| dispinterface IRawCDImageCreator; |
| dispinterface IRawCDImageTrackInfo; |
| dispinterface IDiscMaster2; |
| dispinterface IDiscRecorder2; |
| dispinterface IWriteEngine2; |
| dispinterface IDiscFormat2Erase; |
| dispinterface IDiscFormat2; |
| dispinterface IDiscFormat2Data; |
| dispinterface IDiscFormat2TrackAtOnce; |
| dispinterface IDiscFormat2RawCD; |
| |
| /* Union record forward declarations. */ |
| coclass MsftDiscMaster2; |
| coclass MsftDiscRecorder2; |
| coclass MsftWriteEngine2; |
| coclass MsftDiscFormat2Erase; |
| coclass MsftDiscFormat2Data; |
| coclass MsftDiscFormat2TrackAtOnce; |
| coclass MsftDiscFormat2RawCD; |
| coclass MsftStreamZero; |
| coclass MsftStreamPrng001; |
| coclass MsftStreamConcatenate; |
| coclass MsftStreamInterleave; |
| coclass MsftWriteSpeedDescriptor; |
| coclass MsftMultisessionSequential; |
| coclass MsftRawCDImageCreator; |
| |
| /* Enumeration declarations. */ |
| [ |
| helpstring("The current action being performed for the data write") |
| ] |
| enum _IMAPI_FORMAT2_DATA_WRITE_ACTION |
| { |
| IMAPI_FORMAT2_DATA_WRITE_ACTION_VALIDATING_MEDIA = (int) 201326592, |
| IMAPI_FORMAT2_DATA_WRITE_ACTION_FORMATTING_MEDIA = (int) 201326593, |
| IMAPI_FORMAT2_DATA_WRITE_ACTION_INITIALIZING_HARDWARE = (int) 201326594, |
| IMAPI_FORMAT2_DATA_WRITE_ACTION_CALIBRATING_POWER = (int) 201326595, |
| IMAPI_FORMAT2_DATA_WRITE_ACTION_WRITING_DATA = (int) 201326596, |
| IMAPI_FORMAT2_DATA_WRITE_ACTION_FINALIZATION = (int) 201326597, |
| IMAPI_FORMAT2_DATA_WRITE_ACTION_COMPLETED = (int) 201326598, |
| IMAPI_FORMAT2_DATA_WRITE_ACTION_VERIFYING = (int) 201326599 |
| }; |
| [ |
| helpstring("Current action when writing to CD in Track-at-Once mode") |
| ] |
| enum _IMAPI_FORMAT2_TAO_WRITE_ACTION |
| { |
| IMAPI_FORMAT2_TAO_WRITE_ACTION_UNKNOWN = (int) 201326592, |
| IMAPI_FORMAT2_TAO_WRITE_ACTION_PREPARING = (int) 201326593, |
| IMAPI_FORMAT2_TAO_WRITE_ACTION_WRITING = (int) 201326594, |
| IMAPI_FORMAT2_TAO_WRITE_ACTION_FINISHING = (int) 201326595, |
| IMAPI_FORMAT2_TAO_WRITE_ACTION_VERIFYING = (int) 201326596 |
| }; |
| [ |
| helpstring("Current action when writing to the CD in Disc-At-Once (RAW) mode") |
| ] |
| enum _IMAPI_FORMAT2_RAW_CD_WRITE_ACTION |
| { |
| IMAPI_FORMAT2_RAW_CD_WRITE_ACTION_UNKNOWN = (int) 201326592, |
| IMAPI_FORMAT2_RAW_CD_WRITE_ACTION_PREPARING = (int) 201326593, |
| IMAPI_FORMAT2_RAW_CD_WRITE_ACTION_WRITING = (int) 201326594, |
| IMAPI_FORMAT2_RAW_CD_WRITE_ACTION_FINISHING = (int) 201326595 |
| }; |
| [ |
| helpstring("Physical type of the optical media") |
| ] |
| enum _IMAPI_MEDIA_PHYSICAL_TYPE |
| { |
| IMAPI_MEDIA_TYPE_UNKNOWN = (int) 201326592, |
| IMAPI_MEDIA_TYPE_CDROM = (int) 201326593, |
| IMAPI_MEDIA_TYPE_CDR = (int) 201326594, |
| IMAPI_MEDIA_TYPE_CDRW = (int) 201326595, |
| IMAPI_MEDIA_TYPE_DVDROM = (int) 201326596, |
| IMAPI_MEDIA_TYPE_DVDRAM = (int) 201326597, |
| IMAPI_MEDIA_TYPE_DVDPLUSR = (int) 201326598, |
| IMAPI_MEDIA_TYPE_DVDPLUSRW = (int) 201326599, |
| IMAPI_MEDIA_TYPE_DVDPLUSR_DUALLAYER = (int) 201326600, |
| IMAPI_MEDIA_TYPE_DVDDASHR = (int) 201326601, |
| IMAPI_MEDIA_TYPE_DVDDASHRW = (int) 201326602, |
| IMAPI_MEDIA_TYPE_DVDDASHR_DUALLAYER = (int) 201326603, |
| IMAPI_MEDIA_TYPE_DISK = (int) 201326604, |
| IMAPI_MEDIA_TYPE_DVDPLUSRW_DUALLAYER = (int) 201326605, |
| IMAPI_MEDIA_TYPE_HDDVDROM = (int) 201326606, |
| IMAPI_MEDIA_TYPE_HDDVDR = (int) 201326607, |
| IMAPI_MEDIA_TYPE_HDDVDRAM = (int) 201326608, |
| IMAPI_MEDIA_TYPE_BDROM = (int) 201326609, |
| IMAPI_MEDIA_TYPE_BDR = (int) 201326610, |
| IMAPI_MEDIA_TYPE_BDRE = (int) 201326611, |
| IMAPI_MEDIA_TYPE_MAX = (int) 201326611 |
| }; |
| [ |
| helpstring("The CD sector type for provided data") |
| ] |
| enum _IMAPI_CD_SECTOR_TYPE |
| { |
| IMAPI_CD_SECTOR_AUDIO = (int) 201326592, |
| IMAPI_CD_SECTOR_MODE_ZERO = (int) 201326593, |
| IMAPI_CD_SECTOR_MODE1 = (int) 201326594, |
| IMAPI_CD_SECTOR_MODE2FORM0 = (int) 201326595, |
| IMAPI_CD_SECTOR_MODE2FORM1 = (int) 201326596, |
| IMAPI_CD_SECTOR_MODE2FORM2 = (int) 201326597, |
| IMAPI_CD_SECTOR_MODE1RAW = (int) 201326598, |
| IMAPI_CD_SECTOR_MODE2FORM0RAW = (int) 201326599, |
| IMAPI_CD_SECTOR_MODE2FORM1RAW = (int) 201326600, |
| IMAPI_CD_SECTOR_MODE2FORM2RAW = (int) 201326601 |
| }; |
| [ |
| helpstring("Data sector type to use when writing to CD in Disc-At-Once (RAW) mode") |
| ] |
| enum _IMAPI_FORMAT2_RAW_CD_DATA_SECTOR_TYPE |
| { |
| IMAPI_FORMAT2_RAW_CD_SUBCODE_PQ_ONLY = (int) 201326593, |
| IMAPI_FORMAT2_RAW_CD_SUBCODE_IS_COOKED = (int) 201326594, |
| IMAPI_FORMAT2_RAW_CD_SUBCODE_IS_RAW = (int) 201326595 |
| }; |
| [ |
| helpstring("The audio track digital copy setting") |
| ] |
| enum _IMAPI_CD_TRACK_DIGITAL_COPY_SETTING |
| { |
| IMAPI_CD_TRACK_DIGITAL_COPY_PERMITTED = (int) 201326592, |
| IMAPI_CD_TRACK_DIGITAL_COPY_PROHIBITED = (int) 201326593, |
| IMAPI_CD_TRACK_DIGITAL_COPY_SCMS = (int) 201326594 |
| }; |
| [ |
| helpstring("Burn verification level") |
| ] |
| enum _IMAPI_BURN_VERIFICATION_LEVEL |
| { |
| IMAPI_BURN_VERIFICATION_NONE = (int) 201326592, |
| IMAPI_BURN_VERIFICATION_QUICK = (int) 201326593, |
| IMAPI_BURN_VERIFICATION_FULL = (int) 201326594 |
| }; |
| [ |
| helpstring("Address type provided for reading track information") |
| ] |
| enum _IMAPI_READ_TRACK_ADDRESS_TYPE |
| { |
| IMAPI_READ_TRACK_ADDRESS_TYPE_LBA = (int) 201326592, |
| IMAPI_READ_TRACK_ADDRESS_TYPE_TRACK = (int) 201326593, |
| IMAPI_READ_TRACK_ADDRESS_TYPE_SESSION = (int) 201326594 |
| }; |
| [ |
| helpstring("Type of the feature page data") |
| ] |
| enum _IMAPI_FEATURE_PAGE_TYPE |
| { |
| IMAPI_FEATURE_PAGE_TYPE_PROFILE_LIST = (int) 201326592, |
| IMAPI_FEATURE_PAGE_TYPE_CORE = (int) 201326593, |
| IMAPI_FEATURE_PAGE_TYPE_MORPHING = (int) 201326594, |
| IMAPI_FEATURE_PAGE_TYPE_REMOVABLE_MEDIUM = (int) 201326595, |
| IMAPI_FEATURE_PAGE_TYPE_WRITE_PROTECT = (int) 201326596, |
| IMAPI_FEATURE_PAGE_TYPE_RANDOMLY_READABLE = (int) 201326608, |
| IMAPI_FEATURE_PAGE_TYPE_CD_MULTIREAD = (int) 201326621, |
| IMAPI_FEATURE_PAGE_TYPE_CD_READ = (int) 201326622, |
| IMAPI_FEATURE_PAGE_TYPE_DVD_READ = (int) 201326623, |
| IMAPI_FEATURE_PAGE_TYPE_RANDOMLY_WRITABLE = (int) 201326624, |
| IMAPI_FEATURE_PAGE_TYPE_INCREMENTAL_STREAMING_WRITABLE = (int) 201326625, |
| IMAPI_FEATURE_PAGE_TYPE_SECTOR_ERASABLE = (int) 201326626, |
| IMAPI_FEATURE_PAGE_TYPE_FORMATTABLE = (int) 201326627, |
| IMAPI_FEATURE_PAGE_TYPE_HARDWARE_DEFECT_MANAGEMENT = (int) 201326628, |
| IMAPI_FEATURE_PAGE_TYPE_WRITE_ONCE = (int) 201326629, |
| IMAPI_FEATURE_PAGE_TYPE_RESTRICTED_OVERWRITE = (int) 201326630, |
| IMAPI_FEATURE_PAGE_TYPE_CDRW_CAV_WRITE = (int) 201326631, |
| IMAPI_FEATURE_PAGE_TYPE_MRW = (int) 201326632, |
| IMAPI_FEATURE_PAGE_TYPE_ENHANCED_DEFECT_REPORTING = (int) 201326633, |
| IMAPI_FEATURE_PAGE_TYPE_DVD_PLUS_RW = (int) 201326634, |
| IMAPI_FEATURE_PAGE_TYPE_DVD_PLUS_R = (int) 201326635, |
| IMAPI_FEATURE_PAGE_TYPE_RIGID_RESTRICTED_OVERWRITE = (int) 201326636, |
| IMAPI_FEATURE_PAGE_TYPE_CD_TRACK_AT_ONCE = (int) 201326637, |
| IMAPI_FEATURE_PAGE_TYPE_CD_MASTERING = (int) 201326638, |
| IMAPI_FEATURE_PAGE_TYPE_DVD_DASH_WRITE = (int) 201326639, |
| IMAPI_FEATURE_PAGE_TYPE_DOUBLE_DENSITY_CD_READ = (int) 201326640, |
| IMAPI_FEATURE_PAGE_TYPE_DOUBLE_DENSITY_CD_R_WRITE = (int) 201326641, |
| IMAPI_FEATURE_PAGE_TYPE_DOUBLE_DENSITY_CD_RW_WRITE = (int) 201326642, |
| IMAPI_FEATURE_PAGE_TYPE_LAYER_JUMP_RECORDING = (int) 201326643, |
| IMAPI_FEATURE_PAGE_TYPE_CD_RW_MEDIA_WRITE_SUPPORT = (int) 201326647, |
| IMAPI_FEATURE_PAGE_TYPE_BD_PSEUDO_OVERWRITE = (int) 201326648, |
| IMAPI_FEATURE_PAGE_TYPE_DVD_PLUS_R_DUAL_LAYER = (int) 201326651, |
| IMAPI_FEATURE_PAGE_TYPE_BD_READ = (int) 201326656, |
| IMAPI_FEATURE_PAGE_TYPE_BD_WRITE = (int) 201326657, |
| IMAPI_FEATURE_PAGE_TYPE_HD_DVD_READ = (int) 201326672, |
| IMAPI_FEATURE_PAGE_TYPE_HD_DVD_WRITE = (int) 201326673, |
| IMAPI_FEATURE_PAGE_TYPE_POWER_MANAGEMENT = (int) 201326848, |
| IMAPI_FEATURE_PAGE_TYPE_SMART = (int) 201326849, |
| IMAPI_FEATURE_PAGE_TYPE_EMBEDDED_CHANGER = (int) 201326850, |
| IMAPI_FEATURE_PAGE_TYPE_CD_ANALOG_PLAY = (int) 201326851, |
| IMAPI_FEATURE_PAGE_TYPE_MICROCODE_UPDATE = (int) 201326852, |
| IMAPI_FEATURE_PAGE_TYPE_TIMEOUT = (int) 201326853, |
| IMAPI_FEATURE_PAGE_TYPE_DVD_CSS = (int) 201326854, |
| IMAPI_FEATURE_PAGE_TYPE_REAL_TIME_STREAMING = (int) 201326855, |
| IMAPI_FEATURE_PAGE_TYPE_LOGICAL_UNIT_SERIAL_NUMBER = (int) 201326856, |
| IMAPI_FEATURE_PAGE_TYPE_MEDIA_SERIAL_NUMBER = (int) 201326857, |
| IMAPI_FEATURE_PAGE_TYPE_DISC_CONTROL_BLOCKS = (int) 201326858, |
| IMAPI_FEATURE_PAGE_TYPE_DVD_CPRM = (int) 201326859, |
| IMAPI_FEATURE_PAGE_TYPE_FIRMWARE_INFORMATION = (int) 201326860, |
| IMAPI_FEATURE_PAGE_TYPE_AACS = (int) 201326861, |
| IMAPI_FEATURE_PAGE_TYPE_VCPS = (int) 201326864 |
| }; |
| [ |
| helpstring("Type of the mode page data") |
| ] |
| enum _IMAPI_MODE_PAGE_TYPE |
| { |
| IMAPI_MODE_PAGE_TYPE_READ_WRITE_ERROR_RECOVERY = (int) 201326593, |
| IMAPI_MODE_PAGE_TYPE_MRW = (int) 201326595, |
| IMAPI_MODE_PAGE_TYPE_WRITE_PARAMETERS = (int) 201326597, |
| IMAPI_MODE_PAGE_TYPE_CACHING = (int) 201326600, |
| IMAPI_MODE_PAGE_TYPE_INFORMATIONAL_EXCEPTIONS = (int) 201326620, |
| IMAPI_MODE_PAGE_TYPE_TIMEOUT_AND_PROTECT = (int) 201326621, |
| IMAPI_MODE_PAGE_TYPE_POWER_CONDITION = (int) 201326618, |
| IMAPI_MODE_PAGE_TYPE_LEGACY_CAPABILITIES = (int) 201326634 |
| }; |
| [ |
| helpstring("Mode page data type to request") |
| ] |
| enum _IMAPI_MODE_PAGE_REQUEST_TYPE |
| { |
| IMAPI_MODE_PAGE_REQUEST_TYPE_CURRENT_VALUES = (int) 201326592, |
| IMAPI_MODE_PAGE_REQUEST_TYPE_CHANGEABLE_VALUES = (int) 201326593, |
| IMAPI_MODE_PAGE_REQUEST_TYPE_DEFAULT_VALUES = (int) 201326594, |
| IMAPI_MODE_PAGE_REQUEST_TYPE_SAVED_VALUES = (int) 201326595 |
| }; |
| [ |
| helpstring("Type of the profile in feature page data") |
| ] |
| enum _IMAPI_PROFILE_TYPE |
| { |
| IMAPI_PROFILE_TYPE_INVALID = (int) 201326592, |
| IMAPI_PROFILE_TYPE_NON_REMOVABLE_DISK = (int) 201326593, |
| IMAPI_PROFILE_TYPE_REMOVABLE_DISK = (int) 201326594, |
| IMAPI_PROFILE_TYPE_MO_ERASABLE = (int) 201326595, |
| IMAPI_PROFILE_TYPE_MO_WRITE_ONCE = (int) 201326596, |
| IMAPI_PROFILE_TYPE_AS_MO = (int) 201326597, |
| IMAPI_PROFILE_TYPE_CDROM = (int) 201326600, |
| IMAPI_PROFILE_TYPE_CD_RECORDABLE = (int) 201326601, |
| IMAPI_PROFILE_TYPE_CD_REWRITABLE = (int) 201326602, |
| IMAPI_PROFILE_TYPE_DVDROM = (int) 201326608, |
| IMAPI_PROFILE_TYPE_DVD_DASH_RECORDABLE = (int) 201326609, |
| IMAPI_PROFILE_TYPE_DVD_RAM = (int) 201326610, |
| IMAPI_PROFILE_TYPE_DVD_DASH_REWRITABLE = (int) 201326611, |
| IMAPI_PROFILE_TYPE_DVD_DASH_RW_SEQUENTIAL = (int) 201326612, |
| IMAPI_PROFILE_TYPE_DVD_DASH_R_DUAL_SEQUENTIAL = (int) 201326613, |
| IMAPI_PROFILE_TYPE_DVD_DASH_R_DUAL_LAYER_JUMP = (int) 201326614, |
| IMAPI_PROFILE_TYPE_DVD_PLUS_RW = (int) 201326618, |
| IMAPI_PROFILE_TYPE_DVD_PLUS_R = (int) 201326619, |
| IMAPI_PROFILE_TYPE_DDCDROM = (int) 201326624, |
| IMAPI_PROFILE_TYPE_DDCD_RECORDABLE = (int) 201326625, |
| IMAPI_PROFILE_TYPE_DDCD_REWRITABLE = (int) 201326626, |
| IMAPI_PROFILE_TYPE_DVD_PLUS_RW_DUAL = (int) 201326634, |
| IMAPI_PROFILE_TYPE_DVD_PLUS_R_DUAL = (int) 201326635, |
| IMAPI_PROFILE_TYPE_BD_ROM = (int) 201326656, |
| IMAPI_PROFILE_TYPE_BD_R_SEQUENTIAL = (int) 201326657, |
| IMAPI_PROFILE_TYPE_BD_R_RANDOM_RECORDING = (int) 201326658, |
| IMAPI_PROFILE_TYPE_BD_REWRITABLE = (int) 201326659, |
| IMAPI_PROFILE_TYPE_HD_DVD_ROM = (int) 201326672, |
| IMAPI_PROFILE_TYPE_HD_DVD_RECORDABLE = (int) 201326673, |
| IMAPI_PROFILE_TYPE_HD_DVD_RAM = (int) 201326674, |
| IMAPI_PROFILE_TYPE_NON_STANDARD = (int) 201392127 |
| }; |
| [ |
| helpstring("Set of flags to indicate current media state") |
| ] |
| enum _IMAPI_FORMAT2_DATA_MEDIA_STATE |
| { |
| IMAPI_FORMAT2_DATA_MEDIA_STATE_UNKNOWN = (int) 201326592, |
| IMAPI_FORMAT2_DATA_MEDIA_STATE_INFORMATIONAL_MASK = (int) 201326607, |
| IMAPI_FORMAT2_DATA_MEDIA_STATE_UNSUPPORTED_MASK = (int) 201391104, |
| IMAPI_FORMAT2_DATA_MEDIA_STATE_OVERWRITE_ONLY = (int) 201326593, |
| IMAPI_FORMAT2_DATA_MEDIA_STATE_RANDOMLY_WRITABLE = (int) 201326593, |
| IMAPI_FORMAT2_DATA_MEDIA_STATE_BLANK = (int) 201326594, |
| IMAPI_FORMAT2_DATA_MEDIA_STATE_APPENDABLE = (int) 201326596, |
| IMAPI_FORMAT2_DATA_MEDIA_STATE_FINAL_SESSION = (int) 201326600, |
| IMAPI_FORMAT2_DATA_MEDIA_STATE_DAMAGED = (int) 201327616, |
| IMAPI_FORMAT2_DATA_MEDIA_STATE_ERASE_REQUIRED = (int) 201328640, |
| IMAPI_FORMAT2_DATA_MEDIA_STATE_NON_EMPTY_SESSION = (int) 201330688, |
| IMAPI_FORMAT2_DATA_MEDIA_STATE_WRITE_PROTECTED = (int) 201334784, |
| IMAPI_FORMAT2_DATA_MEDIA_STATE_FINALIZED = (int) 201342976, |
| IMAPI_FORMAT2_DATA_MEDIA_STATE_UNSUPPORTED_MEDIA = (int) 201359360 |
| }; |
| [ |
| helpstring("Detected write protection type of the media") |
| ] |
| enum _IMAPI_MEDIA_WRITE_PROTECT_STATE |
| { |
| IMAPI_WRITEPROTECTED_UNTIL_POWERDOWN = (int) 201326593, |
| IMAPI_WRITEPROTECTED_BY_CARTRIDGE = (int) 201326594, |
| IMAPI_WRITEPROTECTED_BY_MEDIA_SPECIFIC_REASON = (int) 201326596, |
| IMAPI_WRITEPROTECTED_BY_SOFTWARE_WRITE_PROTECT = (int) 201326600, |
| IMAPI_WRITEPROTECTED_BY_DISC_CONTROL_BLOCK = (int) 201326608, |
| IMAPI_WRITEPROTECTED_READ_ONLY_MEDIA = (int) 201342976 |
| }; |
| |
| /* Structure/union declarations. */ |
| struct _LARGE_INTEGER |
| { |
| LONGLONG QuadPart; |
| }; |
| struct _ULARGE_INTEGER |
| { |
| ULONGLONG QuadPart; |
| }; |
| struct tagSTATSTG |
| { |
| LPWSTR pwcsName; |
| UINT type; |
| struct _ULARGE_INTEGER cbSize; |
| struct _FILETIME mtime; |
| struct _FILETIME ctime; |
| struct _FILETIME atime; |
| UINT grfMode; |
| UINT grfLocksSupported; |
| struct GUID clsid; |
| UINT grfStateBits; |
| UINT reserved; |
| }; |
| struct _FILETIME |
| { |
| UINT dwLowDateTime; |
| UINT dwHighDateTime; |
| }; |
| struct tagCONNECTDATA |
| { |
| IUnknown * pUnk; |
| UINT dwCookie; |
| }; |
| |
| /* Type definitions. */ |
| [ |
| helpstring("The current action being performed for the data write") |
| ] |
| typedef enum _IMAPI_FORMAT2_DATA_WRITE_ACTION IMAPI_FORMAT2_DATA_WRITE_ACTION; |
| [ |
| helpstring("Current action when writing to CD in Track-at-Once mode") |
| ] |
| typedef enum _IMAPI_FORMAT2_TAO_WRITE_ACTION IMAPI_FORMAT2_TAO_WRITE_ACTION; |
| [ |
| helpstring("Current action when writing to the CD in Disc-At-Once (RAW) mode") |
| ] |
| typedef enum _IMAPI_FORMAT2_RAW_CD_WRITE_ACTION IMAPI_FORMAT2_RAW_CD_WRITE_ACTION; |
| [ |
| helpstring("Physical type of the optical media") |
| ] |
| typedef enum _IMAPI_MEDIA_PHYSICAL_TYPE IMAPI_MEDIA_PHYSICAL_TYPE; |
| [ |
| helpstring("The CD sector type for provided data") |
| ] |
| typedef enum _IMAPI_CD_SECTOR_TYPE IMAPI_CD_SECTOR_TYPE; |
| [ |
| helpstring("Data sector type to use when writing to CD in Disc-At-Once (RAW) mode") |
| ] |
| typedef enum _IMAPI_FORMAT2_RAW_CD_DATA_SECTOR_TYPE IMAPI_FORMAT2_RAW_CD_DATA_SECTOR_TYPE; |
| [ |
| helpstring("The audio track digital copy setting") |
| ] |
| typedef enum _IMAPI_CD_TRACK_DIGITAL_COPY_SETTING IMAPI_CD_TRACK_DIGITAL_COPY_SETTING; |
| [ |
| helpstring("Burn verification level") |
| ] |
| typedef enum _IMAPI_BURN_VERIFICATION_LEVEL IMAPI_BURN_VERIFICATION_LEVEL; |
| [ |
| helpstring("Address type provided for reading track information") |
| ] |
| typedef enum _IMAPI_READ_TRACK_ADDRESS_TYPE IMAPI_READ_TRACK_ADDRESS_TYPE; |
| [ |
| helpstring("Type of the feature page data") |
| ] |
| typedef enum _IMAPI_FEATURE_PAGE_TYPE IMAPI_FEATURE_PAGE_TYPE; |
| [ |
| helpstring("Type of the mode page data") |
| ] |
| typedef enum _IMAPI_MODE_PAGE_TYPE IMAPI_MODE_PAGE_TYPE; |
| [ |
| helpstring("Mode page data type to request") |
| ] |
| typedef enum _IMAPI_MODE_PAGE_REQUEST_TYPE IMAPI_MODE_PAGE_REQUEST_TYPE; |
| [ |
| helpstring("Type of the profile in feature page data") |
| ] |
| typedef enum _IMAPI_PROFILE_TYPE IMAPI_PROFILE_TYPE; |
| [ |
| helpstring("Set of flags to indicate current media state") |
| ] |
| typedef enum _IMAPI_FORMAT2_DATA_MEDIA_STATE IMAPI_FORMAT2_DATA_MEDIA_STATE; |
| [ |
| helpstring("Detected write protection type of the media") |
| ] |
| typedef enum _IMAPI_MEDIA_WRITE_PROTECT_STATE IMAPI_MEDIA_WRITE_PROTECT_STATE; |
| |
| [ |
| uuid(2735412F-7F64-5B0F-8F00-5D77AFBE261E), |
| version(1.0), |
| helpstring("Microsoft IMAPI2 Base Functionality") |
| ] |
| library imapi2 |
| { |
| importlib("stdole2.tlb"); |
| |
| /* CoClass declarations. */ |
| [ |
| uuid(2735412E-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Microsoft IMAPIv2 Disc Master"), |
| cancreate |
| ] |
| coclass MsftDiscMaster2 |
| { |
| dispinterface IDiscMaster2; |
| interface IConnectionPointContainer; |
| interface DDiscMaster2Events; |
| }; |
| [ |
| uuid(2735412D-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Microsoft IMAPIv2 Disc Recorder"), |
| cancreate |
| ] |
| coclass MsftDiscRecorder2 |
| { |
| dispinterface IDiscRecorder2; |
| interface IDiscRecorder2Ex; |
| }; |
| [ |
| uuid(2735412C-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Microsoft IMAPIv2 CD Write Engine"), |
| cancreate |
| ] |
| coclass MsftWriteEngine2 |
| { |
| dispinterface IWriteEngine2; |
| interface IConnectionPointContainer; |
| interface DWriteEngine2Events; |
| }; |
| [ |
| uuid(2735412B-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Microsoft IMAPIv2 Media Erase/Blank"), |
| cancreate |
| ] |
| coclass MsftDiscFormat2Erase |
| { |
| dispinterface IDiscFormat2Erase; |
| interface IConnectionPointContainer; |
| interface DDiscFormat2EraseEvents; |
| }; |
| [ |
| uuid(2735412A-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Microsoft IMAPIv2 Data Writer"), |
| cancreate |
| ] |
| coclass MsftDiscFormat2Data |
| { |
| dispinterface IDiscFormat2Data; |
| interface IBurnVerification; |
| interface IConnectionPointContainer; |
| interface DDiscFormat2DataEvents; |
| }; |
| [ |
| uuid(27354129-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Microsoft IMAPIv2 Track-at-Once Audio CD Writer"), |
| cancreate |
| ] |
| coclass MsftDiscFormat2TrackAtOnce |
| { |
| dispinterface IDiscFormat2TrackAtOnce; |
| interface IBurnVerification; |
| interface IConnectionPointContainer; |
| interface DDiscFormat2TrackAtOnceEvents; |
| }; |
| [ |
| uuid(27354128-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Microsoft IMAPIv2 Disc-at-Once RAW CD Image Writer"), |
| cancreate |
| ] |
| coclass MsftDiscFormat2RawCD |
| { |
| dispinterface IDiscFormat2RawCD; |
| interface IConnectionPointContainer; |
| interface DDiscFormat2RawCDEvents; |
| }; |
| [ |
| uuid(27354127-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Microsoft IMAPIv2 /dev/zero Stream "), |
| cancreate |
| ] |
| coclass MsftStreamZero |
| { |
| interface IStream; |
| }; |
| [ |
| uuid(27354126-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Microsoft IMAPIv2 PRNG based Stream (LCG: 0x19660D, 0x3C6EF35F)"), |
| cancreate |
| ] |
| coclass MsftStreamPrng001 |
| { |
| interface IStreamPseudoRandomBased; |
| }; |
| [ |
| uuid(27354125-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Microsoft IMAPIv2 concatenation stream"), |
| cancreate |
| ] |
| coclass MsftStreamConcatenate |
| { |
| interface IStreamConcatenate; |
| }; |
| [ |
| uuid(27354124-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Microsoft IMAPIv2 interleave stream"), |
| cancreate |
| ] |
| coclass MsftStreamInterleave |
| { |
| interface IStreamInterleave; |
| }; |
| [ |
| uuid(27354123-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Microsoft IMAPIv2 Write Speed Descriptor") |
| ] |
| coclass MsftWriteSpeedDescriptor |
| { |
| dispinterface IWriteSpeedDescriptor; |
| }; |
| [ |
| uuid(27354122-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Microsoft IMAPIv2 sequential Multi-session") |
| ] |
| coclass MsftMultisessionSequential |
| { |
| interface IMultisessionSequential; |
| }; |
| [ |
| uuid(25983561-9D65-49CE-B335-40630D901227), |
| helpstring("Microsoft IMAPIv2 RAW CD Image Creator"), |
| cancreate |
| ] |
| coclass MsftRawCDImageCreator |
| { |
| dispinterface IRawCDImageCreator; |
| }; |
| |
| /* Dispatch interface declarations. */ |
| [ |
| uuid(27354136-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("CD Write Engine"), |
| dual, |
| nonextensible, |
| oleautomation, |
| dispatchable |
| ] |
| dispinterface IWriteEngine2EventArgs : IDispatch |
| { |
| [id(256), propget] |
| HRESULT __stdcall StartLba ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall SectorCount ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall LastReadLba ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall LastWrittenLba ( |
| [out retval] long *value |
| ); |
| [id(262), propget] |
| HRESULT __stdcall TotalSystemBuffer ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall UsedSystemBuffer ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall FreeSystemBuffer ( |
| [out retval] long *value |
| ); |
| }; |
| [ |
| uuid(2735413D-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Track-at-once Data Writer"), |
| dual, |
| nonextensible, |
| oleautomation, |
| dispatchable |
| ] |
| dispinterface IDiscFormat2DataEventArgs : IWriteEngine2EventArgs |
| { |
| [id(768), propget] |
| HRESULT __stdcall ElapsedTime ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall RemainingTime ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall TotalTime ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall CurrentAction ( |
| [out retval] IMAPI_FORMAT2_DATA_WRITE_ACTION *value |
| ); |
| }; |
| [ |
| uuid(27354140-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("CD Track-at-once Audio Writer Event Arguments"), |
| dual, |
| nonextensible, |
| oleautomation, |
| dispatchable |
| ] |
| dispinterface IDiscFormat2TrackAtOnceEventArgs : IWriteEngine2EventArgs |
| { |
| [id(768), propget] |
| HRESULT __stdcall CurrentTrackNumber ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall CurrentAction ( |
| [out retval] IMAPI_FORMAT2_TAO_WRITE_ACTION *value |
| ); |
| [propget] |
| HRESULT __stdcall ElapsedTime ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall RemainingTime ( |
| [out retval] long *value |
| ); |
| }; |
| [ |
| uuid(27354143-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("CD Disc-At-Once RAW Writer Event Arguments"), |
| dual, |
| nonextensible, |
| oleautomation, |
| dispatchable |
| ] |
| dispinterface IDiscFormat2RawCDEventArgs : IWriteEngine2EventArgs |
| { |
| [id(769), propget] |
| HRESULT __stdcall CurrentAction ( |
| [out retval] IMAPI_FORMAT2_RAW_CD_WRITE_ACTION *value |
| ); |
| [propget] |
| HRESULT __stdcall ElapsedTime ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall RemainingTime ( |
| [out retval] long *value |
| ); |
| }; |
| [ |
| uuid(27354144-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("A single optical drive Write Speed Configuration"), |
| dual, |
| oleautomation, |
| dispatchable |
| ] |
| dispinterface IWriteSpeedDescriptor : IDispatch |
| { |
| [id(257), propget] |
| HRESULT __stdcall MediaType ( |
| [out retval] IMAPI_MEDIA_PHYSICAL_TYPE *value |
| ); |
| [propget] |
| HRESULT __stdcall RotationTypeIsPureCAV ( |
| [out retval] WINBOOL *value |
| ); |
| [propget] |
| HRESULT __stdcall WriteSpeed ( |
| [out retval] long *value |
| ); |
| }; |
| [ |
| uuid(25983550-9D65-49CE-B335-40630D901227), |
| helpstring("CD Raw CD (Disc-at-Once) Image Creator"), |
| dual, |
| nonextensible, |
| oleautomation, |
| dispatchable |
| ] |
| dispinterface IRawCDImageCreator : IDispatch |
| { |
| [id(512)] |
| HRESULT __stdcall CreateResultImage ( |
| [out retval] interface IStream **resultStream |
| ); |
| HRESULT __stdcall AddTrack ( |
| [in] IMAPI_CD_SECTOR_TYPE dataType, |
| [in] interface IStream *data, |
| [out retval] long *trackIndex |
| ); |
| HRESULT __stdcall AddSpecialPregap ( |
| [in] interface IStream *data |
| ); |
| HRESULT __stdcall AddSubcodeRWGenerator ( |
| [in] interface IStream *subcode |
| ); |
| [id(256), propput] |
| HRESULT __stdcall ResultingImageType ( |
| [in] IMAPI_FORMAT2_RAW_CD_DATA_SECTOR_TYPE argNo1 |
| ); |
| [id(256), propget] |
| HRESULT __stdcall ResultingImageType ( |
| [out retval] IMAPI_FORMAT2_RAW_CD_DATA_SECTOR_TYPE *value |
| ); |
| [propget] |
| HRESULT __stdcall StartOfLeadout ( |
| [out retval] long *value |
| ); |
| [propput] |
| HRESULT __stdcall StartOfLeadoutLimit ( |
| [in] long argNo1 |
| ); |
| [id(258), propget] |
| HRESULT __stdcall StartOfLeadoutLimit ( |
| [out retval] long *value |
| ); |
| [propput] |
| HRESULT __stdcall DisableGaplessAudio ( |
| [in] WINBOOL argNo1 |
| ); |
| [id(259), propget] |
| HRESULT __stdcall DisableGaplessAudio ( |
| [out retval] WINBOOL *value |
| ); |
| [propput] |
| HRESULT __stdcall MediaCatalogNumber ( |
| [in] BSTR argNo1 |
| ); |
| [id(260), propget] |
| HRESULT __stdcall MediaCatalogNumber ( |
| [out retval] BSTR *value |
| ); |
| [propput] |
| HRESULT __stdcall StartingTrackNumber ( |
| [in] long argNo1 |
| ); |
| [id(261), propget] |
| HRESULT __stdcall StartingTrackNumber ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall TrackInfo ( |
| [in] long trackIndex, |
| [out retval] dispinterface IRawCDImageTrackInfo **value |
| ); |
| [propget] |
| HRESULT __stdcall NumberOfExistingTracks ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall LastUsedUserSectorInImage ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall ExpectedTableOfContents ( |
| [out retval] VARIANT value[]* |
| ); |
| }; |
| [ |
| uuid(25983551-9D65-49CE-B335-40630D901227), |
| helpstring("CD Raw CD (Disc-at-Once) Per-Track Information"), |
| dual, |
| nonextensible, |
| oleautomation, |
| dispatchable |
| ] |
| dispinterface IRawCDImageTrackInfo : IDispatch |
| { |
| [id(256), propget] |
| HRESULT __stdcall StartingLba ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall SectorCount ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall TrackNumber ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall SectorType ( |
| [out retval] IMAPI_CD_SECTOR_TYPE *value |
| ); |
| [propget] |
| HRESULT __stdcall ISRC ( |
| [out retval] BSTR *value |
| ); |
| [id(260), propput] |
| HRESULT __stdcall ISRC ( |
| [in] BSTR argNo1 |
| ); |
| [propget] |
| HRESULT __stdcall DigitalAudioCopySetting ( |
| [out retval] IMAPI_CD_TRACK_DIGITAL_COPY_SETTING *value |
| ); |
| [id(261), propput] |
| HRESULT __stdcall DigitalAudioCopySetting ( |
| [in] IMAPI_CD_TRACK_DIGITAL_COPY_SETTING argNo1 |
| ); |
| [propget] |
| HRESULT __stdcall AudioHasPreemphasis ( |
| [out retval] WINBOOL *value |
| ); |
| [id(262), propput] |
| HRESULT __stdcall AudioHasPreemphasis ( |
| [in] WINBOOL argNo1 |
| ); |
| [propget] |
| HRESULT __stdcall TrackIndexes ( |
| [out retval] VARIANT value[]* |
| ); |
| [id(512)] |
| HRESULT __stdcall AddTrackIndex ( |
| [in] long lbaOffset |
| ); |
| HRESULT __stdcall ClearTrackIndex ( |
| [in] long lbaOffset |
| ); |
| }; |
| [ |
| uuid(27354130-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("IDiscMaster2 is used to get an enumerator for the set of CD/DVD (optical) devices on the system"), |
| dual, |
| nonextensible, |
| oleautomation, |
| dispatchable |
| ] |
| dispinterface IDiscMaster2 : IDispatch |
| { |
| [id(-4), propget, restricted, hidden] |
| HRESULT __stdcall _NewEnum ( |
| [out retval] interface IEnumVARIANT **ppunk |
| ); |
| [id(0), propget] |
| HRESULT __stdcall Item ( |
| [in] long index, |
| [out retval] BSTR *value |
| ); |
| [propget] |
| HRESULT __stdcall Count ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall IsSupportedEnvironment ( |
| [out retval] WINBOOL *value |
| ); |
| }; |
| [ |
| uuid(27354133-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Represents a single CD/DVD type device, and enables many common operations via a simplified API."), |
| dual, |
| nonextensible, |
| oleautomation, |
| dispatchable |
| ] |
| dispinterface IDiscRecorder2 : IDispatch |
| { |
| [id(256)] |
| HRESULT __stdcall EjectMedia (void); |
| HRESULT __stdcall CloseTray (void); |
| HRESULT __stdcall AcquireExclusiveAccess ( |
| [in] WINBOOL force, |
| [in] BSTR __MIDL__IDiscRecorder20000 |
| ); |
| HRESULT __stdcall ReleaseExclusiveAccess (void); |
| HRESULT __stdcall DisableMcn (void); |
| HRESULT __stdcall EnableMcn (void); |
| HRESULT __stdcall InitializeDiscRecorder ( |
| [in] BSTR recorderUniqueId |
| ); |
| [id(0), propget] |
| HRESULT __stdcall ActiveDiscRecorder ( |
| [out retval] BSTR *value |
| ); |
| [id(513), propget] |
| HRESULT __stdcall VendorId ( |
| [out retval] BSTR *value |
| ); |
| [propget] |
| HRESULT __stdcall ProductId ( |
| [out retval] BSTR *value |
| ); |
| [propget] |
| HRESULT __stdcall ProductRevision ( |
| [out retval] BSTR *value |
| ); |
| [propget] |
| HRESULT __stdcall VolumeName ( |
| [out retval] BSTR *value |
| ); |
| [propget] |
| HRESULT __stdcall VolumePathNames ( |
| [out retval] VARIANT value[]* |
| ); |
| [propget] |
| HRESULT __stdcall DeviceCanLoadMedia ( |
| [out retval] WINBOOL *value |
| ); |
| [propget] |
| HRESULT __stdcall LegacyDeviceNumber ( |
| [out retval] long *LegacyDeviceNumber |
| ); |
| [propget] |
| HRESULT __stdcall SupportedFeaturePages ( |
| [out retval] VARIANT value[]* |
| ); |
| [propget] |
| HRESULT __stdcall CurrentFeaturePages ( |
| [out retval] VARIANT value[]* |
| ); |
| [propget] |
| HRESULT __stdcall SupportedProfiles ( |
| [out retval] VARIANT value[]* |
| ); |
| [propget] |
| HRESULT __stdcall CurrentProfiles ( |
| [out retval] VARIANT value[]* |
| ); |
| [propget] |
| HRESULT __stdcall SupportedModePages ( |
| [out retval] VARIANT value[]* |
| ); |
| [propget] |
| HRESULT __stdcall ExclusiveAccessOwner ( |
| [out retval] BSTR *value |
| ); |
| }; |
| [ |
| uuid(27354135-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Write Engine"), |
| dual, |
| nonextensible, |
| oleautomation, |
| dispatchable |
| ] |
| dispinterface IWriteEngine2 : IDispatch |
| { |
| [id(512)] |
| HRESULT __stdcall WriteSection ( |
| [in] interface IStream *data, |
| [in] long startingBlockAddress, |
| [in] long numberOfBlocks |
| ); |
| HRESULT __stdcall CancelWrite (void); |
| [id(256), propput] |
| HRESULT __stdcall Recorder ( |
| [in] interface IDiscRecorder2Ex *argNo1 |
| ); |
| [id(256), propget] |
| HRESULT __stdcall Recorder ( |
| [out retval] interface IDiscRecorder2Ex **value |
| ); |
| [propput] |
| HRESULT __stdcall UseStreamingWrite12 ( |
| [in] WINBOOL argNo1 |
| ); |
| [id(257), propget] |
| HRESULT __stdcall UseStreamingWrite12 ( |
| [out retval] WINBOOL *value |
| ); |
| [propput] |
| HRESULT __stdcall StartingSectorsPerSecond ( |
| [in] long argNo1 |
| ); |
| [id(258), propget] |
| HRESULT __stdcall StartingSectorsPerSecond ( |
| [out retval] long *value |
| ); |
| [propput] |
| HRESULT __stdcall EndingSectorsPerSecond ( |
| [in] long argNo1 |
| ); |
| [id(259), propget] |
| HRESULT __stdcall EndingSectorsPerSecond ( |
| [out retval] long *value |
| ); |
| [propput] |
| HRESULT __stdcall BytesPerSector ( |
| [in] long argNo1 |
| ); |
| [id(260), propget] |
| HRESULT __stdcall BytesPerSector ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall WriteInProgress ( |
| [out retval] WINBOOL *value |
| ); |
| }; |
| [ |
| uuid(27354156-8F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Optical media erase"), |
| dual, |
| nonextensible, |
| oleautomation, |
| dispatchable |
| ] |
| dispinterface IDiscFormat2Erase : IDiscFormat2 |
| { |
| [id(256), propput] |
| HRESULT __stdcall Recorder ( |
| [in] dispinterface IDiscRecorder2 *argNo1 |
| ); |
| [id(256), propget] |
| HRESULT __stdcall Recorder ( |
| [out retval] dispinterface IDiscRecorder2 **value |
| ); |
| [propput] |
| HRESULT __stdcall FullErase ( |
| [in] WINBOOL argNo1 |
| ); |
| [id(257), propget] |
| HRESULT __stdcall FullErase ( |
| [out retval] WINBOOL *value |
| ); |
| [propget] |
| HRESULT __stdcall CurrentPhysicalMediaType ( |
| [out retval] IMAPI_MEDIA_PHYSICAL_TYPE *value |
| ); |
| [propput] |
| HRESULT __stdcall ClientName ( |
| [in] BSTR argNo1 |
| ); |
| [id(259), propget] |
| HRESULT __stdcall ClientName ( |
| [out retval] BSTR *value |
| ); |
| [id(513)] |
| HRESULT __stdcall EraseMedia (void); |
| }; |
| [ |
| uuid(27354152-8F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Common Disc Format (writer) Operations"), |
| dual, |
| nonextensible, |
| oleautomation, |
| dispatchable |
| ] |
| dispinterface IDiscFormat2 : IDispatch |
| { |
| [id(2048)] |
| HRESULT __stdcall IsRecorderSupported ( |
| [in] dispinterface IDiscRecorder2 *Recorder, |
| [out retval] WINBOOL *value |
| ); |
| HRESULT __stdcall IsCurrentMediaSupported ( |
| [in] dispinterface IDiscRecorder2 *Recorder, |
| [out retval] WINBOOL *value |
| ); |
| [id(1792), propget] |
| HRESULT __stdcall MediaPhysicallyBlank ( |
| [out retval] WINBOOL *value |
| ); |
| [propget] |
| HRESULT __stdcall MediaHeuristicallyBlank ( |
| [out retval] WINBOOL *value |
| ); |
| [propget] |
| HRESULT __stdcall SupportedMediaTypes ( |
| [out retval] VARIANT value[]* |
| ); |
| }; |
| [ |
| uuid(27354153-9F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Data Writer"), |
| dual, |
| nonextensible, |
| oleautomation, |
| dispatchable |
| ] |
| dispinterface IDiscFormat2Data : IDiscFormat2 |
| { |
| [id(256), propput] |
| HRESULT __stdcall Recorder ( |
| [in] dispinterface IDiscRecorder2 *argNo1 |
| ); |
| [id(256), propget] |
| HRESULT __stdcall Recorder ( |
| [out retval] dispinterface IDiscRecorder2 **value |
| ); |
| [propput] |
| HRESULT __stdcall BufferUnderrunFreeDisabled ( |
| [in] WINBOOL argNo1 |
| ); |
| [id(257), propget] |
| HRESULT __stdcall BufferUnderrunFreeDisabled ( |
| [out retval] WINBOOL *value |
| ); |
| [id(260), propput] |
| HRESULT __stdcall PostgapAlreadyInImage ( |
| [in] WINBOOL argNo1 |
| ); |
| [id(260), propget] |
| HRESULT __stdcall PostgapAlreadyInImage ( |
| [out retval] WINBOOL *value |
| ); |
| [id(262), propget] |
| HRESULT __stdcall CurrentMediaStatus ( |
| [out retval] IMAPI_FORMAT2_DATA_MEDIA_STATE *value |
| ); |
| [propget] |
| HRESULT __stdcall WriteProtectStatus ( |
| [out retval] IMAPI_MEDIA_WRITE_PROTECT_STATE *value |
| ); |
| [propget] |
| HRESULT __stdcall TotalSectorsOnMedia ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall FreeSectorsOnMedia ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall NextWritableAddress ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall StartAddressOfPreviousSession ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall LastWrittenAddressOfPreviousSession ( |
| [out retval] long *value |
| ); |
| [propput] |
| HRESULT __stdcall ForceMediaToBeClosed ( |
| [in] WINBOOL argNo1 |
| ); |
| [id(269), propget] |
| HRESULT __stdcall ForceMediaToBeClosed ( |
| [out retval] WINBOOL *value |
| ); |
| [propput] |
| HRESULT __stdcall DisableConsumerDvdCompatibilityMode ( |
| [in] WINBOOL argNo1 |
| ); |
| [id(270), propget] |
| HRESULT __stdcall DisableConsumerDvdCompatibilityMode ( |
| [out retval] WINBOOL *value |
| ); |
| [propget] |
| HRESULT __stdcall CurrentPhysicalMediaType ( |
| [out retval] IMAPI_MEDIA_PHYSICAL_TYPE *value |
| ); |
| [propput] |
| HRESULT __stdcall ClientName ( |
| [in] BSTR argNo1 |
| ); |
| [id(272), propget] |
| HRESULT __stdcall ClientName ( |
| [out retval] BSTR *value |
| ); |
| [propget] |
| HRESULT __stdcall RequestedWriteSpeed ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall RequestedRotationTypeIsPureCAV ( |
| [out retval] WINBOOL *value |
| ); |
| [propget] |
| HRESULT __stdcall CurrentWriteSpeed ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall CurrentRotationTypeIsPureCAV ( |
| [out retval] WINBOOL *value |
| ); |
| [propget] |
| HRESULT __stdcall SupportedWriteSpeeds ( |
| [out retval] VARIANT supportedSpeeds[]* |
| ); |
| [propget] |
| HRESULT __stdcall SupportedWriteSpeedDescriptors ( |
| [out retval] VARIANT supportedSpeedDescriptors[]* |
| ); |
| [propput] |
| HRESULT __stdcall ForceOverwrite ( |
| [in] WINBOOL argNo1 |
| ); |
| [id(279), propget] |
| HRESULT __stdcall ForceOverwrite ( |
| [out retval] WINBOOL *value |
| ); |
| [propget] |
| HRESULT __stdcall MultisessionInterfaces ( |
| [out retval] VARIANT value[]* |
| ); |
| [id(512)] |
| HRESULT __stdcall Write ( |
| [in] interface IStream *data |
| ); |
| HRESULT __stdcall CancelWrite (void); |
| HRESULT __stdcall SetWriteSpeed ( |
| [in] long RequestedSectorsPerSecond, |
| [in] WINBOOL RotationTypeIsPureCAV |
| ); |
| }; |
| [ |
| uuid(27354154-8F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("CD Track-at-Once Audio Writer"), |
| dual, |
| nonextensible, |
| oleautomation, |
| dispatchable |
| ] |
| dispinterface IDiscFormat2TrackAtOnce : IDiscFormat2 |
| { |
| [id(512)] |
| HRESULT __stdcall PrepareMedia (void); |
| HRESULT __stdcall AddAudioTrack ( |
| [in] interface IStream *data |
| ); |
| HRESULT __stdcall CancelAddTrack (void); |
| HRESULT __stdcall ReleaseMedia (void); |
| HRESULT __stdcall SetWriteSpeed ( |
| [in] long RequestedSectorsPerSecond, |
| [in] WINBOOL RotationTypeIsPureCAV |
| ); |
| [id(256), propput] |
| HRESULT __stdcall Recorder ( |
| [in] dispinterface IDiscRecorder2 *argNo1 |
| ); |
| [id(256), propget] |
| HRESULT __stdcall Recorder ( |
| [out retval] dispinterface IDiscRecorder2 **value |
| ); |
| [id(258), propput] |
| HRESULT __stdcall BufferUnderrunFreeDisabled ( |
| [in] WINBOOL argNo1 |
| ); |
| [id(258), propget] |
| HRESULT __stdcall BufferUnderrunFreeDisabled ( |
| [out retval] WINBOOL *value |
| ); |
| [propget] |
| HRESULT __stdcall NumberOfExistingTracks ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall TotalSectorsOnMedia ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall FreeSectorsOnMedia ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall UsedSectorsOnMedia ( |
| [out retval] long *value |
| ); |
| [propput] |
| HRESULT __stdcall DoNotFinalizeMedia ( |
| [in] WINBOOL argNo1 |
| ); |
| [id(263), propget] |
| HRESULT __stdcall DoNotFinalizeMedia ( |
| [out retval] WINBOOL *value |
| ); |
| [id(266), propget] |
| HRESULT __stdcall ExpectedTableOfContents ( |
| [out retval] VARIANT value[]* |
| ); |
| [propget] |
| HRESULT __stdcall CurrentPhysicalMediaType ( |
| [out retval] IMAPI_MEDIA_PHYSICAL_TYPE *value |
| ); |
| [id(270), propput] |
| HRESULT __stdcall ClientName ( |
| [in] BSTR argNo1 |
| ); |
| [id(270), propget] |
| HRESULT __stdcall ClientName ( |
| [out retval] BSTR *value |
| ); |
| [propget] |
| HRESULT __stdcall RequestedWriteSpeed ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall RequestedRotationTypeIsPureCAV ( |
| [out retval] WINBOOL *value |
| ); |
| [propget] |
| HRESULT __stdcall CurrentWriteSpeed ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall CurrentRotationTypeIsPureCAV ( |
| [out retval] WINBOOL *value |
| ); |
| [propget] |
| HRESULT __stdcall SupportedWriteSpeeds ( |
| [out retval] VARIANT supportedSpeeds[]* |
| ); |
| [propget] |
| HRESULT __stdcall SupportedWriteSpeedDescriptors ( |
| [out retval] VARIANT supportedSpeedDescriptors[]* |
| ); |
| }; |
| [ |
| uuid(27354155-8F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("CD Disc-At-Once RAW Writer"), |
| dual, |
| nonextensible, |
| oleautomation, |
| dispatchable |
| ] |
| dispinterface IDiscFormat2RawCD : IDiscFormat2 |
| { |
| [id(512)] |
| HRESULT __stdcall PrepareMedia (void); |
| HRESULT __stdcall WriteMedia ( |
| [in] interface IStream *data |
| ); |
| HRESULT __stdcall WriteMedia2 ( |
| [in] interface IStream *data, |
| [in] long streamLeadInSectors |
| ); |
| HRESULT __stdcall CancelWrite (void); |
| HRESULT __stdcall ReleaseMedia (void); |
| HRESULT __stdcall SetWriteSpeed ( |
| [in] long RequestedSectorsPerSecond, |
| [in] WINBOOL RotationTypeIsPureCAV |
| ); |
| [id(256), propput] |
| HRESULT __stdcall Recorder ( |
| [in] dispinterface IDiscRecorder2 *argNo1 |
| ); |
| [id(256), propget] |
| HRESULT __stdcall Recorder ( |
| [out retval] dispinterface IDiscRecorder2 **value |
| ); |
| [id(258), propput] |
| HRESULT __stdcall BufferUnderrunFreeDisabled ( |
| [in] WINBOOL argNo1 |
| ); |
| [id(258), propget] |
| HRESULT __stdcall BufferUnderrunFreeDisabled ( |
| [out retval] WINBOOL *value |
| ); |
| [propget] |
| HRESULT __stdcall StartOfNextSession ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall LastPossibleStartOfLeadout ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall CurrentPhysicalMediaType ( |
| [out retval] IMAPI_MEDIA_PHYSICAL_TYPE *value |
| ); |
| [id(264), propget] |
| HRESULT __stdcall SupportedSectorTypes ( |
| [out retval] VARIANT value[]* |
| ); |
| [propput] |
| HRESULT __stdcall RequestedSectorType ( |
| [in] IMAPI_FORMAT2_RAW_CD_DATA_SECTOR_TYPE argNo1 |
| ); |
| [id(265), propget] |
| HRESULT __stdcall RequestedSectorType ( |
| [out retval] IMAPI_FORMAT2_RAW_CD_DATA_SECTOR_TYPE *value |
| ); |
| [propput] |
| HRESULT __stdcall ClientName ( |
| [in] BSTR argNo1 |
| ); |
| [id(266), propget] |
| HRESULT __stdcall ClientName ( |
| [out retval] BSTR *value |
| ); |
| [propget] |
| HRESULT __stdcall RequestedWriteSpeed ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall RequestedRotationTypeIsPureCAV ( |
| [out retval] WINBOOL *value |
| ); |
| [propget] |
| HRESULT __stdcall CurrentWriteSpeed ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall CurrentRotationTypeIsPureCAV ( |
| [out retval] WINBOOL *value |
| ); |
| [propget] |
| HRESULT __stdcall SupportedWriteSpeeds ( |
| [out retval] VARIANT supportedSpeeds[]* |
| ); |
| [propget] |
| HRESULT __stdcall SupportedWriteSpeedDescriptors ( |
| [out retval] VARIANT supportedSpeedDescriptors[]* |
| ); |
| }; |
| |
| }; |
| |
| /* Interface declarations. */ |
| [ |
| uuid(27354131-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Provides notification of the arrival/removal of CD/DVD (optical) devices."), |
| nonextensible, |
| oleautomation, |
| dispatchable |
| ] |
| interface DDiscMaster2Events : IDispatch |
| { |
| [id(256)] |
| HRESULT __stdcall NotifyDeviceAdded ( |
| [in] IDispatch * object, |
| [in] BSTR uniqueId |
| ); |
| HRESULT __stdcall NotifyDeviceRemoved ( |
| [in] IDispatch * object, |
| [in] BSTR uniqueId |
| ); |
| }; |
| [ |
| uuid(27354137-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Provides notification of the progress of the WriteEngine2 writing."), |
| nonextensible, |
| oleautomation, |
| dispatchable |
| ] |
| interface DWriteEngine2Events : IDispatch |
| { |
| [id(256)] |
| HRESULT __stdcall Update ( |
| [in] IDispatch * object, |
| [in] IDispatch * progress |
| ); |
| }; |
| [ |
| uuid(2735413A-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Provides notification of media erase progress."), |
| nonextensible, |
| oleautomation, |
| dispatchable |
| ] |
| interface DDiscFormat2EraseEvents : IDispatch |
| { |
| [id(512)] |
| HRESULT __stdcall Update ( |
| [in] IDispatch * object, |
| [in] long elapsedSeconds, |
| [in] long estimatedTotalSeconds |
| ); |
| }; |
| [ |
| uuid(2735413C-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Data Writer"), |
| nonextensible, |
| oleautomation, |
| dispatchable |
| ] |
| interface DDiscFormat2DataEvents : IDispatch |
| { |
| [id(512)] |
| HRESULT __stdcall Update ( |
| [in] IDispatch * object, |
| [in] IDispatch * progress |
| ); |
| }; |
| [ |
| uuid(2735413F-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("CD Track-at-Once Audio Writer Events"), |
| nonextensible, |
| oleautomation, |
| dispatchable |
| ] |
| interface DDiscFormat2TrackAtOnceEvents : IDispatch |
| { |
| [id(512)] |
| HRESULT __stdcall Update ( |
| [in] IDispatch * object, |
| [in] IDispatch * progress |
| ); |
| }; |
| [ |
| uuid(27354142-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("CD Disc-At-Once RAW Writer Events"), |
| nonextensible, |
| oleautomation, |
| dispatchable |
| ] |
| interface DDiscFormat2RawCDEvents : IDispatch |
| { |
| [id(512)] |
| HRESULT __stdcall Update ( |
| [in] IDispatch * object, |
| [in] IDispatch * progress |
| ); |
| }; |
| [ |
| uuid(0000000C-0000-0000-C000-000000000046) |
| ] |
| interface IStream : ISequentialStream |
| { |
| [id(1610743808)] |
| HRESULT __stdcall RemoteSeek ( |
| [in] struct _LARGE_INTEGER dlibMove, |
| [in] UINT dwOrigin, |
| [out] struct _ULARGE_INTEGER *plibNewPosition |
| ); |
| HRESULT __stdcall SetSize ( |
| [in] struct _ULARGE_INTEGER libNewSize |
| ); |
| HRESULT __stdcall RemoteCopyTo ( |
| [in] interface IStream *pstm, |
| [in] struct _ULARGE_INTEGER cb, |
| [out] struct _ULARGE_INTEGER *pcbRead, |
| [out] struct _ULARGE_INTEGER *pcbWritten |
| ); |
| HRESULT __stdcall Commit ( |
| [in] UINT grfCommitFlags |
| ); |
| HRESULT __stdcall Revert (void); |
| HRESULT __stdcall LockRegion ( |
| [in] struct _ULARGE_INTEGER libOffset, |
| [in] struct _ULARGE_INTEGER cb, |
| [in] UINT dwLockType |
| ); |
| HRESULT __stdcall UnlockRegion ( |
| [in] struct _ULARGE_INTEGER libOffset, |
| [in] struct _ULARGE_INTEGER cb, |
| [in] UINT dwLockType |
| ); |
| HRESULT __stdcall Stat ( |
| [out] struct tagSTATSTG *pstatstg, |
| [in] UINT grfStatFlag |
| ); |
| HRESULT __stdcall Clone ( |
| [out] interface IStream **ppstm |
| ); |
| }; |
| [ |
| uuid(0C733A30-2A1C-11CE-ADE5-00AA0044773D) |
| ] |
| interface ISequentialStream : IUnknown |
| { |
| [id(1610678272)] |
| HRESULT __stdcall RemoteRead ( |
| [out] UCHAR *pv, |
| [in] UINT cb, |
| [out] UINT *pcbRead |
| ); |
| HRESULT __stdcall RemoteWrite ( |
| [in] UCHAR *pv, |
| [in] UINT cb, |
| [out] UINT *pcbWritten |
| ); |
| }; |
| [ |
| uuid(D2FFD834-958B-426D-8470-2A13879C6A91), |
| helpstring("An interface to control burn verification for a burning object") |
| ] |
| interface IBurnVerification : IUnknown |
| { |
| [id(1024), propput] |
| HRESULT __stdcall BurnVerificationLevel ( |
| [in] IMAPI_BURN_VERIFICATION_LEVEL argNo1 |
| ); |
| [id(1024), propget] |
| HRESULT __stdcall BurnVerificationLevel ( |
| [out retval] IMAPI_BURN_VERIFICATION_LEVEL *value |
| ); |
| }; |
| [ |
| uuid(B196B284-BAB4-101A-B69C-00AA00341D07) |
| ] |
| interface IConnectionPointContainer : IUnknown |
| { |
| [id(1610678272)] |
| HRESULT __stdcall EnumConnectionPoints ( |
| [out] interface IEnumConnectionPoints **ppEnum |
| ); |
| HRESULT __stdcall FindConnectionPoint ( |
| [in] struct GUID *riid, |
| [out] interface IConnectionPoint **ppCP |
| ); |
| }; |
| [ |
| uuid(B196B285-BAB4-101A-B69C-00AA00341D07) |
| ] |
| interface IEnumConnectionPoints : IUnknown |
| { |
| [id(1610678272)] |
| HRESULT __stdcall RemoteNext ( |
| [in] UINT cConnections, |
| [out] interface IConnectionPoint **ppCP, |
| [out] UINT *pcFetched |
| ); |
| HRESULT __stdcall Skip ( |
| [in] UINT cConnections |
| ); |
| HRESULT __stdcall Reset (void); |
| HRESULT __stdcall Clone ( |
| [out] interface IEnumConnectionPoints **ppEnum |
| ); |
| }; |
| [ |
| uuid(B196B286-BAB4-101A-B69C-00AA00341D07) |
| ] |
| interface IConnectionPoint : IUnknown |
| { |
| [id(1610678272)] |
| HRESULT __stdcall GetConnectionInterface ( |
| [out] struct GUID *pIID |
| ); |
| HRESULT __stdcall GetConnectionPointContainer ( |
| [out] interface IConnectionPointContainer **ppCPC |
| ); |
| HRESULT __stdcall Advise ( |
| [in] IUnknown * pUnkSink, |
| [out] UINT *pdwCookie |
| ); |
| HRESULT __stdcall Unadvise ( |
| [in] UINT dwCookie |
| ); |
| HRESULT __stdcall EnumConnections ( |
| [out] interface IEnumConnections **ppEnum |
| ); |
| }; |
| [ |
| uuid(B196B287-BAB4-101A-B69C-00AA00341D07) |
| ] |
| interface IEnumConnections : IUnknown |
| { |
| [id(1610678272)] |
| HRESULT __stdcall RemoteNext ( |
| [in] UINT cConnections, |
| [out] struct tagCONNECTDATA *rgcd, |
| [out] UINT *pcFetched |
| ); |
| HRESULT __stdcall Skip ( |
| [in] UINT cConnections |
| ); |
| HRESULT __stdcall Reset (void); |
| HRESULT __stdcall Clone ( |
| [out] interface IEnumConnections **ppEnum |
| ); |
| }; |
| [ |
| uuid(27354132-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Represents a single CD/DVD type device, enabling additional commands requiring advanced marshalling code.") |
| ] |
| interface IDiscRecorder2Ex : IUnknown |
| { |
| [id(1610678272)] |
| HRESULT __stdcall SendCommandNoData ( |
| [in] UCHAR *Cdb, |
| [in] UINT CdbSize, |
| [out] UCHAR SenseBuffer[18], |
| [in] UINT Timeout |
| ); |
| HRESULT __stdcall SendCommandSendDataToDevice ( |
| [in] UCHAR *Cdb, |
| [in] UINT CdbSize, |
| [out] UCHAR SenseBuffer[18], |
| [in] UINT Timeout, |
| [in] UCHAR *Buffer, |
| [in] UINT BufferSize |
| ); |
| HRESULT __stdcall SendCommandGetDataFromDevice ( |
| [in] UCHAR *Cdb, |
| [in] UINT CdbSize, |
| [out] UCHAR SenseBuffer[18], |
| [in] UINT Timeout, |
| [out] UCHAR *Buffer, |
| [in] UINT BufferSize, |
| [out] UINT *BufferFetched |
| ); |
| HRESULT __stdcall ReadDvdStructure ( |
| [in] UINT format, |
| [in] UINT address, |
| [in] UINT layer, |
| [in] UINT agid, |
| [out] UCHAR *data, |
| [out] UINT *Count |
| ); |
| HRESULT __stdcall SendDvdStructure ( |
| [in] UINT format, |
| [in] UCHAR *data, |
| [in] UINT Count |
| ); |
| HRESULT __stdcall GetAdapterDescriptor ( |
| [out] UCHAR *data, |
| [out] UINT *byteSize |
| ); |
| HRESULT __stdcall GetDeviceDescriptor ( |
| [out] UCHAR *data, |
| [out] UINT *byteSize |
| ); |
| HRESULT __stdcall GetDiscInformation ( |
| [out] UCHAR *discInformation, |
| [out] UINT *byteSize |
| ); |
| HRESULT __stdcall GetTrackInformation ( |
| [in] UINT address, |
| [in] IMAPI_READ_TRACK_ADDRESS_TYPE addressType, |
| [out] UCHAR *trackInformation, |
| [out] UINT *byteSize |
| ); |
| HRESULT __stdcall GetFeaturePage ( |
| [in] IMAPI_FEATURE_PAGE_TYPE requestedFeature, |
| [in] CHAR currentFeatureOnly, |
| [out] UCHAR *featureData, |
| [out] UINT *byteSize |
| ); |
| HRESULT __stdcall GetModePage ( |
| [in] IMAPI_MODE_PAGE_TYPE requestedModePage, |
| [in] IMAPI_MODE_PAGE_REQUEST_TYPE requestType, |
| [out] UCHAR *modePageData, |
| [out] UINT *byteSize |
| ); |
| HRESULT __stdcall SetModePage ( |
| [in] IMAPI_MODE_PAGE_REQUEST_TYPE requestType, |
| [in] UCHAR *data, |
| [in] UINT byteSize |
| ); |
| HRESULT __stdcall GetSupportedFeaturePages ( |
| [in] CHAR currentFeatureOnly, |
| [out] IMAPI_FEATURE_PAGE_TYPE **featureData, |
| [out] UINT *byteSize |
| ); |
| HRESULT __stdcall GetSupportedProfiles ( |
| [in] CHAR currentOnly, |
| [out] IMAPI_PROFILE_TYPE **profileTypes, |
| [out] UINT *validProfiles |
| ); |
| HRESULT __stdcall GetSupportedModePages ( |
| [in] IMAPI_MODE_PAGE_REQUEST_TYPE requestType, |
| [out] IMAPI_MODE_PAGE_TYPE **modePageTypes, |
| [out] UINT *validPages |
| ); |
| HRESULT __stdcall GetByteAlignmentMask ( |
| [out retval] UINT *value |
| ); |
| HRESULT __stdcall GetMaximumNonPageAlignedTransferSize ( |
| [out retval] UINT *value |
| ); |
| HRESULT __stdcall GetMaximumPageAlignedTransferSize ( |
| [out retval] UINT *value |
| ); |
| }; |
| [ |
| uuid(27354145-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Pseudo-random based IStream data (implementation dependent)") |
| ] |
| interface IStreamPseudoRandomBased : IStream |
| { |
| [id(1610809344)] |
| HRESULT __stdcall put_Seed ( |
| [in] UINT value |
| ); |
| HRESULT __stdcall get_Seed ( |
| [out] UINT *value |
| ); |
| HRESULT __stdcall put_ExtendedSeed ( |
| [in] UINT *values, |
| [in] UINT eCount |
| ); |
| HRESULT __stdcall get_ExtendedSeed ( |
| [out] UINT *values, |
| [out] UINT *eCount |
| ); |
| }; |
| [ |
| uuid(27354146-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Stream concatenation") |
| ] |
| interface IStreamConcatenate : IStream |
| { |
| [id(1610809344)] |
| HRESULT __stdcall Initialize ( |
| [in] interface IStream *stream1, |
| [in] interface IStream *stream2 |
| ); |
| HRESULT __stdcall Initialize2 ( |
| [in] interface IStream **streams, |
| [in] UINT streamCount |
| ); |
| HRESULT __stdcall Append ( |
| [in] interface IStream *stream |
| ); |
| HRESULT __stdcall Append2 ( |
| [in] interface IStream **streams, |
| [in] UINT streamCount |
| ); |
| }; |
| [ |
| uuid(27354147-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Stream interleave: each stream gets interleaveSize bytes, then cycles to the next stream") |
| ] |
| interface IStreamInterleave : IStream |
| { |
| [id(1610809344)] |
| HRESULT __stdcall Initialize ( |
| [in] interface IStream **streams, |
| [in] UINT *interleaveSizes, |
| [in] UINT streamCount |
| ); |
| }; |
| [ |
| uuid(27354151-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Sequential multisession support interface."), |
| dispatchable |
| ] |
| interface IMultisessionSequential : IMultisession |
| { |
| [id(512), propget] |
| HRESULT __stdcall IsFirstDataSession ( |
| [out retval] WINBOOL *value |
| ); |
| [propget] |
| HRESULT __stdcall StartAddressOfPreviousSession ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall LastWrittenAddressOfPreviousSession ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall NextWritableAddress ( |
| [out retval] long *value |
| ); |
| [propget] |
| HRESULT __stdcall FreeSectorsOnMedia ( |
| [out retval] long *value |
| ); |
| }; |
| [ |
| uuid(27354150-7F64-5B0F-8F00-5D77AFBE261E), |
| helpstring("Generic multisession support interface."), |
| dispatchable |
| ] |
| interface IMultisession : IDispatch |
| { |
| [id(256), propget] |
| HRESULT __stdcall IsSupportedOnCurrentMediaState ( |
| [out retval] WINBOOL *value |
| ); |
| [propput] |
| HRESULT __stdcall InUse ( |
| [in] WINBOOL argNo1 |
| ); |
| [id(257), propget] |
| HRESULT __stdcall InUse ( |
| [out retval] WINBOOL *value |
| ); |
| [propget] |
| HRESULT __stdcall ImportRecorder ( |
| [out retval] dispinterface IDiscRecorder2 **value |
| ); |
| }; |
| |