xpmgr/BuildTools/Include/imapi2.h

8007 lines
312 KiB
C++

/* this ALWAYS GENERATED file contains the definitions for the interfaces */
/* File created by MIDL compiler version 7.00.0555 */
/* Compiler settings for imapi2.idl:
Oicf, W1, Zp8, env=Win32 (32b run), target_arch=X86 7.00.0555
protocol : dce , ms_ext, c_ext, robust
error checks: allocation ref bounds_check enum stub_data
VC __declspec() decoration level:
__declspec(uuid()), __declspec(selectany), __declspec(novtable)
DECLSPEC_UUID(), MIDL_INTERFACE()
*/
/* @@MIDL_FILE_HEADING( ) */
#pragma warning( disable: 4049 ) /* more than 64k source lines */
/* verify that the <rpcndr.h> version is high enough to compile this file*/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 475
#endif
/* verify that the <rpcsal.h> version is high enough to compile this file*/
#ifndef __REQUIRED_RPCSAL_H_VERSION__
#define __REQUIRED_RPCSAL_H_VERSION__ 100
#endif
#include "rpc.h"
#include "rpcndr.h"
#ifndef __RPCNDR_H_VERSION__
#error this stub requires an updated version of <rpcndr.h>
#endif // __RPCNDR_H_VERSION__
#ifndef COM_NO_WINDOWS_H
#include "windows.h"
#include "ole2.h"
#endif /*COM_NO_WINDOWS_H*/
#ifndef __imapi2_h__
#define __imapi2_h__
#if defined(_MSC_VER) && (_MSC_VER >= 1020)
#pragma once
#endif
/* Forward Declarations */
#ifndef __IDiscMaster2_FWD_DEFINED__
#define __IDiscMaster2_FWD_DEFINED__
typedef interface IDiscMaster2 IDiscMaster2;
#endif /* __IDiscMaster2_FWD_DEFINED__ */
#ifndef __DDiscMaster2Events_FWD_DEFINED__
#define __DDiscMaster2Events_FWD_DEFINED__
typedef interface DDiscMaster2Events DDiscMaster2Events;
#endif /* __DDiscMaster2Events_FWD_DEFINED__ */
#ifndef __IDiscRecorder2Ex_FWD_DEFINED__
#define __IDiscRecorder2Ex_FWD_DEFINED__
typedef interface IDiscRecorder2Ex IDiscRecorder2Ex;
#endif /* __IDiscRecorder2Ex_FWD_DEFINED__ */
#ifndef __IDiscRecorder2_FWD_DEFINED__
#define __IDiscRecorder2_FWD_DEFINED__
typedef interface IDiscRecorder2 IDiscRecorder2;
#endif /* __IDiscRecorder2_FWD_DEFINED__ */
#ifndef __IWriteEngine2_FWD_DEFINED__
#define __IWriteEngine2_FWD_DEFINED__
typedef interface IWriteEngine2 IWriteEngine2;
#endif /* __IWriteEngine2_FWD_DEFINED__ */
#ifndef __IWriteEngine2EventArgs_FWD_DEFINED__
#define __IWriteEngine2EventArgs_FWD_DEFINED__
typedef interface IWriteEngine2EventArgs IWriteEngine2EventArgs;
#endif /* __IWriteEngine2EventArgs_FWD_DEFINED__ */
#ifndef __DWriteEngine2Events_FWD_DEFINED__
#define __DWriteEngine2Events_FWD_DEFINED__
typedef interface DWriteEngine2Events DWriteEngine2Events;
#endif /* __DWriteEngine2Events_FWD_DEFINED__ */
#ifndef __IDiscFormat2_FWD_DEFINED__
#define __IDiscFormat2_FWD_DEFINED__
typedef interface IDiscFormat2 IDiscFormat2;
#endif /* __IDiscFormat2_FWD_DEFINED__ */
#ifndef __IDiscFormat2Erase_FWD_DEFINED__
#define __IDiscFormat2Erase_FWD_DEFINED__
typedef interface IDiscFormat2Erase IDiscFormat2Erase;
#endif /* __IDiscFormat2Erase_FWD_DEFINED__ */
#ifndef __DDiscFormat2EraseEvents_FWD_DEFINED__
#define __DDiscFormat2EraseEvents_FWD_DEFINED__
typedef interface DDiscFormat2EraseEvents DDiscFormat2EraseEvents;
#endif /* __DDiscFormat2EraseEvents_FWD_DEFINED__ */
#ifndef __IDiscFormat2Data_FWD_DEFINED__
#define __IDiscFormat2Data_FWD_DEFINED__
typedef interface IDiscFormat2Data IDiscFormat2Data;
#endif /* __IDiscFormat2Data_FWD_DEFINED__ */
#ifndef __DDiscFormat2DataEvents_FWD_DEFINED__
#define __DDiscFormat2DataEvents_FWD_DEFINED__
typedef interface DDiscFormat2DataEvents DDiscFormat2DataEvents;
#endif /* __DDiscFormat2DataEvents_FWD_DEFINED__ */
#ifndef __IDiscFormat2DataEventArgs_FWD_DEFINED__
#define __IDiscFormat2DataEventArgs_FWD_DEFINED__
typedef interface IDiscFormat2DataEventArgs IDiscFormat2DataEventArgs;
#endif /* __IDiscFormat2DataEventArgs_FWD_DEFINED__ */
#ifndef __IDiscFormat2TrackAtOnce_FWD_DEFINED__
#define __IDiscFormat2TrackAtOnce_FWD_DEFINED__
typedef interface IDiscFormat2TrackAtOnce IDiscFormat2TrackAtOnce;
#endif /* __IDiscFormat2TrackAtOnce_FWD_DEFINED__ */
#ifndef __DDiscFormat2TrackAtOnceEvents_FWD_DEFINED__
#define __DDiscFormat2TrackAtOnceEvents_FWD_DEFINED__
typedef interface DDiscFormat2TrackAtOnceEvents DDiscFormat2TrackAtOnceEvents;
#endif /* __DDiscFormat2TrackAtOnceEvents_FWD_DEFINED__ */
#ifndef __IDiscFormat2TrackAtOnceEventArgs_FWD_DEFINED__
#define __IDiscFormat2TrackAtOnceEventArgs_FWD_DEFINED__
typedef interface IDiscFormat2TrackAtOnceEventArgs IDiscFormat2TrackAtOnceEventArgs;
#endif /* __IDiscFormat2TrackAtOnceEventArgs_FWD_DEFINED__ */
#ifndef __IDiscFormat2RawCD_FWD_DEFINED__
#define __IDiscFormat2RawCD_FWD_DEFINED__
typedef interface IDiscFormat2RawCD IDiscFormat2RawCD;
#endif /* __IDiscFormat2RawCD_FWD_DEFINED__ */
#ifndef __DDiscFormat2RawCDEvents_FWD_DEFINED__
#define __DDiscFormat2RawCDEvents_FWD_DEFINED__
typedef interface DDiscFormat2RawCDEvents DDiscFormat2RawCDEvents;
#endif /* __DDiscFormat2RawCDEvents_FWD_DEFINED__ */
#ifndef __IDiscFormat2RawCDEventArgs_FWD_DEFINED__
#define __IDiscFormat2RawCDEventArgs_FWD_DEFINED__
typedef interface IDiscFormat2RawCDEventArgs IDiscFormat2RawCDEventArgs;
#endif /* __IDiscFormat2RawCDEventArgs_FWD_DEFINED__ */
#ifndef __IBurnVerification_FWD_DEFINED__
#define __IBurnVerification_FWD_DEFINED__
typedef interface IBurnVerification IBurnVerification;
#endif /* __IBurnVerification_FWD_DEFINED__ */
#ifndef __IWriteSpeedDescriptor_FWD_DEFINED__
#define __IWriteSpeedDescriptor_FWD_DEFINED__
typedef interface IWriteSpeedDescriptor IWriteSpeedDescriptor;
#endif /* __IWriteSpeedDescriptor_FWD_DEFINED__ */
#ifndef __IMultisession_FWD_DEFINED__
#define __IMultisession_FWD_DEFINED__
typedef interface IMultisession IMultisession;
#endif /* __IMultisession_FWD_DEFINED__ */
#ifndef __IMultisessionSequential_FWD_DEFINED__
#define __IMultisessionSequential_FWD_DEFINED__
typedef interface IMultisessionSequential IMultisessionSequential;
#endif /* __IMultisessionSequential_FWD_DEFINED__ */
#ifndef __IMultisessionSequential2_FWD_DEFINED__
#define __IMultisessionSequential2_FWD_DEFINED__
typedef interface IMultisessionSequential2 IMultisessionSequential2;
#endif /* __IMultisessionSequential2_FWD_DEFINED__ */
#ifndef __IMultisessionRandomWrite_FWD_DEFINED__
#define __IMultisessionRandomWrite_FWD_DEFINED__
typedef interface IMultisessionRandomWrite IMultisessionRandomWrite;
#endif /* __IMultisessionRandomWrite_FWD_DEFINED__ */
#ifndef __IStreamPseudoRandomBased_FWD_DEFINED__
#define __IStreamPseudoRandomBased_FWD_DEFINED__
typedef interface IStreamPseudoRandomBased IStreamPseudoRandomBased;
#endif /* __IStreamPseudoRandomBased_FWD_DEFINED__ */
#ifndef __IStreamConcatenate_FWD_DEFINED__
#define __IStreamConcatenate_FWD_DEFINED__
typedef interface IStreamConcatenate IStreamConcatenate;
#endif /* __IStreamConcatenate_FWD_DEFINED__ */
#ifndef __IStreamInterleave_FWD_DEFINED__
#define __IStreamInterleave_FWD_DEFINED__
typedef interface IStreamInterleave IStreamInterleave;
#endif /* __IStreamInterleave_FWD_DEFINED__ */
#ifndef __IRawCDImageCreator_FWD_DEFINED__
#define __IRawCDImageCreator_FWD_DEFINED__
typedef interface IRawCDImageCreator IRawCDImageCreator;
#endif /* __IRawCDImageCreator_FWD_DEFINED__ */
#ifndef __IRawCDImageTrackInfo_FWD_DEFINED__
#define __IRawCDImageTrackInfo_FWD_DEFINED__
typedef interface IRawCDImageTrackInfo IRawCDImageTrackInfo;
#endif /* __IRawCDImageTrackInfo_FWD_DEFINED__ */
#ifndef __IBlockRange_FWD_DEFINED__
#define __IBlockRange_FWD_DEFINED__
typedef interface IBlockRange IBlockRange;
#endif /* __IBlockRange_FWD_DEFINED__ */
#ifndef __IBlockRangeList_FWD_DEFINED__
#define __IBlockRangeList_FWD_DEFINED__
typedef interface IBlockRangeList IBlockRangeList;
#endif /* __IBlockRangeList_FWD_DEFINED__ */
#ifndef __IWriteEngine2EventArgs_FWD_DEFINED__
#define __IWriteEngine2EventArgs_FWD_DEFINED__
typedef interface IWriteEngine2EventArgs IWriteEngine2EventArgs;
#endif /* __IWriteEngine2EventArgs_FWD_DEFINED__ */
#ifndef __IDiscFormat2DataEventArgs_FWD_DEFINED__
#define __IDiscFormat2DataEventArgs_FWD_DEFINED__
typedef interface IDiscFormat2DataEventArgs IDiscFormat2DataEventArgs;
#endif /* __IDiscFormat2DataEventArgs_FWD_DEFINED__ */
#ifndef __IDiscFormat2TrackAtOnceEventArgs_FWD_DEFINED__
#define __IDiscFormat2TrackAtOnceEventArgs_FWD_DEFINED__
typedef interface IDiscFormat2TrackAtOnceEventArgs IDiscFormat2TrackAtOnceEventArgs;
#endif /* __IDiscFormat2TrackAtOnceEventArgs_FWD_DEFINED__ */
#ifndef __IDiscFormat2RawCDEventArgs_FWD_DEFINED__
#define __IDiscFormat2RawCDEventArgs_FWD_DEFINED__
typedef interface IDiscFormat2RawCDEventArgs IDiscFormat2RawCDEventArgs;
#endif /* __IDiscFormat2RawCDEventArgs_FWD_DEFINED__ */
#ifndef __IWriteSpeedDescriptor_FWD_DEFINED__
#define __IWriteSpeedDescriptor_FWD_DEFINED__
typedef interface IWriteSpeedDescriptor IWriteSpeedDescriptor;
#endif /* __IWriteSpeedDescriptor_FWD_DEFINED__ */
#ifndef __DDiscMaster2Events_FWD_DEFINED__
#define __DDiscMaster2Events_FWD_DEFINED__
typedef interface DDiscMaster2Events DDiscMaster2Events;
#endif /* __DDiscMaster2Events_FWD_DEFINED__ */
#ifndef __DWriteEngine2Events_FWD_DEFINED__
#define __DWriteEngine2Events_FWD_DEFINED__
typedef interface DWriteEngine2Events DWriteEngine2Events;
#endif /* __DWriteEngine2Events_FWD_DEFINED__ */
#ifndef __DDiscFormat2EraseEvents_FWD_DEFINED__
#define __DDiscFormat2EraseEvents_FWD_DEFINED__
typedef interface DDiscFormat2EraseEvents DDiscFormat2EraseEvents;
#endif /* __DDiscFormat2EraseEvents_FWD_DEFINED__ */
#ifndef __DDiscFormat2DataEvents_FWD_DEFINED__
#define __DDiscFormat2DataEvents_FWD_DEFINED__
typedef interface DDiscFormat2DataEvents DDiscFormat2DataEvents;
#endif /* __DDiscFormat2DataEvents_FWD_DEFINED__ */
#ifndef __DDiscFormat2TrackAtOnceEvents_FWD_DEFINED__
#define __DDiscFormat2TrackAtOnceEvents_FWD_DEFINED__
typedef interface DDiscFormat2TrackAtOnceEvents DDiscFormat2TrackAtOnceEvents;
#endif /* __DDiscFormat2TrackAtOnceEvents_FWD_DEFINED__ */
#ifndef __DDiscFormat2RawCDEvents_FWD_DEFINED__
#define __DDiscFormat2RawCDEvents_FWD_DEFINED__
typedef interface DDiscFormat2RawCDEvents DDiscFormat2RawCDEvents;
#endif /* __DDiscFormat2RawCDEvents_FWD_DEFINED__ */
#ifndef __IRawCDImageCreator_FWD_DEFINED__
#define __IRawCDImageCreator_FWD_DEFINED__
typedef interface IRawCDImageCreator IRawCDImageCreator;
#endif /* __IRawCDImageCreator_FWD_DEFINED__ */
#ifndef __IRawCDImageTrackInfo_FWD_DEFINED__
#define __IRawCDImageTrackInfo_FWD_DEFINED__
typedef interface IRawCDImageTrackInfo IRawCDImageTrackInfo;
#endif /* __IRawCDImageTrackInfo_FWD_DEFINED__ */
#ifndef __IBurnVerification_FWD_DEFINED__
#define __IBurnVerification_FWD_DEFINED__
typedef interface IBurnVerification IBurnVerification;
#endif /* __IBurnVerification_FWD_DEFINED__ */
#ifndef __IBlockRange_FWD_DEFINED__
#define __IBlockRange_FWD_DEFINED__
typedef interface IBlockRange IBlockRange;
#endif /* __IBlockRange_FWD_DEFINED__ */
#ifndef __IBlockRangeList_FWD_DEFINED__
#define __IBlockRangeList_FWD_DEFINED__
typedef interface IBlockRangeList IBlockRangeList;
#endif /* __IBlockRangeList_FWD_DEFINED__ */
#ifndef __MsftDiscMaster2_FWD_DEFINED__
#define __MsftDiscMaster2_FWD_DEFINED__
#ifdef __cplusplus
typedef class MsftDiscMaster2 MsftDiscMaster2;
#else
typedef struct MsftDiscMaster2 MsftDiscMaster2;
#endif /* __cplusplus */
#endif /* __MsftDiscMaster2_FWD_DEFINED__ */
#ifndef __MsftDiscRecorder2_FWD_DEFINED__
#define __MsftDiscRecorder2_FWD_DEFINED__
#ifdef __cplusplus
typedef class MsftDiscRecorder2 MsftDiscRecorder2;
#else
typedef struct MsftDiscRecorder2 MsftDiscRecorder2;
#endif /* __cplusplus */
#endif /* __MsftDiscRecorder2_FWD_DEFINED__ */
#ifndef __MsftWriteEngine2_FWD_DEFINED__
#define __MsftWriteEngine2_FWD_DEFINED__
#ifdef __cplusplus
typedef class MsftWriteEngine2 MsftWriteEngine2;
#else
typedef struct MsftWriteEngine2 MsftWriteEngine2;
#endif /* __cplusplus */
#endif /* __MsftWriteEngine2_FWD_DEFINED__ */
#ifndef __MsftDiscFormat2Erase_FWD_DEFINED__
#define __MsftDiscFormat2Erase_FWD_DEFINED__
#ifdef __cplusplus
typedef class MsftDiscFormat2Erase MsftDiscFormat2Erase;
#else
typedef struct MsftDiscFormat2Erase MsftDiscFormat2Erase;
#endif /* __cplusplus */
#endif /* __MsftDiscFormat2Erase_FWD_DEFINED__ */
#ifndef __MsftDiscFormat2Data_FWD_DEFINED__
#define __MsftDiscFormat2Data_FWD_DEFINED__
#ifdef __cplusplus
typedef class MsftDiscFormat2Data MsftDiscFormat2Data;
#else
typedef struct MsftDiscFormat2Data MsftDiscFormat2Data;
#endif /* __cplusplus */
#endif /* __MsftDiscFormat2Data_FWD_DEFINED__ */
#ifndef __MsftDiscFormat2TrackAtOnce_FWD_DEFINED__
#define __MsftDiscFormat2TrackAtOnce_FWD_DEFINED__
#ifdef __cplusplus
typedef class MsftDiscFormat2TrackAtOnce MsftDiscFormat2TrackAtOnce;
#else
typedef struct MsftDiscFormat2TrackAtOnce MsftDiscFormat2TrackAtOnce;
#endif /* __cplusplus */
#endif /* __MsftDiscFormat2TrackAtOnce_FWD_DEFINED__ */
#ifndef __MsftDiscFormat2RawCD_FWD_DEFINED__
#define __MsftDiscFormat2RawCD_FWD_DEFINED__
#ifdef __cplusplus
typedef class MsftDiscFormat2RawCD MsftDiscFormat2RawCD;
#else
typedef struct MsftDiscFormat2RawCD MsftDiscFormat2RawCD;
#endif /* __cplusplus */
#endif /* __MsftDiscFormat2RawCD_FWD_DEFINED__ */
#ifndef __MsftStreamZero_FWD_DEFINED__
#define __MsftStreamZero_FWD_DEFINED__
#ifdef __cplusplus
typedef class MsftStreamZero MsftStreamZero;
#else
typedef struct MsftStreamZero MsftStreamZero;
#endif /* __cplusplus */
#endif /* __MsftStreamZero_FWD_DEFINED__ */
#ifndef __MsftStreamPrng001_FWD_DEFINED__
#define __MsftStreamPrng001_FWD_DEFINED__
#ifdef __cplusplus
typedef class MsftStreamPrng001 MsftStreamPrng001;
#else
typedef struct MsftStreamPrng001 MsftStreamPrng001;
#endif /* __cplusplus */
#endif /* __MsftStreamPrng001_FWD_DEFINED__ */
#ifndef __MsftStreamConcatenate_FWD_DEFINED__
#define __MsftStreamConcatenate_FWD_DEFINED__
#ifdef __cplusplus
typedef class MsftStreamConcatenate MsftStreamConcatenate;
#else
typedef struct MsftStreamConcatenate MsftStreamConcatenate;
#endif /* __cplusplus */
#endif /* __MsftStreamConcatenate_FWD_DEFINED__ */
#ifndef __MsftStreamInterleave_FWD_DEFINED__
#define __MsftStreamInterleave_FWD_DEFINED__
#ifdef __cplusplus
typedef class MsftStreamInterleave MsftStreamInterleave;
#else
typedef struct MsftStreamInterleave MsftStreamInterleave;
#endif /* __cplusplus */
#endif /* __MsftStreamInterleave_FWD_DEFINED__ */
#ifndef __MsftWriteSpeedDescriptor_FWD_DEFINED__
#define __MsftWriteSpeedDescriptor_FWD_DEFINED__
#ifdef __cplusplus
typedef class MsftWriteSpeedDescriptor MsftWriteSpeedDescriptor;
#else
typedef struct MsftWriteSpeedDescriptor MsftWriteSpeedDescriptor;
#endif /* __cplusplus */
#endif /* __MsftWriteSpeedDescriptor_FWD_DEFINED__ */
#ifndef __MsftMultisessionSequential_FWD_DEFINED__
#define __MsftMultisessionSequential_FWD_DEFINED__
#ifdef __cplusplus
typedef class MsftMultisessionSequential MsftMultisessionSequential;
#else
typedef struct MsftMultisessionSequential MsftMultisessionSequential;
#endif /* __cplusplus */
#endif /* __MsftMultisessionSequential_FWD_DEFINED__ */
#ifndef __MsftMultisessionRandomWrite_FWD_DEFINED__
#define __MsftMultisessionRandomWrite_FWD_DEFINED__
#ifdef __cplusplus
typedef class MsftMultisessionRandomWrite MsftMultisessionRandomWrite;
#else
typedef struct MsftMultisessionRandomWrite MsftMultisessionRandomWrite;
#endif /* __cplusplus */
#endif /* __MsftMultisessionRandomWrite_FWD_DEFINED__ */
#ifndef __MsftRawCDImageCreator_FWD_DEFINED__
#define __MsftRawCDImageCreator_FWD_DEFINED__
#ifdef __cplusplus
typedef class MsftRawCDImageCreator MsftRawCDImageCreator;
#else
typedef struct MsftRawCDImageCreator MsftRawCDImageCreator;
#endif /* __cplusplus */
#endif /* __MsftRawCDImageCreator_FWD_DEFINED__ */
/* header files for imported files */
#include "oaidl.h"
#include "ocidl.h"
#include "propidl.h"
#ifdef __cplusplus
extern "C"{
#endif
/* interface __MIDL_itf_imapi2_0000_0000 */
/* [local] */
#define IMAPI_SECTOR_SIZE ( 2048 )
#define IMAPI2_DEFAULT_COMMAND_TIMEOUT 10
typedef /* [public][helpstring][v1_enum] */
enum _IMAPI_MEDIA_PHYSICAL_TYPE
{ IMAPI_MEDIA_TYPE_UNKNOWN = 0,
IMAPI_MEDIA_TYPE_CDROM = 0x1,
IMAPI_MEDIA_TYPE_CDR = 0x2,
IMAPI_MEDIA_TYPE_CDRW = 0x3,
IMAPI_MEDIA_TYPE_DVDROM = 0x4,
IMAPI_MEDIA_TYPE_DVDRAM = 0x5,
IMAPI_MEDIA_TYPE_DVDPLUSR = 0x6,
IMAPI_MEDIA_TYPE_DVDPLUSRW = 0x7,
IMAPI_MEDIA_TYPE_DVDPLUSR_DUALLAYER = 0x8,
IMAPI_MEDIA_TYPE_DVDDASHR = 0x9,
IMAPI_MEDIA_TYPE_DVDDASHRW = 0xa,
IMAPI_MEDIA_TYPE_DVDDASHR_DUALLAYER = 0xb,
IMAPI_MEDIA_TYPE_DISK = 0xc,
IMAPI_MEDIA_TYPE_DVDPLUSRW_DUALLAYER = 0xd,
IMAPI_MEDIA_TYPE_HDDVDROM = 0xe,
IMAPI_MEDIA_TYPE_HDDVDR = 0xf,
IMAPI_MEDIA_TYPE_HDDVDRAM = 0x10,
IMAPI_MEDIA_TYPE_BDROM = 0x11,
IMAPI_MEDIA_TYPE_BDR = 0x12,
IMAPI_MEDIA_TYPE_BDRE = 0x13,
IMAPI_MEDIA_TYPE_MAX = 0x13
} IMAPI_MEDIA_PHYSICAL_TYPE;
typedef /* [public][helpstring][v1_enum] */ enum _IMAPI_MEDIA_PHYSICAL_TYPE *PIMAPI_MEDIA_PHYSICAL_TYPE;
typedef /* [public][helpstring][v1_enum] */
enum _IMAPI_MEDIA_WRITE_PROTECT_STATE
{ IMAPI_WRITEPROTECTED_UNTIL_POWERDOWN = 0x1,
IMAPI_WRITEPROTECTED_BY_CARTRIDGE = 0x2,
IMAPI_WRITEPROTECTED_BY_MEDIA_SPECIFIC_REASON = 0x4,
IMAPI_WRITEPROTECTED_BY_SOFTWARE_WRITE_PROTECT = 0x8,
IMAPI_WRITEPROTECTED_BY_DISC_CONTROL_BLOCK = 0x10,
IMAPI_WRITEPROTECTED_READ_ONLY_MEDIA = 0x4000
} IMAPI_MEDIA_WRITE_PROTECT_STATE;
typedef /* [public][helpstring][v1_enum] */ enum _IMAPI_MEDIA_WRITE_PROTECT_STATE *PIMAPI_MEDIA_WRITE_PROTECT_STATE;
typedef /* [public][helpstring][v1_enum] */
enum _IMAPI_READ_TRACK_ADDRESS_TYPE
{ IMAPI_READ_TRACK_ADDRESS_TYPE_LBA = 0,
IMAPI_READ_TRACK_ADDRESS_TYPE_TRACK = 1,
IMAPI_READ_TRACK_ADDRESS_TYPE_SESSION = 2
} IMAPI_READ_TRACK_ADDRESS_TYPE;
typedef /* [public][helpstring][v1_enum] */ enum _IMAPI_READ_TRACK_ADDRESS_TYPE *PIMAPI_READ_TRACK_ADDRESS_TYPE;
typedef /* [public][helpstring][v1_enum] */
enum _IMAPI_MODE_PAGE_REQUEST_TYPE
{ IMAPI_MODE_PAGE_REQUEST_TYPE_CURRENT_VALUES = 0,
IMAPI_MODE_PAGE_REQUEST_TYPE_CHANGEABLE_VALUES = 1,
IMAPI_MODE_PAGE_REQUEST_TYPE_DEFAULT_VALUES = 2,
IMAPI_MODE_PAGE_REQUEST_TYPE_SAVED_VALUES = 3
} IMAPI_MODE_PAGE_REQUEST_TYPE;
typedef /* [public][helpstring][v1_enum] */ enum _IMAPI_MODE_PAGE_REQUEST_TYPE *PIMAPI_MODE_PAGE_REQUEST_TYPE;
typedef /* [public][helpstring][v1_enum] */
enum _IMAPI_MODE_PAGE_TYPE
{ IMAPI_MODE_PAGE_TYPE_READ_WRITE_ERROR_RECOVERY = 0x1,
IMAPI_MODE_PAGE_TYPE_MRW = 0x3,
IMAPI_MODE_PAGE_TYPE_WRITE_PARAMETERS = 0x5,
IMAPI_MODE_PAGE_TYPE_CACHING = 0x8,
IMAPI_MODE_PAGE_TYPE_INFORMATIONAL_EXCEPTIONS = 0x1c,
IMAPI_MODE_PAGE_TYPE_TIMEOUT_AND_PROTECT = 0x1d,
IMAPI_MODE_PAGE_TYPE_POWER_CONDITION = 0x1a,
IMAPI_MODE_PAGE_TYPE_LEGACY_CAPABILITIES = 0x2a
} IMAPI_MODE_PAGE_TYPE;
typedef /* [public][helpstring][v1_enum] */ enum _IMAPI_MODE_PAGE_TYPE *PIMAPI_MODE_PAGE_TYPE;
typedef /* [public][helpstring][v1_enum] */
enum _IMAPI_FEATURE_PAGE_TYPE
{ IMAPI_FEATURE_PAGE_TYPE_PROFILE_LIST = 0,
IMAPI_FEATURE_PAGE_TYPE_CORE = 0x1,
IMAPI_FEATURE_PAGE_TYPE_MORPHING = 0x2,
IMAPI_FEATURE_PAGE_TYPE_REMOVABLE_MEDIUM = 0x3,
IMAPI_FEATURE_PAGE_TYPE_WRITE_PROTECT = 0x4,
IMAPI_FEATURE_PAGE_TYPE_RANDOMLY_READABLE = 0x10,
IMAPI_FEATURE_PAGE_TYPE_CD_MULTIREAD = 0x1d,
IMAPI_FEATURE_PAGE_TYPE_CD_READ = 0x1e,
IMAPI_FEATURE_PAGE_TYPE_DVD_READ = 0x1f,
IMAPI_FEATURE_PAGE_TYPE_RANDOMLY_WRITABLE = 0x20,
IMAPI_FEATURE_PAGE_TYPE_INCREMENTAL_STREAMING_WRITABLE = 0x21,
IMAPI_FEATURE_PAGE_TYPE_SECTOR_ERASABLE = 0x22,
IMAPI_FEATURE_PAGE_TYPE_FORMATTABLE = 0x23,
IMAPI_FEATURE_PAGE_TYPE_HARDWARE_DEFECT_MANAGEMENT = 0x24,
IMAPI_FEATURE_PAGE_TYPE_WRITE_ONCE = 0x25,
IMAPI_FEATURE_PAGE_TYPE_RESTRICTED_OVERWRITE = 0x26,
IMAPI_FEATURE_PAGE_TYPE_CDRW_CAV_WRITE = 0x27,
IMAPI_FEATURE_PAGE_TYPE_MRW = 0x28,
IMAPI_FEATURE_PAGE_TYPE_ENHANCED_DEFECT_REPORTING = 0x29,
IMAPI_FEATURE_PAGE_TYPE_DVD_PLUS_RW = 0x2a,
IMAPI_FEATURE_PAGE_TYPE_DVD_PLUS_R = 0x2b,
IMAPI_FEATURE_PAGE_TYPE_RIGID_RESTRICTED_OVERWRITE = 0x2c,
IMAPI_FEATURE_PAGE_TYPE_CD_TRACK_AT_ONCE = 0x2d,
IMAPI_FEATURE_PAGE_TYPE_CD_MASTERING = 0x2e,
IMAPI_FEATURE_PAGE_TYPE_DVD_DASH_WRITE = 0x2f,
IMAPI_FEATURE_PAGE_TYPE_DOUBLE_DENSITY_CD_READ = 0x30,
IMAPI_FEATURE_PAGE_TYPE_DOUBLE_DENSITY_CD_R_WRITE = 0x31,
IMAPI_FEATURE_PAGE_TYPE_DOUBLE_DENSITY_CD_RW_WRITE = 0x32,
IMAPI_FEATURE_PAGE_TYPE_LAYER_JUMP_RECORDING = 0x33,
IMAPI_FEATURE_PAGE_TYPE_CD_RW_MEDIA_WRITE_SUPPORT = 0x37,
IMAPI_FEATURE_PAGE_TYPE_BD_PSEUDO_OVERWRITE = 0x38,
IMAPI_FEATURE_PAGE_TYPE_DVD_PLUS_R_DUAL_LAYER = 0x3b,
IMAPI_FEATURE_PAGE_TYPE_BD_READ = 0x40,
IMAPI_FEATURE_PAGE_TYPE_BD_WRITE = 0x41,
IMAPI_FEATURE_PAGE_TYPE_HD_DVD_READ = 0x50,
IMAPI_FEATURE_PAGE_TYPE_HD_DVD_WRITE = 0x51,
IMAPI_FEATURE_PAGE_TYPE_POWER_MANAGEMENT = 0x100,
IMAPI_FEATURE_PAGE_TYPE_SMART = 0x101,
IMAPI_FEATURE_PAGE_TYPE_EMBEDDED_CHANGER = 0x102,
IMAPI_FEATURE_PAGE_TYPE_CD_ANALOG_PLAY = 0x103,
IMAPI_FEATURE_PAGE_TYPE_MICROCODE_UPDATE = 0x104,
IMAPI_FEATURE_PAGE_TYPE_TIMEOUT = 0x105,
IMAPI_FEATURE_PAGE_TYPE_DVD_CSS = 0x106,
IMAPI_FEATURE_PAGE_TYPE_REAL_TIME_STREAMING = 0x107,
IMAPI_FEATURE_PAGE_TYPE_LOGICAL_UNIT_SERIAL_NUMBER = 0x108,
IMAPI_FEATURE_PAGE_TYPE_MEDIA_SERIAL_NUMBER = 0x109,
IMAPI_FEATURE_PAGE_TYPE_DISC_CONTROL_BLOCKS = 0x10a,
IMAPI_FEATURE_PAGE_TYPE_DVD_CPRM = 0x10b,
IMAPI_FEATURE_PAGE_TYPE_FIRMWARE_INFORMATION = 0x10c,
IMAPI_FEATURE_PAGE_TYPE_AACS = 0x10d,
IMAPI_FEATURE_PAGE_TYPE_VCPS = 0x110
} IMAPI_FEATURE_PAGE_TYPE;
typedef /* [public][helpstring][v1_enum] */ enum _IMAPI_FEATURE_PAGE_TYPE *PIMAPI_FEATURE_PAGE_TYPE;
typedef /* [public][helpstring][v1_enum] */
enum _IMAPI_PROFILE_TYPE
{ IMAPI_PROFILE_TYPE_INVALID = 0,
IMAPI_PROFILE_TYPE_NON_REMOVABLE_DISK = 0x1,
IMAPI_PROFILE_TYPE_REMOVABLE_DISK = 0x2,
IMAPI_PROFILE_TYPE_MO_ERASABLE = 0x3,
IMAPI_PROFILE_TYPE_MO_WRITE_ONCE = 0x4,
IMAPI_PROFILE_TYPE_AS_MO = 0x5,
IMAPI_PROFILE_TYPE_CDROM = 0x8,
IMAPI_PROFILE_TYPE_CD_RECORDABLE = 0x9,
IMAPI_PROFILE_TYPE_CD_REWRITABLE = 0xa,
IMAPI_PROFILE_TYPE_DVDROM = 0x10,
IMAPI_PROFILE_TYPE_DVD_DASH_RECORDABLE = 0x11,
IMAPI_PROFILE_TYPE_DVD_RAM = 0x12,
IMAPI_PROFILE_TYPE_DVD_DASH_REWRITABLE = 0x13,
IMAPI_PROFILE_TYPE_DVD_DASH_RW_SEQUENTIAL = 0x14,
IMAPI_PROFILE_TYPE_DVD_DASH_R_DUAL_SEQUENTIAL = 0x15,
IMAPI_PROFILE_TYPE_DVD_DASH_R_DUAL_LAYER_JUMP = 0x16,
IMAPI_PROFILE_TYPE_DVD_PLUS_RW = 0x1a,
IMAPI_PROFILE_TYPE_DVD_PLUS_R = 0x1b,
IMAPI_PROFILE_TYPE_DDCDROM = 0x20,
IMAPI_PROFILE_TYPE_DDCD_RECORDABLE = 0x21,
IMAPI_PROFILE_TYPE_DDCD_REWRITABLE = 0x22,
IMAPI_PROFILE_TYPE_DVD_PLUS_RW_DUAL = 0x2a,
IMAPI_PROFILE_TYPE_DVD_PLUS_R_DUAL = 0x2b,
IMAPI_PROFILE_TYPE_BD_ROM = 0x40,
IMAPI_PROFILE_TYPE_BD_R_SEQUENTIAL = 0x41,
IMAPI_PROFILE_TYPE_BD_R_RANDOM_RECORDING = 0x42,
IMAPI_PROFILE_TYPE_BD_REWRITABLE = 0x43,
IMAPI_PROFILE_TYPE_HD_DVD_ROM = 0x50,
IMAPI_PROFILE_TYPE_HD_DVD_RECORDABLE = 0x51,
IMAPI_PROFILE_TYPE_HD_DVD_RAM = 0x52,
IMAPI_PROFILE_TYPE_NON_STANDARD = 0xffff
} IMAPI_PROFILE_TYPE;
typedef /* [public][helpstring][v1_enum] */ enum _IMAPI_PROFILE_TYPE *PIMAPI_PROFILE_TYPE;
typedef /* [public][helpstring][v1_enum] */
enum _IMAPI_FORMAT2_DATA_WRITE_ACTION
{ IMAPI_FORMAT2_DATA_WRITE_ACTION_VALIDATING_MEDIA = 0,
IMAPI_FORMAT2_DATA_WRITE_ACTION_FORMATTING_MEDIA = 0x1,
IMAPI_FORMAT2_DATA_WRITE_ACTION_INITIALIZING_HARDWARE = 0x2,
IMAPI_FORMAT2_DATA_WRITE_ACTION_CALIBRATING_POWER = 0x3,
IMAPI_FORMAT2_DATA_WRITE_ACTION_WRITING_DATA = 0x4,
IMAPI_FORMAT2_DATA_WRITE_ACTION_FINALIZATION = 0x5,
IMAPI_FORMAT2_DATA_WRITE_ACTION_COMPLETED = 0x6,
IMAPI_FORMAT2_DATA_WRITE_ACTION_VERIFYING = 0x7
} IMAPI_FORMAT2_DATA_WRITE_ACTION;
typedef /* [public][helpstring][v1_enum] */ enum _IMAPI_FORMAT2_DATA_WRITE_ACTION *PIMAPI_FORMAT2_DATA_WRITE_ACTION;
typedef /* [public][helpstring][v1_enum] */
enum _IMAPI_FORMAT2_DATA_MEDIA_STATE
{ IMAPI_FORMAT2_DATA_MEDIA_STATE_UNKNOWN = 0,
IMAPI_FORMAT2_DATA_MEDIA_STATE_INFORMATIONAL_MASK = 0xf,
IMAPI_FORMAT2_DATA_MEDIA_STATE_UNSUPPORTED_MASK = 0xfc00,
IMAPI_FORMAT2_DATA_MEDIA_STATE_OVERWRITE_ONLY = 0x1,
IMAPI_FORMAT2_DATA_MEDIA_STATE_RANDOMLY_WRITABLE = 0x1,
IMAPI_FORMAT2_DATA_MEDIA_STATE_BLANK = 0x2,
IMAPI_FORMAT2_DATA_MEDIA_STATE_APPENDABLE = 0x4,
IMAPI_FORMAT2_DATA_MEDIA_STATE_FINAL_SESSION = 0x8,
IMAPI_FORMAT2_DATA_MEDIA_STATE_DAMAGED = 0x400,
IMAPI_FORMAT2_DATA_MEDIA_STATE_ERASE_REQUIRED = 0x800,
IMAPI_FORMAT2_DATA_MEDIA_STATE_NON_EMPTY_SESSION = 0x1000,
IMAPI_FORMAT2_DATA_MEDIA_STATE_WRITE_PROTECTED = 0x2000,
IMAPI_FORMAT2_DATA_MEDIA_STATE_FINALIZED = 0x4000,
IMAPI_FORMAT2_DATA_MEDIA_STATE_UNSUPPORTED_MEDIA = 0x8000
} IMAPI_FORMAT2_DATA_MEDIA_STATE;
typedef /* [public][helpstring][v1_enum] */ enum _IMAPI_FORMAT2_DATA_MEDIA_STATE *PIMAPI_FORMAT2_DATA_MEDIA_STATE;
typedef /* [public][helpstring][v1_enum] */
enum _IMAPI_FORMAT2_TAO_WRITE_ACTION
{ IMAPI_FORMAT2_TAO_WRITE_ACTION_UNKNOWN = 0,
IMAPI_FORMAT2_TAO_WRITE_ACTION_PREPARING = 0x1,
IMAPI_FORMAT2_TAO_WRITE_ACTION_WRITING = 0x2,
IMAPI_FORMAT2_TAO_WRITE_ACTION_FINISHING = 0x3,
IMAPI_FORMAT2_TAO_WRITE_ACTION_VERIFYING = 0x4
} IMAPI_FORMAT2_TAO_WRITE_ACTION;
typedef /* [public][helpstring][v1_enum] */ enum _IMAPI_FORMAT2_TAO_WRITE_ACTION *PIMAPI_FORMAT2_TAO_WRITE_ACTION;
typedef /* [public][helpstring][v1_enum] */
enum _IMAPI_FORMAT2_RAW_CD_DATA_SECTOR_TYPE
{ IMAPI_FORMAT2_RAW_CD_SUBCODE_PQ_ONLY = 0x1,
IMAPI_FORMAT2_RAW_CD_SUBCODE_IS_COOKED = 0x2,
IMAPI_FORMAT2_RAW_CD_SUBCODE_IS_RAW = 0x3
} IMAPI_FORMAT2_RAW_CD_DATA_SECTOR_TYPE;
typedef /* [public][helpstring][v1_enum] */ enum _IMAPI_FORMAT2_RAW_CD_DATA_SECTOR_TYPE *PIMAPI_FORMAT2_RAW_CD_DATA_SECTOR_TYPE;
typedef /* [public][helpstring][v1_enum] */
enum _IMAPI_FORMAT2_RAW_CD_WRITE_ACTION
{ IMAPI_FORMAT2_RAW_CD_WRITE_ACTION_UNKNOWN = 0,
IMAPI_FORMAT2_RAW_CD_WRITE_ACTION_PREPARING = 0x1,
IMAPI_FORMAT2_RAW_CD_WRITE_ACTION_WRITING = 0x2,
IMAPI_FORMAT2_RAW_CD_WRITE_ACTION_FINISHING = 0x3
} IMAPI_FORMAT2_RAW_CD_WRITE_ACTION;
typedef /* [public][helpstring][v1_enum] */ enum _IMAPI_FORMAT2_RAW_CD_WRITE_ACTION *PIMAPI_FORMAT2_RAW_CD_WRITE_ACTION;
typedef /* [public][helpstring][v1_enum] */
enum _IMAPI_CD_SECTOR_TYPE
{ IMAPI_CD_SECTOR_AUDIO = 0,
IMAPI_CD_SECTOR_MODE_ZERO = 0x1,
IMAPI_CD_SECTOR_MODE1 = 0x2,
IMAPI_CD_SECTOR_MODE2FORM0 = 0x3,
IMAPI_CD_SECTOR_MODE2FORM1 = 0x4,
IMAPI_CD_SECTOR_MODE2FORM2 = 0x5,
IMAPI_CD_SECTOR_MODE1RAW = 0x6,
IMAPI_CD_SECTOR_MODE2FORM0RAW = 0x7,
IMAPI_CD_SECTOR_MODE2FORM1RAW = 0x8,
IMAPI_CD_SECTOR_MODE2FORM2RAW = 0x9
} IMAPI_CD_SECTOR_TYPE;
typedef /* [public][helpstring][v1_enum] */ enum _IMAPI_CD_SECTOR_TYPE *PIMAPI_CD_SECTOR_TYPE;
typedef /* [public][helpstring][v1_enum] */
enum _IMAPI_CD_TRACK_DIGITAL_COPY_SETTING
{ IMAPI_CD_TRACK_DIGITAL_COPY_PERMITTED = 0,
IMAPI_CD_TRACK_DIGITAL_COPY_PROHIBITED = 0x1,
IMAPI_CD_TRACK_DIGITAL_COPY_SCMS = 0x2
} IMAPI_CD_TRACK_DIGITAL_COPY_SETTING;
typedef /* [public][helpstring][v1_enum] */ enum _IMAPI_CD_TRACK_DIGITAL_COPY_SETTING *PIMAPI_CD_TRACK_DIGITAL_COPY_SETTING;
typedef /* [public][helpstring][v1_enum] */
enum _IMAPI_BURN_VERIFICATION_LEVEL
{ IMAPI_BURN_VERIFICATION_NONE = 0,
IMAPI_BURN_VERIFICATION_QUICK = 1,
IMAPI_BURN_VERIFICATION_FULL = 2
} IMAPI_BURN_VERIFICATION_LEVEL;
typedef /* [public][helpstring][v1_enum] */ enum _IMAPI_BURN_VERIFICATION_LEVEL *PIMAPI_BURN_VERIFICATION_LEVEL;
// begin_wpp config
// CUSTOM_TYPE(IMAPI_MEDIA_PHYSICAL_TYPE, ItemEnum(_IMAPI_MEDIA_PHYSICAL_TYPE));
// CUSTOM_TYPE(IMAPI_MEDIA_WRITE_PROTECT_STATE, ItemEnum(_IMAPI_MEDIA_WRITE_PROTECT_STATE));
// CUSTOM_TYPE(IMAPI_READ_TRACK_ADDRESS_TYPE, ItemEnum(_IMAPI_READ_TRACK_ADDRESS_TYPE));
// CUSTOM_TYPE(IMAPI_MODE_PAGE_REQUEST_TYPE, ItemEnum(_IMAPI_MODE_PAGE_REQUEST_TYPE));
// CUSTOM_TYPE(IMAPI_MODE_PAGE_TYPE, ItemEnum(_IMAPI_MODE_PAGE_TYPE));
// CUSTOM_TYPE(IMAPI_FEATURE_PAGE_TYPE, ItemEnum(_IMAPI_FEATURE_PAGE_TYPE));
// CUSTOM_TYPE(IMAPI_PROFILE_TYPE, ItemEnum(_IMAPI_PROFILE_TYPE));
// CUSTOM_TYPE(IMAPI_FORMAT2_DATA_WRITE_ACTION, ItemEnum(_IMAPI_FORMAT2_DATA_WRITE_ACTION));
// CUSTOM_TYPE(IMAPI_FORMAT2_DATA_MEDIA_STATE, ItemEnum(_IMAPI_FORMAT2_DATA_MEDIA_STATE));
// CUSTOM_TYPE(IMAPI_FORMAT2_TAO_WRITE_ACTION, ItemEnum(_IMAPI_FORMAT2_TAO_WRITE_ACTION));
// CUSTOM_TYPE(IMAPI_FORMAT2_RAW_CD_DATA_SECTOR_TYPE, ItemEnum(_IMAPI_FORMAT2_RAW_CD_DATA_SECTOR_TYPE));
// CUSTOM_TYPE(IMAPI_FORMAT2_RAW_CD_WRITE_ACTION, ItemEnum(_IMAPI_FORMAT2_RAW_CD_WRITE_ACTION));
// CUSTOM_TYPE(IMAPI_CD_SECTOR_DATA_TYPE, ItemEnum(_IMAPI_CD_SECTOR_TYPE));
// CUSTOM_TYPE(IMAPI_CD_TRACK_DIGITAL_COPY_SETTING, ItemEnum(_IMAPI_CD_TRACK_DIGITAL_COPY_SETTING));
// CUSTOM_TYPE(IMAPI_BURN_VERIFICATION_LEVEL, ItemEnum(_IMAPI_BURN_VERIFICATION_LEVEL));
// end_wpp
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0000_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0000_v0_0_s_ifspec;
#ifndef __IDiscMaster2_INTERFACE_DEFINED__
#define __IDiscMaster2_INTERFACE_DEFINED__
/* interface IDiscMaster2 */
/* [helpstring][unique][uuid][dual][nonextensible][object] */
EXTERN_C const IID IID_IDiscMaster2;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("27354130-7F64-5B0F-8F00-5D77AFBE261E")
IDiscMaster2 : public IDispatch
{
public:
virtual /* [helpstring][restricted][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum(
/* [retval][ref][out] */ __RPC__deref_out_opt IEnumVARIANT **ppunk) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item(
/* [in] */ LONG index,
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsSupportedEnvironment(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
};
#else /* C style interface */
typedef struct IDiscMaster2Vtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IDiscMaster2 * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IDiscMaster2 * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IDiscMaster2 * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in IDiscMaster2 * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in IDiscMaster2 * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in IDiscMaster2 * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
IDiscMaster2 * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][restricted][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )(
__RPC__in IDiscMaster2 * This,
/* [retval][ref][out] */ __RPC__deref_out_opt IEnumVARIANT **ppunk);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Item )(
__RPC__in IDiscMaster2 * This,
/* [in] */ LONG index,
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )(
__RPC__in IDiscMaster2 * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsSupportedEnvironment )(
__RPC__in IDiscMaster2 * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
END_INTERFACE
} IDiscMaster2Vtbl;
interface IDiscMaster2
{
CONST_VTBL struct IDiscMaster2Vtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDiscMaster2_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDiscMaster2_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDiscMaster2_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDiscMaster2_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define IDiscMaster2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define IDiscMaster2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define IDiscMaster2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define IDiscMaster2_get__NewEnum(This,ppunk) \
( (This)->lpVtbl -> get__NewEnum(This,ppunk) )
#define IDiscMaster2_get_Item(This,index,value) \
( (This)->lpVtbl -> get_Item(This,index,value) )
#define IDiscMaster2_get_Count(This,value) \
( (This)->lpVtbl -> get_Count(This,value) )
#define IDiscMaster2_get_IsSupportedEnvironment(This,value) \
( (This)->lpVtbl -> get_IsSupportedEnvironment(This,value) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDiscMaster2_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0001 */
/* [local] */
#define DISPID_DDISCMASTER2EVENTS_DEVICEADDED 0x100
#define DISPID_DDISCMASTER2EVENTS_DEVICEREMOVED 0x101
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0001_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0001_v0_0_s_ifspec;
#ifndef __DDiscMaster2Events_INTERFACE_DEFINED__
#define __DDiscMaster2Events_INTERFACE_DEFINED__
/* interface DDiscMaster2Events */
/* [helpstring][unique][uuid][oleautomation][nonextensible][object] */
EXTERN_C const IID IID_DDiscMaster2Events;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("27354131-7F64-5B0F-8F00-5D77AFBE261E")
DDiscMaster2Events : public IDispatch
{
public:
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE NotifyDeviceAdded(
/* [in] */ __RPC__in_opt IDispatch *object,
/* [in] */ __RPC__in BSTR uniqueId) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE NotifyDeviceRemoved(
/* [in] */ __RPC__in_opt IDispatch *object,
/* [in] */ __RPC__in BSTR uniqueId) = 0;
};
#else /* C style interface */
typedef struct DDiscMaster2EventsVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in DDiscMaster2Events * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in DDiscMaster2Events * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in DDiscMaster2Events * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in DDiscMaster2Events * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in DDiscMaster2Events * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in DDiscMaster2Events * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
DDiscMaster2Events * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *NotifyDeviceAdded )(
__RPC__in DDiscMaster2Events * This,
/* [in] */ __RPC__in_opt IDispatch *object,
/* [in] */ __RPC__in BSTR uniqueId);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *NotifyDeviceRemoved )(
__RPC__in DDiscMaster2Events * This,
/* [in] */ __RPC__in_opt IDispatch *object,
/* [in] */ __RPC__in BSTR uniqueId);
END_INTERFACE
} DDiscMaster2EventsVtbl;
interface DDiscMaster2Events
{
CONST_VTBL struct DDiscMaster2EventsVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define DDiscMaster2Events_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define DDiscMaster2Events_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define DDiscMaster2Events_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define DDiscMaster2Events_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define DDiscMaster2Events_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define DDiscMaster2Events_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define DDiscMaster2Events_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define DDiscMaster2Events_NotifyDeviceAdded(This,object,uniqueId) \
( (This)->lpVtbl -> NotifyDeviceAdded(This,object,uniqueId) )
#define DDiscMaster2Events_NotifyDeviceRemoved(This,object,uniqueId) \
( (This)->lpVtbl -> NotifyDeviceRemoved(This,object,uniqueId) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __DDiscMaster2Events_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0002 */
/* [local] */
typedef /* [range] */ __RPC__range(0,0xffff) ULONG ULONG_IMAPI2_DVD_STRUCTURE;
typedef /* [range] */ __RPC__range(0,0xfffffff) ULONG ULONG_IMAPI2_ADAPTER_DESCRIPTOR;
typedef /* [range] */ __RPC__range(0,0xfffffff) ULONG ULONG_IMAPI2_DEVICE_DESCRIPTOR;
typedef /* [range] */ __RPC__range(0,0x10002) ULONG ULONG_IMAPI2_DISC_INFORMATION;
typedef /* [range] */ __RPC__range(0,0x10002) ULONG ULONG_IMAPI2_TRACK_INFORMATION;
typedef /* [range] */ __RPC__range(0,0x100) ULONG ULONG_IMAPI2_FEATURE_PAGE;
typedef /* [range] */ __RPC__range(0,0x101) ULONG ULONG_IMAPI2_MODE_PAGE;
typedef /* [range] */ __RPC__range(0,0x10000) ULONG ULONG_IMAPI2_ALL_FEATURE_PAGES;
typedef /* [range] */ __RPC__range(0,0x3f) ULONG ULONG_IMAPI2_ALL_PROFILES;
typedef /* [range] */ __RPC__range(0,0x7ffb) ULONG ULONG_IMAPI2_ALL_MODE_PAGES;
typedef /* [range] */ __RPC__range(1,0x7fffffff) ULONG ULONG_IMAPI2_NONZERO;
typedef /* [range] */ __RPC__range(0,0x7fffffff) ULONG ULONG_IMAPI2_NOT_NEGATIVE;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0002_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0002_v0_0_s_ifspec;
#ifndef __IDiscRecorder2Ex_INTERFACE_DEFINED__
#define __IDiscRecorder2Ex_INTERFACE_DEFINED__
/* interface IDiscRecorder2Ex */
/* [helpstring][unique][uuid][object] */
EXTERN_C const IID IID_IDiscRecorder2Ex;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("27354132-7F64-5B0F-8F00-5D77AFBE261E")
IDiscRecorder2Ex : public IUnknown
{
public:
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SendCommandNoData(
/* [size_is][ref][in] */ __RPC__in_ecount_full(CdbSize) BYTE *Cdb,
/* [range][in] */ __RPC__in_range(6,16) ULONG CdbSize,
/* [ref][out] */ __RPC__out_ecount_full(18) BYTE SenseBuffer[ 18 ],
/* [in] */ ULONG Timeout) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SendCommandSendDataToDevice(
/* [size_is][ref][in] */ __RPC__in_ecount_full(CdbSize) BYTE *Cdb,
/* [range][in] */ __RPC__in_range(6,16) ULONG CdbSize,
/* [ref][out] */ __RPC__out_ecount_full(18) BYTE SenseBuffer[ 18 ],
/* [in] */ ULONG Timeout,
/* [size_is][ref][in] */ __RPC__in_ecount_full(BufferSize) BYTE *Buffer,
/* [in] */ ULONG_IMAPI2_NONZERO BufferSize) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SendCommandGetDataFromDevice(
/* [size_is][ref][in] */ __RPC__in_ecount_full(CdbSize) BYTE *Cdb,
/* [range][in] */ __RPC__in_range(6,16) ULONG CdbSize,
/* [ref][out] */ __RPC__out_ecount_full(18) BYTE SenseBuffer[ 18 ],
/* [in] */ ULONG Timeout,
/* [length_is][size_is][ref][out] */ __RPC__out_ecount_part(BufferSize, *BufferFetched) BYTE *Buffer,
/* [in] */ ULONG_IMAPI2_NONZERO BufferSize,
/* [ref][out] */ __RPC__out ULONG_IMAPI2_NOT_NEGATIVE *BufferFetched) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE ReadDvdStructure(
/* [range][in] */ __RPC__in_range(0,0xff) ULONG format,
/* [in] */ ULONG address,
/* [range][in] */ __RPC__in_range(0,0xff) ULONG layer,
/* [range][in] */ __RPC__in_range(0,0x3) ULONG agid,
/* [size_is][size_is][ref][out] */ __RPC__deref_out_ecount_full_opt(*count) BYTE **data,
/* [ref][out] */ __RPC__out ULONG_IMAPI2_DVD_STRUCTURE *count) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SendDvdStructure(
/* [range][in] */ __RPC__in_range(0,0xff) ULONG format,
/* [size_is][ref][in] */ __RPC__in_ecount_full(count) BYTE *data,
/* [in] */ ULONG_IMAPI2_DVD_STRUCTURE count) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetAdapterDescriptor(
/* [size_is][size_is][ref][out] */ __RPC__deref_out_ecount_full_opt(*byteSize) BYTE **data,
/* [ref][out] */ __RPC__out ULONG_IMAPI2_ADAPTER_DESCRIPTOR *byteSize) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetDeviceDescriptor(
/* [size_is][size_is][ref][out] */ __RPC__deref_out_ecount_full_opt(*byteSize) BYTE **data,
/* [ref][out] */ __RPC__out ULONG_IMAPI2_DEVICE_DESCRIPTOR *byteSize) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetDiscInformation(
/* [size_is][size_is][ref][out] */ __RPC__deref_out_ecount_full_opt(*byteSize) BYTE **discInformation,
/* [ref][out] */ __RPC__out ULONG_IMAPI2_DISC_INFORMATION *byteSize) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetTrackInformation(
/* [in] */ ULONG address,
/* [in] */ IMAPI_READ_TRACK_ADDRESS_TYPE addressType,
/* [size_is][size_is][ref][out] */ __RPC__deref_out_ecount_full_opt(*byteSize) BYTE **trackInformation,
/* [ref][out] */ __RPC__out ULONG_IMAPI2_TRACK_INFORMATION *byteSize) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetFeaturePage(
/* [in] */ IMAPI_FEATURE_PAGE_TYPE requestedFeature,
/* [in] */ BOOLEAN currentFeatureOnly,
/* [size_is][size_is][ref][out] */ __RPC__deref_out_ecount_full_opt(*byteSize) BYTE **featureData,
/* [ref][out] */ __RPC__out ULONG_IMAPI2_FEATURE_PAGE *byteSize) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetModePage(
/* [in] */ IMAPI_MODE_PAGE_TYPE requestedModePage,
/* [in] */ IMAPI_MODE_PAGE_REQUEST_TYPE requestType,
/* [size_is][size_is][ref][out] */ __RPC__deref_out_ecount_full_opt(*byteSize) BYTE **modePageData,
/* [ref][out] */ __RPC__out ULONG_IMAPI2_MODE_PAGE *byteSize) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SetModePage(
/* [in] */ IMAPI_MODE_PAGE_REQUEST_TYPE requestType,
/* [size_is][ref][in] */ __RPC__in_ecount_full(byteSize) BYTE *data,
/* [in] */ ULONG_IMAPI2_MODE_PAGE byteSize) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetSupportedFeaturePages(
/* [in] */ BOOLEAN currentFeatureOnly,
/* [size_is][size_is][ref][out] */ __RPC__deref_out_ecount_full_opt(*byteSize) IMAPI_FEATURE_PAGE_TYPE **featureData,
/* [ref][out] */ __RPC__out ULONG_IMAPI2_ALL_FEATURE_PAGES *byteSize) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetSupportedProfiles(
/* [in] */ BOOLEAN currentOnly,
/* [size_is][size_is][ref][out] */ __RPC__deref_out_ecount_full_opt(*validProfiles) IMAPI_PROFILE_TYPE **profileTypes,
/* [ref][out] */ __RPC__out ULONG_IMAPI2_ALL_PROFILES *validProfiles) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetSupportedModePages(
/* [in] */ IMAPI_MODE_PAGE_REQUEST_TYPE requestType,
/* [size_is][size_is][ref][out] */ __RPC__deref_out_ecount_full_opt(*validPages) IMAPI_MODE_PAGE_TYPE **modePageTypes,
/* [ref][out] */ __RPC__out ULONG_IMAPI2_ALL_MODE_PAGES *validPages) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetByteAlignmentMask(
/* [retval][ref][out] */ __RPC__out ULONG *value) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetMaximumNonPageAlignedTransferSize(
/* [retval][ref][out] */ __RPC__out ULONG *value) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetMaximumPageAlignedTransferSize(
/* [retval][ref][out] */ __RPC__out ULONG *value) = 0;
};
#else /* C style interface */
typedef struct IDiscRecorder2ExVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IDiscRecorder2Ex * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IDiscRecorder2Ex * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IDiscRecorder2Ex * This);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SendCommandNoData )(
__RPC__in IDiscRecorder2Ex * This,
/* [size_is][ref][in] */ __RPC__in_ecount_full(CdbSize) BYTE *Cdb,
/* [range][in] */ __RPC__in_range(6,16) ULONG CdbSize,
/* [ref][out] */ __RPC__out_ecount_full(18) BYTE SenseBuffer[ 18 ],
/* [in] */ ULONG Timeout);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SendCommandSendDataToDevice )(
__RPC__in IDiscRecorder2Ex * This,
/* [size_is][ref][in] */ __RPC__in_ecount_full(CdbSize) BYTE *Cdb,
/* [range][in] */ __RPC__in_range(6,16) ULONG CdbSize,
/* [ref][out] */ __RPC__out_ecount_full(18) BYTE SenseBuffer[ 18 ],
/* [in] */ ULONG Timeout,
/* [size_is][ref][in] */ __RPC__in_ecount_full(BufferSize) BYTE *Buffer,
/* [in] */ ULONG_IMAPI2_NONZERO BufferSize);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SendCommandGetDataFromDevice )(
__RPC__in IDiscRecorder2Ex * This,
/* [size_is][ref][in] */ __RPC__in_ecount_full(CdbSize) BYTE *Cdb,
/* [range][in] */ __RPC__in_range(6,16) ULONG CdbSize,
/* [ref][out] */ __RPC__out_ecount_full(18) BYTE SenseBuffer[ 18 ],
/* [in] */ ULONG Timeout,
/* [length_is][size_is][ref][out] */ __RPC__out_ecount_part(BufferSize, *BufferFetched) BYTE *Buffer,
/* [in] */ ULONG_IMAPI2_NONZERO BufferSize,
/* [ref][out] */ __RPC__out ULONG_IMAPI2_NOT_NEGATIVE *BufferFetched);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *ReadDvdStructure )(
__RPC__in IDiscRecorder2Ex * This,
/* [range][in] */ __RPC__in_range(0,0xff) ULONG format,
/* [in] */ ULONG address,
/* [range][in] */ __RPC__in_range(0,0xff) ULONG layer,
/* [range][in] */ __RPC__in_range(0,0x3) ULONG agid,
/* [size_is][size_is][ref][out] */ __RPC__deref_out_ecount_full_opt(*count) BYTE **data,
/* [ref][out] */ __RPC__out ULONG_IMAPI2_DVD_STRUCTURE *count);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SendDvdStructure )(
__RPC__in IDiscRecorder2Ex * This,
/* [range][in] */ __RPC__in_range(0,0xff) ULONG format,
/* [size_is][ref][in] */ __RPC__in_ecount_full(count) BYTE *data,
/* [in] */ ULONG_IMAPI2_DVD_STRUCTURE count);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetAdapterDescriptor )(
__RPC__in IDiscRecorder2Ex * This,
/* [size_is][size_is][ref][out] */ __RPC__deref_out_ecount_full_opt(*byteSize) BYTE **data,
/* [ref][out] */ __RPC__out ULONG_IMAPI2_ADAPTER_DESCRIPTOR *byteSize);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetDeviceDescriptor )(
__RPC__in IDiscRecorder2Ex * This,
/* [size_is][size_is][ref][out] */ __RPC__deref_out_ecount_full_opt(*byteSize) BYTE **data,
/* [ref][out] */ __RPC__out ULONG_IMAPI2_DEVICE_DESCRIPTOR *byteSize);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetDiscInformation )(
__RPC__in IDiscRecorder2Ex * This,
/* [size_is][size_is][ref][out] */ __RPC__deref_out_ecount_full_opt(*byteSize) BYTE **discInformation,
/* [ref][out] */ __RPC__out ULONG_IMAPI2_DISC_INFORMATION *byteSize);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetTrackInformation )(
__RPC__in IDiscRecorder2Ex * This,
/* [in] */ ULONG address,
/* [in] */ IMAPI_READ_TRACK_ADDRESS_TYPE addressType,
/* [size_is][size_is][ref][out] */ __RPC__deref_out_ecount_full_opt(*byteSize) BYTE **trackInformation,
/* [ref][out] */ __RPC__out ULONG_IMAPI2_TRACK_INFORMATION *byteSize);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetFeaturePage )(
__RPC__in IDiscRecorder2Ex * This,
/* [in] */ IMAPI_FEATURE_PAGE_TYPE requestedFeature,
/* [in] */ BOOLEAN currentFeatureOnly,
/* [size_is][size_is][ref][out] */ __RPC__deref_out_ecount_full_opt(*byteSize) BYTE **featureData,
/* [ref][out] */ __RPC__out ULONG_IMAPI2_FEATURE_PAGE *byteSize);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetModePage )(
__RPC__in IDiscRecorder2Ex * This,
/* [in] */ IMAPI_MODE_PAGE_TYPE requestedModePage,
/* [in] */ IMAPI_MODE_PAGE_REQUEST_TYPE requestType,
/* [size_is][size_is][ref][out] */ __RPC__deref_out_ecount_full_opt(*byteSize) BYTE **modePageData,
/* [ref][out] */ __RPC__out ULONG_IMAPI2_MODE_PAGE *byteSize);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetModePage )(
__RPC__in IDiscRecorder2Ex * This,
/* [in] */ IMAPI_MODE_PAGE_REQUEST_TYPE requestType,
/* [size_is][ref][in] */ __RPC__in_ecount_full(byteSize) BYTE *data,
/* [in] */ ULONG_IMAPI2_MODE_PAGE byteSize);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetSupportedFeaturePages )(
__RPC__in IDiscRecorder2Ex * This,
/* [in] */ BOOLEAN currentFeatureOnly,
/* [size_is][size_is][ref][out] */ __RPC__deref_out_ecount_full_opt(*byteSize) IMAPI_FEATURE_PAGE_TYPE **featureData,
/* [ref][out] */ __RPC__out ULONG_IMAPI2_ALL_FEATURE_PAGES *byteSize);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetSupportedProfiles )(
__RPC__in IDiscRecorder2Ex * This,
/* [in] */ BOOLEAN currentOnly,
/* [size_is][size_is][ref][out] */ __RPC__deref_out_ecount_full_opt(*validProfiles) IMAPI_PROFILE_TYPE **profileTypes,
/* [ref][out] */ __RPC__out ULONG_IMAPI2_ALL_PROFILES *validProfiles);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetSupportedModePages )(
__RPC__in IDiscRecorder2Ex * This,
/* [in] */ IMAPI_MODE_PAGE_REQUEST_TYPE requestType,
/* [size_is][size_is][ref][out] */ __RPC__deref_out_ecount_full_opt(*validPages) IMAPI_MODE_PAGE_TYPE **modePageTypes,
/* [ref][out] */ __RPC__out ULONG_IMAPI2_ALL_MODE_PAGES *validPages);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetByteAlignmentMask )(
__RPC__in IDiscRecorder2Ex * This,
/* [retval][ref][out] */ __RPC__out ULONG *value);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetMaximumNonPageAlignedTransferSize )(
__RPC__in IDiscRecorder2Ex * This,
/* [retval][ref][out] */ __RPC__out ULONG *value);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetMaximumPageAlignedTransferSize )(
__RPC__in IDiscRecorder2Ex * This,
/* [retval][ref][out] */ __RPC__out ULONG *value);
END_INTERFACE
} IDiscRecorder2ExVtbl;
interface IDiscRecorder2Ex
{
CONST_VTBL struct IDiscRecorder2ExVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDiscRecorder2Ex_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDiscRecorder2Ex_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDiscRecorder2Ex_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDiscRecorder2Ex_SendCommandNoData(This,Cdb,CdbSize,SenseBuffer,Timeout) \
( (This)->lpVtbl -> SendCommandNoData(This,Cdb,CdbSize,SenseBuffer,Timeout) )
#define IDiscRecorder2Ex_SendCommandSendDataToDevice(This,Cdb,CdbSize,SenseBuffer,Timeout,Buffer,BufferSize) \
( (This)->lpVtbl -> SendCommandSendDataToDevice(This,Cdb,CdbSize,SenseBuffer,Timeout,Buffer,BufferSize) )
#define IDiscRecorder2Ex_SendCommandGetDataFromDevice(This,Cdb,CdbSize,SenseBuffer,Timeout,Buffer,BufferSize,BufferFetched) \
( (This)->lpVtbl -> SendCommandGetDataFromDevice(This,Cdb,CdbSize,SenseBuffer,Timeout,Buffer,BufferSize,BufferFetched) )
#define IDiscRecorder2Ex_ReadDvdStructure(This,format,address,layer,agid,data,count) \
( (This)->lpVtbl -> ReadDvdStructure(This,format,address,layer,agid,data,count) )
#define IDiscRecorder2Ex_SendDvdStructure(This,format,data,count) \
( (This)->lpVtbl -> SendDvdStructure(This,format,data,count) )
#define IDiscRecorder2Ex_GetAdapterDescriptor(This,data,byteSize) \
( (This)->lpVtbl -> GetAdapterDescriptor(This,data,byteSize) )
#define IDiscRecorder2Ex_GetDeviceDescriptor(This,data,byteSize) \
( (This)->lpVtbl -> GetDeviceDescriptor(This,data,byteSize) )
#define IDiscRecorder2Ex_GetDiscInformation(This,discInformation,byteSize) \
( (This)->lpVtbl -> GetDiscInformation(This,discInformation,byteSize) )
#define IDiscRecorder2Ex_GetTrackInformation(This,address,addressType,trackInformation,byteSize) \
( (This)->lpVtbl -> GetTrackInformation(This,address,addressType,trackInformation,byteSize) )
#define IDiscRecorder2Ex_GetFeaturePage(This,requestedFeature,currentFeatureOnly,featureData,byteSize) \
( (This)->lpVtbl -> GetFeaturePage(This,requestedFeature,currentFeatureOnly,featureData,byteSize) )
#define IDiscRecorder2Ex_GetModePage(This,requestedModePage,requestType,modePageData,byteSize) \
( (This)->lpVtbl -> GetModePage(This,requestedModePage,requestType,modePageData,byteSize) )
#define IDiscRecorder2Ex_SetModePage(This,requestType,data,byteSize) \
( (This)->lpVtbl -> SetModePage(This,requestType,data,byteSize) )
#define IDiscRecorder2Ex_GetSupportedFeaturePages(This,currentFeatureOnly,featureData,byteSize) \
( (This)->lpVtbl -> GetSupportedFeaturePages(This,currentFeatureOnly,featureData,byteSize) )
#define IDiscRecorder2Ex_GetSupportedProfiles(This,currentOnly,profileTypes,validProfiles) \
( (This)->lpVtbl -> GetSupportedProfiles(This,currentOnly,profileTypes,validProfiles) )
#define IDiscRecorder2Ex_GetSupportedModePages(This,requestType,modePageTypes,validPages) \
( (This)->lpVtbl -> GetSupportedModePages(This,requestType,modePageTypes,validPages) )
#define IDiscRecorder2Ex_GetByteAlignmentMask(This,value) \
( (This)->lpVtbl -> GetByteAlignmentMask(This,value) )
#define IDiscRecorder2Ex_GetMaximumNonPageAlignedTransferSize(This,value) \
( (This)->lpVtbl -> GetMaximumNonPageAlignedTransferSize(This,value) )
#define IDiscRecorder2Ex_GetMaximumPageAlignedTransferSize(This,value) \
( (This)->lpVtbl -> GetMaximumPageAlignedTransferSize(This,value) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDiscRecorder2Ex_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0003 */
/* [local] */
#define DISPID_IDISCRECORDER2_EJECTMEDIA 0x100
#define DISPID_IDISCRECORDER2_CLOSETRAY 0x101
#define DISPID_IDISCRECORDER2_ACQUIREEXCLUSIVEACCESS 0x102
#define DISPID_IDISCRECORDER2_RELEASEEXCLUSIVEACCESS 0x103
#define DISPID_IDISCRECORDER2_DISABLEMCN 0x104
#define DISPID_IDISCRECORDER2_ENABLEMCN 0x105
#define DISPID_IDISCRECORDER2_INITIALIZEDISCRECORDER 0x106
#define DISPID_IDISCRECORDER2_ACTIVEDISCRECORDER DISPID_VALUE
#define DISPID_IDISCRECORDER2_VENDORID 0x201
#define DISPID_IDISCRECORDER2_PRODUCTID 0x202
#define DISPID_IDISCRECORDER2_PRODUCTREVISION 0x203
#define DISPID_IDISCRECORDER2_VOLUMENAME 0x204
#define DISPID_IDISCRECORDER2_VOLUMEPATHNAMES 0x205
#define DISPID_IDISCRECORDER2_DEVICECANLOADMEDIA 0x206
#define DISPID_IDISCRECORDER2_LEGACYDEVICENUMBER 0x207
#define DISPID_IDISCRECORDER2_SUPPORTEDFEATUREPAGES 0x208
#define DISPID_IDISCRECORDER2_CURRENTFEATUREPAGES 0x209
#define DISPID_IDISCRECORDER2_SUPPORTEDPROFILES 0x20A
#define DISPID_IDISCRECORDER2_CURRENTPROFILES 0x20B
#define DISPID_IDISCRECORDER2_SUPPORTEDMODEPAGES 0x20C
#define DISPID_IDISCRECORDER2_EXCLUSIVEACCESSOWNER 0x20D
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0003_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0003_v0_0_s_ifspec;
#ifndef __IDiscRecorder2_INTERFACE_DEFINED__
#define __IDiscRecorder2_INTERFACE_DEFINED__
/* interface IDiscRecorder2 */
/* [helpstring][unique][uuid][dual][nonextensible][object] */
EXTERN_C const IID IID_IDiscRecorder2;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("27354133-7F64-5B0F-8F00-5D77AFBE261E")
IDiscRecorder2 : public IDispatch
{
public:
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE EjectMedia( void) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE CloseTray( void) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AcquireExclusiveAccess(
/* [in] */ VARIANT_BOOL force,
/* [in] */ __RPC__in BSTR __MIDL__IDiscRecorder20000) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ReleaseExclusiveAccess( void) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE DisableMcn( void) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE EnableMcn( void) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE InitializeDiscRecorder(
/* [in] */ __RPC__in BSTR recorderUniqueId) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ActiveDiscRecorder(
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VendorId(
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProductId(
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProductRevision(
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VolumeName(
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VolumePathNames(
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DeviceCanLoadMedia(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LegacyDeviceNumber(
/* [retval][ref][out] */ __RPC__out LONG *legacyDeviceNumber) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SupportedFeaturePages(
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentFeaturePages(
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SupportedProfiles(
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentProfiles(
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SupportedModePages(
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExclusiveAccessOwner(
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value) = 0;
};
#else /* C style interface */
typedef struct IDiscRecorder2Vtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IDiscRecorder2 * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IDiscRecorder2 * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IDiscRecorder2 * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in IDiscRecorder2 * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in IDiscRecorder2 * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in IDiscRecorder2 * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
IDiscRecorder2 * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *EjectMedia )(
__RPC__in IDiscRecorder2 * This);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CloseTray )(
__RPC__in IDiscRecorder2 * This);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AcquireExclusiveAccess )(
__RPC__in IDiscRecorder2 * This,
/* [in] */ VARIANT_BOOL force,
/* [in] */ __RPC__in BSTR __MIDL__IDiscRecorder20000);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ReleaseExclusiveAccess )(
__RPC__in IDiscRecorder2 * This);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *DisableMcn )(
__RPC__in IDiscRecorder2 * This);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *EnableMcn )(
__RPC__in IDiscRecorder2 * This);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *InitializeDiscRecorder )(
__RPC__in IDiscRecorder2 * This,
/* [in] */ __RPC__in BSTR recorderUniqueId);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ActiveDiscRecorder )(
__RPC__in IDiscRecorder2 * This,
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VendorId )(
__RPC__in IDiscRecorder2 * This,
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ProductId )(
__RPC__in IDiscRecorder2 * This,
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ProductRevision )(
__RPC__in IDiscRecorder2 * This,
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VolumeName )(
__RPC__in IDiscRecorder2 * This,
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VolumePathNames )(
__RPC__in IDiscRecorder2 * This,
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DeviceCanLoadMedia )(
__RPC__in IDiscRecorder2 * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LegacyDeviceNumber )(
__RPC__in IDiscRecorder2 * This,
/* [retval][ref][out] */ __RPC__out LONG *legacyDeviceNumber);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SupportedFeaturePages )(
__RPC__in IDiscRecorder2 * This,
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentFeaturePages )(
__RPC__in IDiscRecorder2 * This,
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SupportedProfiles )(
__RPC__in IDiscRecorder2 * This,
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentProfiles )(
__RPC__in IDiscRecorder2 * This,
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SupportedModePages )(
__RPC__in IDiscRecorder2 * This,
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExclusiveAccessOwner )(
__RPC__in IDiscRecorder2 * This,
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value);
END_INTERFACE
} IDiscRecorder2Vtbl;
interface IDiscRecorder2
{
CONST_VTBL struct IDiscRecorder2Vtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDiscRecorder2_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDiscRecorder2_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDiscRecorder2_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDiscRecorder2_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define IDiscRecorder2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define IDiscRecorder2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define IDiscRecorder2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define IDiscRecorder2_EjectMedia(This) \
( (This)->lpVtbl -> EjectMedia(This) )
#define IDiscRecorder2_CloseTray(This) \
( (This)->lpVtbl -> CloseTray(This) )
#define IDiscRecorder2_AcquireExclusiveAccess(This,force,__MIDL__IDiscRecorder20000) \
( (This)->lpVtbl -> AcquireExclusiveAccess(This,force,__MIDL__IDiscRecorder20000) )
#define IDiscRecorder2_ReleaseExclusiveAccess(This) \
( (This)->lpVtbl -> ReleaseExclusiveAccess(This) )
#define IDiscRecorder2_DisableMcn(This) \
( (This)->lpVtbl -> DisableMcn(This) )
#define IDiscRecorder2_EnableMcn(This) \
( (This)->lpVtbl -> EnableMcn(This) )
#define IDiscRecorder2_InitializeDiscRecorder(This,recorderUniqueId) \
( (This)->lpVtbl -> InitializeDiscRecorder(This,recorderUniqueId) )
#define IDiscRecorder2_get_ActiveDiscRecorder(This,value) \
( (This)->lpVtbl -> get_ActiveDiscRecorder(This,value) )
#define IDiscRecorder2_get_VendorId(This,value) \
( (This)->lpVtbl -> get_VendorId(This,value) )
#define IDiscRecorder2_get_ProductId(This,value) \
( (This)->lpVtbl -> get_ProductId(This,value) )
#define IDiscRecorder2_get_ProductRevision(This,value) \
( (This)->lpVtbl -> get_ProductRevision(This,value) )
#define IDiscRecorder2_get_VolumeName(This,value) \
( (This)->lpVtbl -> get_VolumeName(This,value) )
#define IDiscRecorder2_get_VolumePathNames(This,value) \
( (This)->lpVtbl -> get_VolumePathNames(This,value) )
#define IDiscRecorder2_get_DeviceCanLoadMedia(This,value) \
( (This)->lpVtbl -> get_DeviceCanLoadMedia(This,value) )
#define IDiscRecorder2_get_LegacyDeviceNumber(This,legacyDeviceNumber) \
( (This)->lpVtbl -> get_LegacyDeviceNumber(This,legacyDeviceNumber) )
#define IDiscRecorder2_get_SupportedFeaturePages(This,value) \
( (This)->lpVtbl -> get_SupportedFeaturePages(This,value) )
#define IDiscRecorder2_get_CurrentFeaturePages(This,value) \
( (This)->lpVtbl -> get_CurrentFeaturePages(This,value) )
#define IDiscRecorder2_get_SupportedProfiles(This,value) \
( (This)->lpVtbl -> get_SupportedProfiles(This,value) )
#define IDiscRecorder2_get_CurrentProfiles(This,value) \
( (This)->lpVtbl -> get_CurrentProfiles(This,value) )
#define IDiscRecorder2_get_SupportedModePages(This,value) \
( (This)->lpVtbl -> get_SupportedModePages(This,value) )
#define IDiscRecorder2_get_ExclusiveAccessOwner(This,value) \
( (This)->lpVtbl -> get_ExclusiveAccessOwner(This,value) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDiscRecorder2_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0004 */
/* [local] */
#define DISPID_IWRITEENGINE2_WRITESECTION 0x200
#define DISPID_IWRITEENGINE2_CANCELWRITE 0x201
#define DISPID_IWRITEENGINE2_DISCRECORDER 0x100
#define DISPID_IWRITEENGINE2_USESTREAMINGWRITE12 0x101
#define DISPID_IWRITEENGINE2_STARTINGSECTORSPERSECOND 0x102
#define DISPID_IWRITEENGINE2_ENDINGSECTORSPERSECOND 0x103
#define DISPID_IWRITEENGINE2_BYTESPERSECTOR 0x104
#define DISPID_IWRITEENGINE2_WRITEINPROGRESS 0x105
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0004_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0004_v0_0_s_ifspec;
#ifndef __IWriteEngine2_INTERFACE_DEFINED__
#define __IWriteEngine2_INTERFACE_DEFINED__
/* interface IWriteEngine2 */
/* [helpstring][unique][uuid][dual][nonextensible][object] */
EXTERN_C const IID IID_IWriteEngine2;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("27354135-7F64-5B0F-8F00-5D77AFBE261E")
IWriteEngine2 : public IDispatch
{
public:
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE WriteSection(
/* [in] */ __RPC__in_opt IStream *data,
/* [in] */ LONG startingBlockAddress,
/* [in] */ LONG numberOfBlocks) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE CancelWrite( void) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Recorder(
/* [in] */ __RPC__in_opt IDiscRecorder2Ex *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Recorder(
/* [retval][ref][out] */ __RPC__deref_out_opt IDiscRecorder2Ex **value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_UseStreamingWrite12(
/* [in] */ VARIANT_BOOL value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UseStreamingWrite12(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_StartingSectorsPerSecond(
/* [in] */ LONG value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StartingSectorsPerSecond(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_EndingSectorsPerSecond(
/* [in] */ LONG value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_EndingSectorsPerSecond(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BytesPerSector(
/* [in] */ LONG value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BytesPerSector(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_WriteInProgress(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
};
#else /* C style interface */
typedef struct IWriteEngine2Vtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IWriteEngine2 * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IWriteEngine2 * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IWriteEngine2 * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in IWriteEngine2 * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in IWriteEngine2 * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in IWriteEngine2 * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
IWriteEngine2 * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *WriteSection )(
__RPC__in IWriteEngine2 * This,
/* [in] */ __RPC__in_opt IStream *data,
/* [in] */ LONG startingBlockAddress,
/* [in] */ LONG numberOfBlocks);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CancelWrite )(
__RPC__in IWriteEngine2 * This);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Recorder )(
__RPC__in IWriteEngine2 * This,
/* [in] */ __RPC__in_opt IDiscRecorder2Ex *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Recorder )(
__RPC__in IWriteEngine2 * This,
/* [retval][ref][out] */ __RPC__deref_out_opt IDiscRecorder2Ex **value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_UseStreamingWrite12 )(
__RPC__in IWriteEngine2 * This,
/* [in] */ VARIANT_BOOL value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UseStreamingWrite12 )(
__RPC__in IWriteEngine2 * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StartingSectorsPerSecond )(
__RPC__in IWriteEngine2 * This,
/* [in] */ LONG value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StartingSectorsPerSecond )(
__RPC__in IWriteEngine2 * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_EndingSectorsPerSecond )(
__RPC__in IWriteEngine2 * This,
/* [in] */ LONG value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EndingSectorsPerSecond )(
__RPC__in IWriteEngine2 * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BytesPerSector )(
__RPC__in IWriteEngine2 * This,
/* [in] */ LONG value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BytesPerSector )(
__RPC__in IWriteEngine2 * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_WriteInProgress )(
__RPC__in IWriteEngine2 * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
END_INTERFACE
} IWriteEngine2Vtbl;
interface IWriteEngine2
{
CONST_VTBL struct IWriteEngine2Vtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IWriteEngine2_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IWriteEngine2_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IWriteEngine2_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IWriteEngine2_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define IWriteEngine2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define IWriteEngine2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define IWriteEngine2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define IWriteEngine2_WriteSection(This,data,startingBlockAddress,numberOfBlocks) \
( (This)->lpVtbl -> WriteSection(This,data,startingBlockAddress,numberOfBlocks) )
#define IWriteEngine2_CancelWrite(This) \
( (This)->lpVtbl -> CancelWrite(This) )
#define IWriteEngine2_put_Recorder(This,value) \
( (This)->lpVtbl -> put_Recorder(This,value) )
#define IWriteEngine2_get_Recorder(This,value) \
( (This)->lpVtbl -> get_Recorder(This,value) )
#define IWriteEngine2_put_UseStreamingWrite12(This,value) \
( (This)->lpVtbl -> put_UseStreamingWrite12(This,value) )
#define IWriteEngine2_get_UseStreamingWrite12(This,value) \
( (This)->lpVtbl -> get_UseStreamingWrite12(This,value) )
#define IWriteEngine2_put_StartingSectorsPerSecond(This,value) \
( (This)->lpVtbl -> put_StartingSectorsPerSecond(This,value) )
#define IWriteEngine2_get_StartingSectorsPerSecond(This,value) \
( (This)->lpVtbl -> get_StartingSectorsPerSecond(This,value) )
#define IWriteEngine2_put_EndingSectorsPerSecond(This,value) \
( (This)->lpVtbl -> put_EndingSectorsPerSecond(This,value) )
#define IWriteEngine2_get_EndingSectorsPerSecond(This,value) \
( (This)->lpVtbl -> get_EndingSectorsPerSecond(This,value) )
#define IWriteEngine2_put_BytesPerSector(This,value) \
( (This)->lpVtbl -> put_BytesPerSector(This,value) )
#define IWriteEngine2_get_BytesPerSector(This,value) \
( (This)->lpVtbl -> get_BytesPerSector(This,value) )
#define IWriteEngine2_get_WriteInProgress(This,value) \
( (This)->lpVtbl -> get_WriteInProgress(This,value) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IWriteEngine2_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0005 */
/* [local] */
#define DISPID_IWRITEENGINE2EVENTARGS_STARTLBA 0x100
#define DISPID_IWRITEENGINE2EVENTARGS_SECTORCOUNT 0x101
#define DISPID_IWRITEENGINE2EVENTARGS_LASTREADLBA 0x102
#define DISPID_IWRITEENGINE2EVENTARGS_LASTWRITTENLBA 0x103
#define DISPID_IWRITEENGINE2EVENTARGS_TOTALDEVICEBUFFER 0x104
#define DISPID_IWRITEENGINE2EVENTARGS_USEDDEVICEBUFFER 0x105
#define DISPID_IWRITEENGINE2EVENTARGS_TOTALSYSTEMBUFFER 0x106
#define DISPID_IWRITEENGINE2EVENTARGS_USEDSYSTEMBUFFER 0x107
#define DISPID_IWRITEENGINE2EVENTARGS_FREESYSTEMBUFFER 0x108
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0005_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0005_v0_0_s_ifspec;
#ifndef __IWriteEngine2EventArgs_INTERFACE_DEFINED__
#define __IWriteEngine2EventArgs_INTERFACE_DEFINED__
/* interface IWriteEngine2EventArgs */
/* [helpstring][unique][uuid][dual][nonextensible][object] */
EXTERN_C const IID IID_IWriteEngine2EventArgs;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("27354136-7F64-5B0F-8F00-5D77AFBE261E")
IWriteEngine2EventArgs : public IDispatch
{
public:
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StartLba(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SectorCount(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LastReadLba(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LastWrittenLba(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TotalSystemBuffer(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UsedSystemBuffer(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FreeSystemBuffer(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
};
#else /* C style interface */
typedef struct IWriteEngine2EventArgsVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IWriteEngine2EventArgs * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IWriteEngine2EventArgs * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IWriteEngine2EventArgs * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in IWriteEngine2EventArgs * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in IWriteEngine2EventArgs * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in IWriteEngine2EventArgs * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
IWriteEngine2EventArgs * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StartLba )(
__RPC__in IWriteEngine2EventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SectorCount )(
__RPC__in IWriteEngine2EventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastReadLba )(
__RPC__in IWriteEngine2EventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastWrittenLba )(
__RPC__in IWriteEngine2EventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TotalSystemBuffer )(
__RPC__in IWriteEngine2EventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UsedSystemBuffer )(
__RPC__in IWriteEngine2EventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FreeSystemBuffer )(
__RPC__in IWriteEngine2EventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
END_INTERFACE
} IWriteEngine2EventArgsVtbl;
interface IWriteEngine2EventArgs
{
CONST_VTBL struct IWriteEngine2EventArgsVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IWriteEngine2EventArgs_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IWriteEngine2EventArgs_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IWriteEngine2EventArgs_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IWriteEngine2EventArgs_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define IWriteEngine2EventArgs_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define IWriteEngine2EventArgs_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define IWriteEngine2EventArgs_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define IWriteEngine2EventArgs_get_StartLba(This,value) \
( (This)->lpVtbl -> get_StartLba(This,value) )
#define IWriteEngine2EventArgs_get_SectorCount(This,value) \
( (This)->lpVtbl -> get_SectorCount(This,value) )
#define IWriteEngine2EventArgs_get_LastReadLba(This,value) \
( (This)->lpVtbl -> get_LastReadLba(This,value) )
#define IWriteEngine2EventArgs_get_LastWrittenLba(This,value) \
( (This)->lpVtbl -> get_LastWrittenLba(This,value) )
#define IWriteEngine2EventArgs_get_TotalSystemBuffer(This,value) \
( (This)->lpVtbl -> get_TotalSystemBuffer(This,value) )
#define IWriteEngine2EventArgs_get_UsedSystemBuffer(This,value) \
( (This)->lpVtbl -> get_UsedSystemBuffer(This,value) )
#define IWriteEngine2EventArgs_get_FreeSystemBuffer(This,value) \
( (This)->lpVtbl -> get_FreeSystemBuffer(This,value) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IWriteEngine2EventArgs_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0006 */
/* [local] */
#define DISPID_DWRITEENGINE2EVENTS_UPDATE 0x100
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0006_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0006_v0_0_s_ifspec;
#ifndef __DWriteEngine2Events_INTERFACE_DEFINED__
#define __DWriteEngine2Events_INTERFACE_DEFINED__
/* interface DWriteEngine2Events */
/* [helpstring][unique][uuid][oleautomation][nonextensible][object] */
EXTERN_C const IID IID_DWriteEngine2Events;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("27354137-7F64-5B0F-8F00-5D77AFBE261E")
DWriteEngine2Events : public IDispatch
{
public:
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Update(
/* [in] */ __RPC__in_opt IDispatch *object,
/* [in] */ __RPC__in_opt IDispatch *progress) = 0;
};
#else /* C style interface */
typedef struct DWriteEngine2EventsVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in DWriteEngine2Events * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in DWriteEngine2Events * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in DWriteEngine2Events * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in DWriteEngine2Events * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in DWriteEngine2Events * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in DWriteEngine2Events * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
DWriteEngine2Events * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Update )(
__RPC__in DWriteEngine2Events * This,
/* [in] */ __RPC__in_opt IDispatch *object,
/* [in] */ __RPC__in_opt IDispatch *progress);
END_INTERFACE
} DWriteEngine2EventsVtbl;
interface DWriteEngine2Events
{
CONST_VTBL struct DWriteEngine2EventsVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define DWriteEngine2Events_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define DWriteEngine2Events_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define DWriteEngine2Events_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define DWriteEngine2Events_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define DWriteEngine2Events_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define DWriteEngine2Events_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define DWriteEngine2Events_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define DWriteEngine2Events_Update(This,object,progress) \
( (This)->lpVtbl -> Update(This,object,progress) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __DWriteEngine2Events_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0007 */
/* [local] */
#define DISPID_IDISCFORMAT2_RECORDERSUPPORTED 0x800
#define DISPID_IDISCFORMAT2_MEDIASUPPORTED 0x801
#define DISPID_IDISCFORMAT2_MEDIAPHYSICALLYBLANK 0x700
#define DISPID_IDISCFORMAT2_MEDIAHEURISTICALLYBLANK 0x701
#define DISPID_IDISCFORMAT2_SUPPORTEDMEDIATYPES 0x702
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0007_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0007_v0_0_s_ifspec;
#ifndef __IDiscFormat2_INTERFACE_DEFINED__
#define __IDiscFormat2_INTERFACE_DEFINED__
/* interface IDiscFormat2 */
/* [helpstring][unique][uuid][dual][nonextensible][object] */
EXTERN_C const IID IID_IDiscFormat2;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("27354152-8F64-5B0F-8F00-5D77AFBE261E")
IDiscFormat2 : public IDispatch
{
public:
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IsRecorderSupported(
/* [in] */ __RPC__in_opt IDiscRecorder2 *recorder,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IsCurrentMediaSupported(
/* [in] */ __RPC__in_opt IDiscRecorder2 *recorder,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MediaPhysicallyBlank(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MediaHeuristicallyBlank(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SupportedMediaTypes(
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value) = 0;
};
#else /* C style interface */
typedef struct IDiscFormat2Vtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IDiscFormat2 * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IDiscFormat2 * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IDiscFormat2 * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in IDiscFormat2 * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in IDiscFormat2 * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in IDiscFormat2 * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
IDiscFormat2 * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *IsRecorderSupported )(
__RPC__in IDiscFormat2 * This,
/* [in] */ __RPC__in_opt IDiscRecorder2 *recorder,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *IsCurrentMediaSupported )(
__RPC__in IDiscFormat2 * This,
/* [in] */ __RPC__in_opt IDiscRecorder2 *recorder,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaPhysicallyBlank )(
__RPC__in IDiscFormat2 * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaHeuristicallyBlank )(
__RPC__in IDiscFormat2 * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SupportedMediaTypes )(
__RPC__in IDiscFormat2 * This,
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value);
END_INTERFACE
} IDiscFormat2Vtbl;
interface IDiscFormat2
{
CONST_VTBL struct IDiscFormat2Vtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDiscFormat2_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDiscFormat2_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDiscFormat2_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDiscFormat2_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define IDiscFormat2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define IDiscFormat2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define IDiscFormat2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define IDiscFormat2_IsRecorderSupported(This,recorder,value) \
( (This)->lpVtbl -> IsRecorderSupported(This,recorder,value) )
#define IDiscFormat2_IsCurrentMediaSupported(This,recorder,value) \
( (This)->lpVtbl -> IsCurrentMediaSupported(This,recorder,value) )
#define IDiscFormat2_get_MediaPhysicallyBlank(This,value) \
( (This)->lpVtbl -> get_MediaPhysicallyBlank(This,value) )
#define IDiscFormat2_get_MediaHeuristicallyBlank(This,value) \
( (This)->lpVtbl -> get_MediaHeuristicallyBlank(This,value) )
#define IDiscFormat2_get_SupportedMediaTypes(This,value) \
( (This)->lpVtbl -> get_SupportedMediaTypes(This,value) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDiscFormat2_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0008 */
/* [local] */
#define DISPID_IDISCFORMAT2ERASE_RECORDER 0x100
#define DISPID_IDISCFORMAT2ERASE_FULLERASE 0x101
#define DISPID_IDISCFORMAT2ERASE_MEDIATYPE 0x102
#define DISPID_IDISCFORMAT2ERASE_CLIENTNAME 0x103
#define DISPID_IDISCFORMAT2ERASE_ERASEMEDIA 0x201
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0008_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0008_v0_0_s_ifspec;
#ifndef __IDiscFormat2Erase_INTERFACE_DEFINED__
#define __IDiscFormat2Erase_INTERFACE_DEFINED__
/* interface IDiscFormat2Erase */
/* [helpstring][unique][uuid][dual][nonextensible][object] */
EXTERN_C const IID IID_IDiscFormat2Erase;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("27354156-8F64-5B0F-8F00-5D77AFBE261E")
IDiscFormat2Erase : public IDiscFormat2
{
public:
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Recorder(
/* [in] */ __RPC__in_opt IDiscRecorder2 *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Recorder(
/* [retval][ref][out] */ __RPC__deref_out_opt IDiscRecorder2 **value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FullErase(
/* [in] */ VARIANT_BOOL value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FullErase(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentPhysicalMediaType(
/* [retval][ref][out] */ __RPC__out IMAPI_MEDIA_PHYSICAL_TYPE *value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ClientName(
/* [in] */ __RPC__in BSTR value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ClientName(
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE EraseMedia( void) = 0;
};
#else /* C style interface */
typedef struct IDiscFormat2EraseVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IDiscFormat2Erase * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IDiscFormat2Erase * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IDiscFormat2Erase * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in IDiscFormat2Erase * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in IDiscFormat2Erase * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in IDiscFormat2Erase * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
IDiscFormat2Erase * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *IsRecorderSupported )(
__RPC__in IDiscFormat2Erase * This,
/* [in] */ __RPC__in_opt IDiscRecorder2 *recorder,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *IsCurrentMediaSupported )(
__RPC__in IDiscFormat2Erase * This,
/* [in] */ __RPC__in_opt IDiscRecorder2 *recorder,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaPhysicallyBlank )(
__RPC__in IDiscFormat2Erase * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaHeuristicallyBlank )(
__RPC__in IDiscFormat2Erase * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SupportedMediaTypes )(
__RPC__in IDiscFormat2Erase * This,
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Recorder )(
__RPC__in IDiscFormat2Erase * This,
/* [in] */ __RPC__in_opt IDiscRecorder2 *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Recorder )(
__RPC__in IDiscFormat2Erase * This,
/* [retval][ref][out] */ __RPC__deref_out_opt IDiscRecorder2 **value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_FullErase )(
__RPC__in IDiscFormat2Erase * This,
/* [in] */ VARIANT_BOOL value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FullErase )(
__RPC__in IDiscFormat2Erase * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentPhysicalMediaType )(
__RPC__in IDiscFormat2Erase * This,
/* [retval][ref][out] */ __RPC__out IMAPI_MEDIA_PHYSICAL_TYPE *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ClientName )(
__RPC__in IDiscFormat2Erase * This,
/* [in] */ __RPC__in BSTR value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClientName )(
__RPC__in IDiscFormat2Erase * This,
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *EraseMedia )(
__RPC__in IDiscFormat2Erase * This);
END_INTERFACE
} IDiscFormat2EraseVtbl;
interface IDiscFormat2Erase
{
CONST_VTBL struct IDiscFormat2EraseVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDiscFormat2Erase_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDiscFormat2Erase_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDiscFormat2Erase_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDiscFormat2Erase_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define IDiscFormat2Erase_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define IDiscFormat2Erase_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define IDiscFormat2Erase_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define IDiscFormat2Erase_IsRecorderSupported(This,recorder,value) \
( (This)->lpVtbl -> IsRecorderSupported(This,recorder,value) )
#define IDiscFormat2Erase_IsCurrentMediaSupported(This,recorder,value) \
( (This)->lpVtbl -> IsCurrentMediaSupported(This,recorder,value) )
#define IDiscFormat2Erase_get_MediaPhysicallyBlank(This,value) \
( (This)->lpVtbl -> get_MediaPhysicallyBlank(This,value) )
#define IDiscFormat2Erase_get_MediaHeuristicallyBlank(This,value) \
( (This)->lpVtbl -> get_MediaHeuristicallyBlank(This,value) )
#define IDiscFormat2Erase_get_SupportedMediaTypes(This,value) \
( (This)->lpVtbl -> get_SupportedMediaTypes(This,value) )
#define IDiscFormat2Erase_put_Recorder(This,value) \
( (This)->lpVtbl -> put_Recorder(This,value) )
#define IDiscFormat2Erase_get_Recorder(This,value) \
( (This)->lpVtbl -> get_Recorder(This,value) )
#define IDiscFormat2Erase_put_FullErase(This,value) \
( (This)->lpVtbl -> put_FullErase(This,value) )
#define IDiscFormat2Erase_get_FullErase(This,value) \
( (This)->lpVtbl -> get_FullErase(This,value) )
#define IDiscFormat2Erase_get_CurrentPhysicalMediaType(This,value) \
( (This)->lpVtbl -> get_CurrentPhysicalMediaType(This,value) )
#define IDiscFormat2Erase_put_ClientName(This,value) \
( (This)->lpVtbl -> put_ClientName(This,value) )
#define IDiscFormat2Erase_get_ClientName(This,value) \
( (This)->lpVtbl -> get_ClientName(This,value) )
#define IDiscFormat2Erase_EraseMedia(This) \
( (This)->lpVtbl -> EraseMedia(This) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDiscFormat2Erase_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0009 */
/* [local] */
#define DISPID_IDISCFORMAT2ERASEEVENTS_UPDATE 0x200
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0009_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0009_v0_0_s_ifspec;
#ifndef __DDiscFormat2EraseEvents_INTERFACE_DEFINED__
#define __DDiscFormat2EraseEvents_INTERFACE_DEFINED__
/* interface DDiscFormat2EraseEvents */
/* [helpstring][unique][uuid][oleautomation][nonextensible][object] */
EXTERN_C const IID IID_DDiscFormat2EraseEvents;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("2735413A-7F64-5B0F-8F00-5D77AFBE261E")
DDiscFormat2EraseEvents : public IDispatch
{
public:
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Update(
/* [in] */ __RPC__in_opt IDispatch *object,
/* [in] */ LONG elapsedSeconds,
/* [in] */ LONG estimatedTotalSeconds) = 0;
};
#else /* C style interface */
typedef struct DDiscFormat2EraseEventsVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in DDiscFormat2EraseEvents * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in DDiscFormat2EraseEvents * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in DDiscFormat2EraseEvents * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in DDiscFormat2EraseEvents * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in DDiscFormat2EraseEvents * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in DDiscFormat2EraseEvents * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
DDiscFormat2EraseEvents * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Update )(
__RPC__in DDiscFormat2EraseEvents * This,
/* [in] */ __RPC__in_opt IDispatch *object,
/* [in] */ LONG elapsedSeconds,
/* [in] */ LONG estimatedTotalSeconds);
END_INTERFACE
} DDiscFormat2EraseEventsVtbl;
interface DDiscFormat2EraseEvents
{
CONST_VTBL struct DDiscFormat2EraseEventsVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define DDiscFormat2EraseEvents_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define DDiscFormat2EraseEvents_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define DDiscFormat2EraseEvents_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define DDiscFormat2EraseEvents_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define DDiscFormat2EraseEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define DDiscFormat2EraseEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define DDiscFormat2EraseEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define DDiscFormat2EraseEvents_Update(This,object,elapsedSeconds,estimatedTotalSeconds) \
( (This)->lpVtbl -> Update(This,object,elapsedSeconds,estimatedTotalSeconds) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __DDiscFormat2EraseEvents_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0010 */
/* [local] */
#define DISPID_IDISCFORMAT2DATA_RECORDER 0x100
#define DISPID_IDISCFORMAT2DATA_BUFFERUNDERRUNFREEDISABLED 0x101
#define DISPID_IDISCFORMAT2DATA_POSTGAPALREADYINIMAGE 0x104
#define DISPID_IDISCFORMAT2DATA_CURRENTMEDIASTATUS 0x106
#define DISPID_IDISCFORMAT2DATA_WRITEPROTECTSTATUS 0x107
#define DISPID_IDISCFORMAT2DATA_TOTALSECTORS 0x108
#define DISPID_IDISCFORMAT2DATA_FREESECTORS 0x109
#define DISPID_IDISCFORMAT2DATA_NEXTWRITABLEADDRESS 0x10A
#define DISPID_IDISCFORMAT2DATA_STARTSECTOROFPREVIOUSSESSION 0x10B
#define DISPID_IDISCFORMAT2DATA_LASTSECTOROFPREVIOUSSESSION 0x10C
#define DISPID_IDISCFORMAT2DATA_FORCEMEDIATOBECLOSED 0x10D
#define DISPID_IDISCFORMAT2DATA_DISABLEDVDCOMPATIBILITYMODE 0x10E
#define DISPID_IDISCFORMAT2DATA_CURRENTMEDIATYPE 0x10F
#define DISPID_IDISCFORMAT2DATA_CLIENTNAME 0x110
#define DISPID_IDISCFORMAT2DATA_REQUESTEDWRITESPEED 0x111
#define DISPID_IDISCFORMAT2DATA_REQUESTEDROTATIONTYPEISPURECAV 0x112
#define DISPID_IDISCFORMAT2DATA_CURRENTWRITESPEED 0x113
#define DISPID_IDISCFORMAT2DATA_CURRENTROTATIONTYPEISPURECAV 0x114
#define DISPID_IDISCFORMAT2DATA_SUPPORTEDWRITESPEEDS 0x115
#define DISPID_IDISCFORMAT2DATA_SUPPORTEDWRITESPEEDDESCRIPTORS 0x116
#define DISPID_IDISCFORMAT2DATA_FORCEOVERWRITE 0x117
#define DISPID_IDISCFORMAT2DATA_MUTLISESSIONINTERFACES 0x118
#define DISPID_IDISCFORMAT2DATA_WRITE 0x200
#define DISPID_IDISCFORMAT2DATA_CANCELWRITE 0x201
#define DISPID_IDISCFORMAT2DATA_SETWRITESPEED 0x202
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0010_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0010_v0_0_s_ifspec;
#ifndef __IDiscFormat2Data_INTERFACE_DEFINED__
#define __IDiscFormat2Data_INTERFACE_DEFINED__
/* interface IDiscFormat2Data */
/* [helpstring][unique][uuid][dual][nonextensible][object] */
EXTERN_C const IID IID_IDiscFormat2Data;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("27354153-9F64-5B0F-8F00-5D77AFBE261E")
IDiscFormat2Data : public IDiscFormat2
{
public:
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Recorder(
/* [in] */ __RPC__in_opt IDiscRecorder2 *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Recorder(
/* [retval][ref][out] */ __RPC__deref_out_opt IDiscRecorder2 **value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BufferUnderrunFreeDisabled(
/* [in] */ VARIANT_BOOL value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BufferUnderrunFreeDisabled(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PostgapAlreadyInImage(
/* [in] */ VARIANT_BOOL value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PostgapAlreadyInImage(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentMediaStatus(
/* [retval][ref][out] */ __RPC__out IMAPI_FORMAT2_DATA_MEDIA_STATE *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_WriteProtectStatus(
/* [retval][ref][out] */ __RPC__out IMAPI_MEDIA_WRITE_PROTECT_STATE *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TotalSectorsOnMedia(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FreeSectorsOnMedia(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NextWritableAddress(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StartAddressOfPreviousSession(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LastWrittenAddressOfPreviousSession(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ForceMediaToBeClosed(
/* [in] */ VARIANT_BOOL value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ForceMediaToBeClosed(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DisableConsumerDvdCompatibilityMode(
/* [in] */ VARIANT_BOOL value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DisableConsumerDvdCompatibilityMode(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentPhysicalMediaType(
/* [retval][ref][out] */ __RPC__out IMAPI_MEDIA_PHYSICAL_TYPE *value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ClientName(
/* [in] */ __RPC__in BSTR value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ClientName(
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RequestedWriteSpeed(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RequestedRotationTypeIsPureCAV(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentWriteSpeed(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentRotationTypeIsPureCAV(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SupportedWriteSpeeds(
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *supportedSpeeds) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SupportedWriteSpeedDescriptors(
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *supportedSpeedDescriptors) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ForceOverwrite(
/* [in] */ VARIANT_BOOL value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ForceOverwrite(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MultisessionInterfaces(
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Write(
/* [in] */ __RPC__in_opt IStream *data) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE CancelWrite( void) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetWriteSpeed(
/* [in] */ LONG RequestedSectorsPerSecond,
/* [in] */ VARIANT_BOOL RotationTypeIsPureCAV) = 0;
};
#else /* C style interface */
typedef struct IDiscFormat2DataVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IDiscFormat2Data * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IDiscFormat2Data * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IDiscFormat2Data * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in IDiscFormat2Data * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in IDiscFormat2Data * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in IDiscFormat2Data * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
IDiscFormat2Data * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *IsRecorderSupported )(
__RPC__in IDiscFormat2Data * This,
/* [in] */ __RPC__in_opt IDiscRecorder2 *recorder,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *IsCurrentMediaSupported )(
__RPC__in IDiscFormat2Data * This,
/* [in] */ __RPC__in_opt IDiscRecorder2 *recorder,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaPhysicallyBlank )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaHeuristicallyBlank )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SupportedMediaTypes )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Recorder )(
__RPC__in IDiscFormat2Data * This,
/* [in] */ __RPC__in_opt IDiscRecorder2 *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Recorder )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__deref_out_opt IDiscRecorder2 **value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BufferUnderrunFreeDisabled )(
__RPC__in IDiscFormat2Data * This,
/* [in] */ VARIANT_BOOL value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BufferUnderrunFreeDisabled )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PostgapAlreadyInImage )(
__RPC__in IDiscFormat2Data * This,
/* [in] */ VARIANT_BOOL value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PostgapAlreadyInImage )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentMediaStatus )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__out IMAPI_FORMAT2_DATA_MEDIA_STATE *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_WriteProtectStatus )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__out IMAPI_MEDIA_WRITE_PROTECT_STATE *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TotalSectorsOnMedia )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FreeSectorsOnMedia )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_NextWritableAddress )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StartAddressOfPreviousSession )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastWrittenAddressOfPreviousSession )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForceMediaToBeClosed )(
__RPC__in IDiscFormat2Data * This,
/* [in] */ VARIANT_BOOL value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForceMediaToBeClosed )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DisableConsumerDvdCompatibilityMode )(
__RPC__in IDiscFormat2Data * This,
/* [in] */ VARIANT_BOOL value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DisableConsumerDvdCompatibilityMode )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentPhysicalMediaType )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__out IMAPI_MEDIA_PHYSICAL_TYPE *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ClientName )(
__RPC__in IDiscFormat2Data * This,
/* [in] */ __RPC__in BSTR value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClientName )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RequestedWriteSpeed )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RequestedRotationTypeIsPureCAV )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentWriteSpeed )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentRotationTypeIsPureCAV )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SupportedWriteSpeeds )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *supportedSpeeds);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SupportedWriteSpeedDescriptors )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *supportedSpeedDescriptors);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ForceOverwrite )(
__RPC__in IDiscFormat2Data * This,
/* [in] */ VARIANT_BOOL value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ForceOverwrite )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MultisessionInterfaces )(
__RPC__in IDiscFormat2Data * This,
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Write )(
__RPC__in IDiscFormat2Data * This,
/* [in] */ __RPC__in_opt IStream *data);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CancelWrite )(
__RPC__in IDiscFormat2Data * This);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetWriteSpeed )(
__RPC__in IDiscFormat2Data * This,
/* [in] */ LONG RequestedSectorsPerSecond,
/* [in] */ VARIANT_BOOL RotationTypeIsPureCAV);
END_INTERFACE
} IDiscFormat2DataVtbl;
interface IDiscFormat2Data
{
CONST_VTBL struct IDiscFormat2DataVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDiscFormat2Data_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDiscFormat2Data_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDiscFormat2Data_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDiscFormat2Data_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define IDiscFormat2Data_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define IDiscFormat2Data_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define IDiscFormat2Data_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define IDiscFormat2Data_IsRecorderSupported(This,recorder,value) \
( (This)->lpVtbl -> IsRecorderSupported(This,recorder,value) )
#define IDiscFormat2Data_IsCurrentMediaSupported(This,recorder,value) \
( (This)->lpVtbl -> IsCurrentMediaSupported(This,recorder,value) )
#define IDiscFormat2Data_get_MediaPhysicallyBlank(This,value) \
( (This)->lpVtbl -> get_MediaPhysicallyBlank(This,value) )
#define IDiscFormat2Data_get_MediaHeuristicallyBlank(This,value) \
( (This)->lpVtbl -> get_MediaHeuristicallyBlank(This,value) )
#define IDiscFormat2Data_get_SupportedMediaTypes(This,value) \
( (This)->lpVtbl -> get_SupportedMediaTypes(This,value) )
#define IDiscFormat2Data_put_Recorder(This,value) \
( (This)->lpVtbl -> put_Recorder(This,value) )
#define IDiscFormat2Data_get_Recorder(This,value) \
( (This)->lpVtbl -> get_Recorder(This,value) )
#define IDiscFormat2Data_put_BufferUnderrunFreeDisabled(This,value) \
( (This)->lpVtbl -> put_BufferUnderrunFreeDisabled(This,value) )
#define IDiscFormat2Data_get_BufferUnderrunFreeDisabled(This,value) \
( (This)->lpVtbl -> get_BufferUnderrunFreeDisabled(This,value) )
#define IDiscFormat2Data_put_PostgapAlreadyInImage(This,value) \
( (This)->lpVtbl -> put_PostgapAlreadyInImage(This,value) )
#define IDiscFormat2Data_get_PostgapAlreadyInImage(This,value) \
( (This)->lpVtbl -> get_PostgapAlreadyInImage(This,value) )
#define IDiscFormat2Data_get_CurrentMediaStatus(This,value) \
( (This)->lpVtbl -> get_CurrentMediaStatus(This,value) )
#define IDiscFormat2Data_get_WriteProtectStatus(This,value) \
( (This)->lpVtbl -> get_WriteProtectStatus(This,value) )
#define IDiscFormat2Data_get_TotalSectorsOnMedia(This,value) \
( (This)->lpVtbl -> get_TotalSectorsOnMedia(This,value) )
#define IDiscFormat2Data_get_FreeSectorsOnMedia(This,value) \
( (This)->lpVtbl -> get_FreeSectorsOnMedia(This,value) )
#define IDiscFormat2Data_get_NextWritableAddress(This,value) \
( (This)->lpVtbl -> get_NextWritableAddress(This,value) )
#define IDiscFormat2Data_get_StartAddressOfPreviousSession(This,value) \
( (This)->lpVtbl -> get_StartAddressOfPreviousSession(This,value) )
#define IDiscFormat2Data_get_LastWrittenAddressOfPreviousSession(This,value) \
( (This)->lpVtbl -> get_LastWrittenAddressOfPreviousSession(This,value) )
#define IDiscFormat2Data_put_ForceMediaToBeClosed(This,value) \
( (This)->lpVtbl -> put_ForceMediaToBeClosed(This,value) )
#define IDiscFormat2Data_get_ForceMediaToBeClosed(This,value) \
( (This)->lpVtbl -> get_ForceMediaToBeClosed(This,value) )
#define IDiscFormat2Data_put_DisableConsumerDvdCompatibilityMode(This,value) \
( (This)->lpVtbl -> put_DisableConsumerDvdCompatibilityMode(This,value) )
#define IDiscFormat2Data_get_DisableConsumerDvdCompatibilityMode(This,value) \
( (This)->lpVtbl -> get_DisableConsumerDvdCompatibilityMode(This,value) )
#define IDiscFormat2Data_get_CurrentPhysicalMediaType(This,value) \
( (This)->lpVtbl -> get_CurrentPhysicalMediaType(This,value) )
#define IDiscFormat2Data_put_ClientName(This,value) \
( (This)->lpVtbl -> put_ClientName(This,value) )
#define IDiscFormat2Data_get_ClientName(This,value) \
( (This)->lpVtbl -> get_ClientName(This,value) )
#define IDiscFormat2Data_get_RequestedWriteSpeed(This,value) \
( (This)->lpVtbl -> get_RequestedWriteSpeed(This,value) )
#define IDiscFormat2Data_get_RequestedRotationTypeIsPureCAV(This,value) \
( (This)->lpVtbl -> get_RequestedRotationTypeIsPureCAV(This,value) )
#define IDiscFormat2Data_get_CurrentWriteSpeed(This,value) \
( (This)->lpVtbl -> get_CurrentWriteSpeed(This,value) )
#define IDiscFormat2Data_get_CurrentRotationTypeIsPureCAV(This,value) \
( (This)->lpVtbl -> get_CurrentRotationTypeIsPureCAV(This,value) )
#define IDiscFormat2Data_get_SupportedWriteSpeeds(This,supportedSpeeds) \
( (This)->lpVtbl -> get_SupportedWriteSpeeds(This,supportedSpeeds) )
#define IDiscFormat2Data_get_SupportedWriteSpeedDescriptors(This,supportedSpeedDescriptors) \
( (This)->lpVtbl -> get_SupportedWriteSpeedDescriptors(This,supportedSpeedDescriptors) )
#define IDiscFormat2Data_put_ForceOverwrite(This,value) \
( (This)->lpVtbl -> put_ForceOverwrite(This,value) )
#define IDiscFormat2Data_get_ForceOverwrite(This,value) \
( (This)->lpVtbl -> get_ForceOverwrite(This,value) )
#define IDiscFormat2Data_get_MultisessionInterfaces(This,value) \
( (This)->lpVtbl -> get_MultisessionInterfaces(This,value) )
#define IDiscFormat2Data_Write(This,data) \
( (This)->lpVtbl -> Write(This,data) )
#define IDiscFormat2Data_CancelWrite(This) \
( (This)->lpVtbl -> CancelWrite(This) )
#define IDiscFormat2Data_SetWriteSpeed(This,RequestedSectorsPerSecond,RotationTypeIsPureCAV) \
( (This)->lpVtbl -> SetWriteSpeed(This,RequestedSectorsPerSecond,RotationTypeIsPureCAV) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDiscFormat2Data_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0011 */
/* [local] */
#define DISPID_DDISCFORMAT2DATAEVENTS_UPDATE 0x200
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0011_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0011_v0_0_s_ifspec;
#ifndef __DDiscFormat2DataEvents_INTERFACE_DEFINED__
#define __DDiscFormat2DataEvents_INTERFACE_DEFINED__
/* interface DDiscFormat2DataEvents */
/* [helpstring][unique][uuid][oleautomation][nonextensible][object] */
EXTERN_C const IID IID_DDiscFormat2DataEvents;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("2735413C-7F64-5B0F-8F00-5D77AFBE261E")
DDiscFormat2DataEvents : public IDispatch
{
public:
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Update(
/* [in] */ __RPC__in_opt IDispatch *object,
/* [in] */ __RPC__in_opt IDispatch *progress) = 0;
};
#else /* C style interface */
typedef struct DDiscFormat2DataEventsVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in DDiscFormat2DataEvents * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in DDiscFormat2DataEvents * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in DDiscFormat2DataEvents * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in DDiscFormat2DataEvents * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in DDiscFormat2DataEvents * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in DDiscFormat2DataEvents * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
DDiscFormat2DataEvents * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Update )(
__RPC__in DDiscFormat2DataEvents * This,
/* [in] */ __RPC__in_opt IDispatch *object,
/* [in] */ __RPC__in_opt IDispatch *progress);
END_INTERFACE
} DDiscFormat2DataEventsVtbl;
interface DDiscFormat2DataEvents
{
CONST_VTBL struct DDiscFormat2DataEventsVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define DDiscFormat2DataEvents_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define DDiscFormat2DataEvents_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define DDiscFormat2DataEvents_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define DDiscFormat2DataEvents_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define DDiscFormat2DataEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define DDiscFormat2DataEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define DDiscFormat2DataEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define DDiscFormat2DataEvents_Update(This,object,progress) \
( (This)->lpVtbl -> Update(This,object,progress) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __DDiscFormat2DataEvents_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0012 */
/* [local] */
#define DISPID_IDISCFORMAT2DATAEVENTARGS_ELAPSEDTIME 0x300
#define DISPID_IDISCFORMAT2DATAEVENTARGS_ESTIMATEDREMAININGTIME 0x301
#define DISPID_IDISCFORMAT2DATAEVENTARGS_ESTIMATEDTOTALTIME 0x302
#define DISPID_IDISCFORMAT2DATAEVENTARGS_CURRENTACTION 0x303
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0012_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0012_v0_0_s_ifspec;
#ifndef __IDiscFormat2DataEventArgs_INTERFACE_DEFINED__
#define __IDiscFormat2DataEventArgs_INTERFACE_DEFINED__
/* interface IDiscFormat2DataEventArgs */
/* [helpstring][unique][uuid][dual][nonextensible][object] */
EXTERN_C const IID IID_IDiscFormat2DataEventArgs;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("2735413D-7F64-5B0F-8F00-5D77AFBE261E")
IDiscFormat2DataEventArgs : public IWriteEngine2EventArgs
{
public:
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ElapsedTime(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RemainingTime(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TotalTime(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentAction(
/* [retval][ref][out] */ __RPC__out IMAPI_FORMAT2_DATA_WRITE_ACTION *value) = 0;
};
#else /* C style interface */
typedef struct IDiscFormat2DataEventArgsVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IDiscFormat2DataEventArgs * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IDiscFormat2DataEventArgs * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IDiscFormat2DataEventArgs * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in IDiscFormat2DataEventArgs * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in IDiscFormat2DataEventArgs * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in IDiscFormat2DataEventArgs * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
IDiscFormat2DataEventArgs * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StartLba )(
__RPC__in IDiscFormat2DataEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SectorCount )(
__RPC__in IDiscFormat2DataEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastReadLba )(
__RPC__in IDiscFormat2DataEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastWrittenLba )(
__RPC__in IDiscFormat2DataEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TotalSystemBuffer )(
__RPC__in IDiscFormat2DataEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UsedSystemBuffer )(
__RPC__in IDiscFormat2DataEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FreeSystemBuffer )(
__RPC__in IDiscFormat2DataEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ElapsedTime )(
__RPC__in IDiscFormat2DataEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RemainingTime )(
__RPC__in IDiscFormat2DataEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TotalTime )(
__RPC__in IDiscFormat2DataEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentAction )(
__RPC__in IDiscFormat2DataEventArgs * This,
/* [retval][ref][out] */ __RPC__out IMAPI_FORMAT2_DATA_WRITE_ACTION *value);
END_INTERFACE
} IDiscFormat2DataEventArgsVtbl;
interface IDiscFormat2DataEventArgs
{
CONST_VTBL struct IDiscFormat2DataEventArgsVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDiscFormat2DataEventArgs_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDiscFormat2DataEventArgs_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDiscFormat2DataEventArgs_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDiscFormat2DataEventArgs_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define IDiscFormat2DataEventArgs_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define IDiscFormat2DataEventArgs_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define IDiscFormat2DataEventArgs_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define IDiscFormat2DataEventArgs_get_StartLba(This,value) \
( (This)->lpVtbl -> get_StartLba(This,value) )
#define IDiscFormat2DataEventArgs_get_SectorCount(This,value) \
( (This)->lpVtbl -> get_SectorCount(This,value) )
#define IDiscFormat2DataEventArgs_get_LastReadLba(This,value) \
( (This)->lpVtbl -> get_LastReadLba(This,value) )
#define IDiscFormat2DataEventArgs_get_LastWrittenLba(This,value) \
( (This)->lpVtbl -> get_LastWrittenLba(This,value) )
#define IDiscFormat2DataEventArgs_get_TotalSystemBuffer(This,value) \
( (This)->lpVtbl -> get_TotalSystemBuffer(This,value) )
#define IDiscFormat2DataEventArgs_get_UsedSystemBuffer(This,value) \
( (This)->lpVtbl -> get_UsedSystemBuffer(This,value) )
#define IDiscFormat2DataEventArgs_get_FreeSystemBuffer(This,value) \
( (This)->lpVtbl -> get_FreeSystemBuffer(This,value) )
#define IDiscFormat2DataEventArgs_get_ElapsedTime(This,value) \
( (This)->lpVtbl -> get_ElapsedTime(This,value) )
#define IDiscFormat2DataEventArgs_get_RemainingTime(This,value) \
( (This)->lpVtbl -> get_RemainingTime(This,value) )
#define IDiscFormat2DataEventArgs_get_TotalTime(This,value) \
( (This)->lpVtbl -> get_TotalTime(This,value) )
#define IDiscFormat2DataEventArgs_get_CurrentAction(This,value) \
( (This)->lpVtbl -> get_CurrentAction(This,value) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDiscFormat2DataEventArgs_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0013 */
/* [local] */
#define DISPID_IDISCFORMAT2TAO_RECORDER 0x100
#define DISPID_IDISCFORMAT2TAO_BUFFERUNDERRUNFREEDISABLED 0x102
#define DISPID_IDISCFORMAT2TAO_NUMBEROFEXISTINGTRACKS 0x103
#define DISPID_IDISCFORMAT2TAO_TOTALSECTORSONMEDIA 0x104
#define DISPID_IDISCFORMAT2TAO_FREESECTORSONMEDIA 0x105
#define DISPID_IDISCFORMAT2TAO_USEDSECTORSONMEDIA 0x106
#define DISPID_IDISCFORMAT2TAO_DONOTFINALIZEMEDIA 0x107
#define DISPID_IDISCFORMAT2TAO_EXPECTEDTABLEOFCONTENTS 0x10A
#define DISPID_IDISCFORMAT2TAO_CURRENTMEDIATYPE 0x10B
#define DISPID_IDISCFORMAT2TAO_CLIENTNAME 0x10E
#define DISPID_IDISCFORMAT2TAO_REQUESTEDWRITESPEED 0x10F
#define DISPID_IDISCFORMAT2TAO_REQUESTEDROTATIONTYPEISPURECAV 0x110
#define DISPID_IDISCFORMAT2TAO_CURRENTWRITESPEED 0x111
#define DISPID_IDISCFORMAT2TAO_CURRENTROTATIONTYPEISPURECAV 0x112
#define DISPID_IDISCFORMAT2TAO_SUPPORTEDWRITESPEEDS 0x113
#define DISPID_IDISCFORMAT2TAO_SUPPORTEDWRITESPEEDDESCRIPTORS 0x114
#define DISPID_IDISCFORMAT2TAO_PREPAREMEDIA 0x200
#define DISPID_IDISCFORMAT2TAO_ADDAUDIOTRACK 0x201
#define DISPID_IDISCFORMAT2TAO_CANCELADDTRACK 0x202
#define DISPID_IDISCFORMAT2TAO_FINISHMEDIA 0x203
#define DISPID_IDISCFORMAT2TAO_SETWRITESPEED 0x204
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0013_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0013_v0_0_s_ifspec;
#ifndef __IDiscFormat2TrackAtOnce_INTERFACE_DEFINED__
#define __IDiscFormat2TrackAtOnce_INTERFACE_DEFINED__
/* interface IDiscFormat2TrackAtOnce */
/* [helpstring][unique][uuid][dual][nonextensible][object] */
EXTERN_C const IID IID_IDiscFormat2TrackAtOnce;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("27354154-8F64-5B0F-8F00-5D77AFBE261E")
IDiscFormat2TrackAtOnce : public IDiscFormat2
{
public:
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE PrepareMedia( void) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddAudioTrack(
/* [in] */ __RPC__in_opt IStream *data) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE CancelAddTrack( void) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ReleaseMedia( void) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetWriteSpeed(
/* [in] */ LONG RequestedSectorsPerSecond,
/* [in] */ VARIANT_BOOL RotationTypeIsPureCAV) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Recorder(
/* [in] */ __RPC__in_opt IDiscRecorder2 *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Recorder(
/* [retval][ref][out] */ __RPC__deref_out_opt IDiscRecorder2 **value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BufferUnderrunFreeDisabled(
/* [in] */ VARIANT_BOOL value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BufferUnderrunFreeDisabled(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NumberOfExistingTracks(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TotalSectorsOnMedia(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FreeSectorsOnMedia(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UsedSectorsOnMedia(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DoNotFinalizeMedia(
/* [in] */ VARIANT_BOOL value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DoNotFinalizeMedia(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExpectedTableOfContents(
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentPhysicalMediaType(
/* [retval][ref][out] */ __RPC__out IMAPI_MEDIA_PHYSICAL_TYPE *value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ClientName(
/* [in] */ __RPC__in BSTR value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ClientName(
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RequestedWriteSpeed(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RequestedRotationTypeIsPureCAV(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentWriteSpeed(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentRotationTypeIsPureCAV(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SupportedWriteSpeeds(
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *supportedSpeeds) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SupportedWriteSpeedDescriptors(
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *supportedSpeedDescriptors) = 0;
};
#else /* C style interface */
typedef struct IDiscFormat2TrackAtOnceVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IDiscFormat2TrackAtOnce * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IDiscFormat2TrackAtOnce * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
IDiscFormat2TrackAtOnce * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *IsRecorderSupported )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [in] */ __RPC__in_opt IDiscRecorder2 *recorder,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *IsCurrentMediaSupported )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [in] */ __RPC__in_opt IDiscRecorder2 *recorder,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaPhysicallyBlank )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaHeuristicallyBlank )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SupportedMediaTypes )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *PrepareMedia )(
__RPC__in IDiscFormat2TrackAtOnce * This);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddAudioTrack )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [in] */ __RPC__in_opt IStream *data);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CancelAddTrack )(
__RPC__in IDiscFormat2TrackAtOnce * This);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ReleaseMedia )(
__RPC__in IDiscFormat2TrackAtOnce * This);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetWriteSpeed )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [in] */ LONG RequestedSectorsPerSecond,
/* [in] */ VARIANT_BOOL RotationTypeIsPureCAV);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Recorder )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [in] */ __RPC__in_opt IDiscRecorder2 *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Recorder )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [retval][ref][out] */ __RPC__deref_out_opt IDiscRecorder2 **value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BufferUnderrunFreeDisabled )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [in] */ VARIANT_BOOL value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BufferUnderrunFreeDisabled )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_NumberOfExistingTracks )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TotalSectorsOnMedia )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FreeSectorsOnMedia )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UsedSectorsOnMedia )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DoNotFinalizeMedia )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [in] */ VARIANT_BOOL value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DoNotFinalizeMedia )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExpectedTableOfContents )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentPhysicalMediaType )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [retval][ref][out] */ __RPC__out IMAPI_MEDIA_PHYSICAL_TYPE *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ClientName )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [in] */ __RPC__in BSTR value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClientName )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RequestedWriteSpeed )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RequestedRotationTypeIsPureCAV )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentWriteSpeed )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentRotationTypeIsPureCAV )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SupportedWriteSpeeds )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *supportedSpeeds);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SupportedWriteSpeedDescriptors )(
__RPC__in IDiscFormat2TrackAtOnce * This,
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *supportedSpeedDescriptors);
END_INTERFACE
} IDiscFormat2TrackAtOnceVtbl;
interface IDiscFormat2TrackAtOnce
{
CONST_VTBL struct IDiscFormat2TrackAtOnceVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDiscFormat2TrackAtOnce_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDiscFormat2TrackAtOnce_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDiscFormat2TrackAtOnce_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDiscFormat2TrackAtOnce_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define IDiscFormat2TrackAtOnce_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define IDiscFormat2TrackAtOnce_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define IDiscFormat2TrackAtOnce_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define IDiscFormat2TrackAtOnce_IsRecorderSupported(This,recorder,value) \
( (This)->lpVtbl -> IsRecorderSupported(This,recorder,value) )
#define IDiscFormat2TrackAtOnce_IsCurrentMediaSupported(This,recorder,value) \
( (This)->lpVtbl -> IsCurrentMediaSupported(This,recorder,value) )
#define IDiscFormat2TrackAtOnce_get_MediaPhysicallyBlank(This,value) \
( (This)->lpVtbl -> get_MediaPhysicallyBlank(This,value) )
#define IDiscFormat2TrackAtOnce_get_MediaHeuristicallyBlank(This,value) \
( (This)->lpVtbl -> get_MediaHeuristicallyBlank(This,value) )
#define IDiscFormat2TrackAtOnce_get_SupportedMediaTypes(This,value) \
( (This)->lpVtbl -> get_SupportedMediaTypes(This,value) )
#define IDiscFormat2TrackAtOnce_PrepareMedia(This) \
( (This)->lpVtbl -> PrepareMedia(This) )
#define IDiscFormat2TrackAtOnce_AddAudioTrack(This,data) \
( (This)->lpVtbl -> AddAudioTrack(This,data) )
#define IDiscFormat2TrackAtOnce_CancelAddTrack(This) \
( (This)->lpVtbl -> CancelAddTrack(This) )
#define IDiscFormat2TrackAtOnce_ReleaseMedia(This) \
( (This)->lpVtbl -> ReleaseMedia(This) )
#define IDiscFormat2TrackAtOnce_SetWriteSpeed(This,RequestedSectorsPerSecond,RotationTypeIsPureCAV) \
( (This)->lpVtbl -> SetWriteSpeed(This,RequestedSectorsPerSecond,RotationTypeIsPureCAV) )
#define IDiscFormat2TrackAtOnce_put_Recorder(This,value) \
( (This)->lpVtbl -> put_Recorder(This,value) )
#define IDiscFormat2TrackAtOnce_get_Recorder(This,value) \
( (This)->lpVtbl -> get_Recorder(This,value) )
#define IDiscFormat2TrackAtOnce_put_BufferUnderrunFreeDisabled(This,value) \
( (This)->lpVtbl -> put_BufferUnderrunFreeDisabled(This,value) )
#define IDiscFormat2TrackAtOnce_get_BufferUnderrunFreeDisabled(This,value) \
( (This)->lpVtbl -> get_BufferUnderrunFreeDisabled(This,value) )
#define IDiscFormat2TrackAtOnce_get_NumberOfExistingTracks(This,value) \
( (This)->lpVtbl -> get_NumberOfExistingTracks(This,value) )
#define IDiscFormat2TrackAtOnce_get_TotalSectorsOnMedia(This,value) \
( (This)->lpVtbl -> get_TotalSectorsOnMedia(This,value) )
#define IDiscFormat2TrackAtOnce_get_FreeSectorsOnMedia(This,value) \
( (This)->lpVtbl -> get_FreeSectorsOnMedia(This,value) )
#define IDiscFormat2TrackAtOnce_get_UsedSectorsOnMedia(This,value) \
( (This)->lpVtbl -> get_UsedSectorsOnMedia(This,value) )
#define IDiscFormat2TrackAtOnce_put_DoNotFinalizeMedia(This,value) \
( (This)->lpVtbl -> put_DoNotFinalizeMedia(This,value) )
#define IDiscFormat2TrackAtOnce_get_DoNotFinalizeMedia(This,value) \
( (This)->lpVtbl -> get_DoNotFinalizeMedia(This,value) )
#define IDiscFormat2TrackAtOnce_get_ExpectedTableOfContents(This,value) \
( (This)->lpVtbl -> get_ExpectedTableOfContents(This,value) )
#define IDiscFormat2TrackAtOnce_get_CurrentPhysicalMediaType(This,value) \
( (This)->lpVtbl -> get_CurrentPhysicalMediaType(This,value) )
#define IDiscFormat2TrackAtOnce_put_ClientName(This,value) \
( (This)->lpVtbl -> put_ClientName(This,value) )
#define IDiscFormat2TrackAtOnce_get_ClientName(This,value) \
( (This)->lpVtbl -> get_ClientName(This,value) )
#define IDiscFormat2TrackAtOnce_get_RequestedWriteSpeed(This,value) \
( (This)->lpVtbl -> get_RequestedWriteSpeed(This,value) )
#define IDiscFormat2TrackAtOnce_get_RequestedRotationTypeIsPureCAV(This,value) \
( (This)->lpVtbl -> get_RequestedRotationTypeIsPureCAV(This,value) )
#define IDiscFormat2TrackAtOnce_get_CurrentWriteSpeed(This,value) \
( (This)->lpVtbl -> get_CurrentWriteSpeed(This,value) )
#define IDiscFormat2TrackAtOnce_get_CurrentRotationTypeIsPureCAV(This,value) \
( (This)->lpVtbl -> get_CurrentRotationTypeIsPureCAV(This,value) )
#define IDiscFormat2TrackAtOnce_get_SupportedWriteSpeeds(This,supportedSpeeds) \
( (This)->lpVtbl -> get_SupportedWriteSpeeds(This,supportedSpeeds) )
#define IDiscFormat2TrackAtOnce_get_SupportedWriteSpeedDescriptors(This,supportedSpeedDescriptors) \
( (This)->lpVtbl -> get_SupportedWriteSpeedDescriptors(This,supportedSpeedDescriptors) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDiscFormat2TrackAtOnce_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0014 */
/* [local] */
#define DISPID_DDISCFORMAT2TAOEVENTS_UPDATE 0x200
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0014_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0014_v0_0_s_ifspec;
#ifndef __DDiscFormat2TrackAtOnceEvents_INTERFACE_DEFINED__
#define __DDiscFormat2TrackAtOnceEvents_INTERFACE_DEFINED__
/* interface DDiscFormat2TrackAtOnceEvents */
/* [helpstring][unique][uuid][oleautomation][nonextensible][object] */
EXTERN_C const IID IID_DDiscFormat2TrackAtOnceEvents;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("2735413F-7F64-5B0F-8F00-5D77AFBE261E")
DDiscFormat2TrackAtOnceEvents : public IDispatch
{
public:
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Update(
/* [in] */ __RPC__in_opt IDispatch *object,
/* [in] */ __RPC__in_opt IDispatch *progress) = 0;
};
#else /* C style interface */
typedef struct DDiscFormat2TrackAtOnceEventsVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in DDiscFormat2TrackAtOnceEvents * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in DDiscFormat2TrackAtOnceEvents * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in DDiscFormat2TrackAtOnceEvents * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in DDiscFormat2TrackAtOnceEvents * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in DDiscFormat2TrackAtOnceEvents * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in DDiscFormat2TrackAtOnceEvents * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
DDiscFormat2TrackAtOnceEvents * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Update )(
__RPC__in DDiscFormat2TrackAtOnceEvents * This,
/* [in] */ __RPC__in_opt IDispatch *object,
/* [in] */ __RPC__in_opt IDispatch *progress);
END_INTERFACE
} DDiscFormat2TrackAtOnceEventsVtbl;
interface DDiscFormat2TrackAtOnceEvents
{
CONST_VTBL struct DDiscFormat2TrackAtOnceEventsVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define DDiscFormat2TrackAtOnceEvents_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define DDiscFormat2TrackAtOnceEvents_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define DDiscFormat2TrackAtOnceEvents_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define DDiscFormat2TrackAtOnceEvents_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define DDiscFormat2TrackAtOnceEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define DDiscFormat2TrackAtOnceEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define DDiscFormat2TrackAtOnceEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define DDiscFormat2TrackAtOnceEvents_Update(This,object,progress) \
( (This)->lpVtbl -> Update(This,object,progress) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __DDiscFormat2TrackAtOnceEvents_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0015 */
/* [local] */
#define DISPID_IDISCFORMAT2TAOEVENTARGS_CURRENTTRACKNUMBER 0x300
#define DISPID_IDISCFORMAT2TAOEVENTARGS_CURRENTACTION 0x301
#define DISPID_IDISCFORMAT2TAOEVENTARGS_ELAPSEDTIME 0x302
#define DISPID_IDISCFORMAT2TAOEVENTARGS_ESTIMATEDREMAININGTIME 0x303
#define DISPID_IDISCFORMAT2TAOEVENTARGS_ESTIMATEDTOTALTIME 0x304
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0015_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0015_v0_0_s_ifspec;
#ifndef __IDiscFormat2TrackAtOnceEventArgs_INTERFACE_DEFINED__
#define __IDiscFormat2TrackAtOnceEventArgs_INTERFACE_DEFINED__
/* interface IDiscFormat2TrackAtOnceEventArgs */
/* [helpstring][unique][uuid][dual][nonextensible][object] */
EXTERN_C const IID IID_IDiscFormat2TrackAtOnceEventArgs;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("27354140-7F64-5B0F-8F00-5D77AFBE261E")
IDiscFormat2TrackAtOnceEventArgs : public IWriteEngine2EventArgs
{
public:
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentTrackNumber(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentAction(
/* [retval][ref][out] */ __RPC__out IMAPI_FORMAT2_TAO_WRITE_ACTION *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ElapsedTime(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RemainingTime(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
};
#else /* C style interface */
typedef struct IDiscFormat2TrackAtOnceEventArgsVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IDiscFormat2TrackAtOnceEventArgs * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IDiscFormat2TrackAtOnceEventArgs * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IDiscFormat2TrackAtOnceEventArgs * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in IDiscFormat2TrackAtOnceEventArgs * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in IDiscFormat2TrackAtOnceEventArgs * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in IDiscFormat2TrackAtOnceEventArgs * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
IDiscFormat2TrackAtOnceEventArgs * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StartLba )(
__RPC__in IDiscFormat2TrackAtOnceEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SectorCount )(
__RPC__in IDiscFormat2TrackAtOnceEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastReadLba )(
__RPC__in IDiscFormat2TrackAtOnceEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastWrittenLba )(
__RPC__in IDiscFormat2TrackAtOnceEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TotalSystemBuffer )(
__RPC__in IDiscFormat2TrackAtOnceEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UsedSystemBuffer )(
__RPC__in IDiscFormat2TrackAtOnceEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FreeSystemBuffer )(
__RPC__in IDiscFormat2TrackAtOnceEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentTrackNumber )(
__RPC__in IDiscFormat2TrackAtOnceEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentAction )(
__RPC__in IDiscFormat2TrackAtOnceEventArgs * This,
/* [retval][ref][out] */ __RPC__out IMAPI_FORMAT2_TAO_WRITE_ACTION *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ElapsedTime )(
__RPC__in IDiscFormat2TrackAtOnceEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RemainingTime )(
__RPC__in IDiscFormat2TrackAtOnceEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
END_INTERFACE
} IDiscFormat2TrackAtOnceEventArgsVtbl;
interface IDiscFormat2TrackAtOnceEventArgs
{
CONST_VTBL struct IDiscFormat2TrackAtOnceEventArgsVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDiscFormat2TrackAtOnceEventArgs_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDiscFormat2TrackAtOnceEventArgs_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDiscFormat2TrackAtOnceEventArgs_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDiscFormat2TrackAtOnceEventArgs_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define IDiscFormat2TrackAtOnceEventArgs_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define IDiscFormat2TrackAtOnceEventArgs_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define IDiscFormat2TrackAtOnceEventArgs_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define IDiscFormat2TrackAtOnceEventArgs_get_StartLba(This,value) \
( (This)->lpVtbl -> get_StartLba(This,value) )
#define IDiscFormat2TrackAtOnceEventArgs_get_SectorCount(This,value) \
( (This)->lpVtbl -> get_SectorCount(This,value) )
#define IDiscFormat2TrackAtOnceEventArgs_get_LastReadLba(This,value) \
( (This)->lpVtbl -> get_LastReadLba(This,value) )
#define IDiscFormat2TrackAtOnceEventArgs_get_LastWrittenLba(This,value) \
( (This)->lpVtbl -> get_LastWrittenLba(This,value) )
#define IDiscFormat2TrackAtOnceEventArgs_get_TotalSystemBuffer(This,value) \
( (This)->lpVtbl -> get_TotalSystemBuffer(This,value) )
#define IDiscFormat2TrackAtOnceEventArgs_get_UsedSystemBuffer(This,value) \
( (This)->lpVtbl -> get_UsedSystemBuffer(This,value) )
#define IDiscFormat2TrackAtOnceEventArgs_get_FreeSystemBuffer(This,value) \
( (This)->lpVtbl -> get_FreeSystemBuffer(This,value) )
#define IDiscFormat2TrackAtOnceEventArgs_get_CurrentTrackNumber(This,value) \
( (This)->lpVtbl -> get_CurrentTrackNumber(This,value) )
#define IDiscFormat2TrackAtOnceEventArgs_get_CurrentAction(This,value) \
( (This)->lpVtbl -> get_CurrentAction(This,value) )
#define IDiscFormat2TrackAtOnceEventArgs_get_ElapsedTime(This,value) \
( (This)->lpVtbl -> get_ElapsedTime(This,value) )
#define IDiscFormat2TrackAtOnceEventArgs_get_RemainingTime(This,value) \
( (This)->lpVtbl -> get_RemainingTime(This,value) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDiscFormat2TrackAtOnceEventArgs_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0016 */
/* [local] */
#define DISPID_IDISCFORMAT2RAWCD_RECORDER 0x100
#define DISPID_IDISCFORMAT2RAWCD_BUFFERUNDERRUNFREEDISABLED 0x102
#define DISPID_IDISCFORMAT2RAWCD_STARTOFNEXTSESSION 0x103
#define DISPID_IDISCFORMAT2RAWCD_LASTPOSSIBLESTARTOFLEADOUT 0x104
#define DISPID_IDISCFORMAT2RAWCD_CURRENTMEDIATYPE 0x105
#define DISPID_IDISCFORMAT2RAWCD_SUPPORTEDDATASECTORTYPES 0x108
#define DISPID_IDISCFORMAT2RAWCD_REQUESTEDDATASECTORTYPE 0x109
#define DISPID_IDISCFORMAT2RAWCD_CLIENTNAME 0x10A
#define DISPID_IDISCFORMAT2RAWCD_REQUESTEDWRITESPEED 0x10B
#define DISPID_IDISCFORMAT2RAWCD_REQUESTEDROTATIONTYPEISPURECAV 0x10C
#define DISPID_IDISCFORMAT2RAWCD_CURRENTWRITESPEED 0x10D
#define DISPID_IDISCFORMAT2RAWCD_CURRENTROTATIONTYPEISPURECAV 0x10E
#define DISPID_IDISCFORMAT2RAWCD_SUPPORTEDWRITESPEEDS 0x10F
#define DISPID_IDISCFORMAT2RAWCD_SUPPORTEDWRITESPEEDDESCRIPTORS 0x110
#define DISPID_IDISCFORMAT2RAWCD_PREPAREMEDIA 0x200
#define DISPID_IDISCFORMAT2RAWCD_WRITEMEDIA 0x201
#define DISPID_IDISCFORMAT2RAWCD_WRITEMEDIAWITHVALIDATION 0x202
#define DISPID_IDISCFORMAT2RAWCD_CANCELWRITE 0x203
#define DISPID_IDISCFORMAT2RAWCD_RELEASEMEDIA 0x204
#define DISPID_IDISCFORMAT2RAWCD_SETWRITESPEED 0x205
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0016_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0016_v0_0_s_ifspec;
#ifndef __IDiscFormat2RawCD_INTERFACE_DEFINED__
#define __IDiscFormat2RawCD_INTERFACE_DEFINED__
/* interface IDiscFormat2RawCD */
/* [helpstring][unique][uuid][dual][nonextensible][object] */
EXTERN_C const IID IID_IDiscFormat2RawCD;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("27354155-8F64-5B0F-8F00-5D77AFBE261E")
IDiscFormat2RawCD : public IDiscFormat2
{
public:
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE PrepareMedia( void) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE WriteMedia(
/* [in] */ __RPC__in_opt IStream *data) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE WriteMedia2(
/* [in] */ __RPC__in_opt IStream *data,
/* [in] */ LONG streamLeadInSectors) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE CancelWrite( void) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ReleaseMedia( void) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetWriteSpeed(
/* [in] */ LONG RequestedSectorsPerSecond,
/* [in] */ VARIANT_BOOL RotationTypeIsPureCAV) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Recorder(
/* [in] */ __RPC__in_opt IDiscRecorder2 *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Recorder(
/* [retval][ref][out] */ __RPC__deref_out_opt IDiscRecorder2 **value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BufferUnderrunFreeDisabled(
/* [in] */ VARIANT_BOOL value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BufferUnderrunFreeDisabled(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StartOfNextSession(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LastPossibleStartOfLeadout(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentPhysicalMediaType(
/* [retval][ref][out] */ __RPC__out IMAPI_MEDIA_PHYSICAL_TYPE *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SupportedSectorTypes(
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_RequestedSectorType(
/* [in] */ IMAPI_FORMAT2_RAW_CD_DATA_SECTOR_TYPE value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RequestedSectorType(
/* [retval][ref][out] */ __RPC__out IMAPI_FORMAT2_RAW_CD_DATA_SECTOR_TYPE *value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ClientName(
/* [in] */ __RPC__in BSTR value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ClientName(
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RequestedWriteSpeed(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RequestedRotationTypeIsPureCAV(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentWriteSpeed(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentRotationTypeIsPureCAV(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SupportedWriteSpeeds(
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *supportedSpeeds) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SupportedWriteSpeedDescriptors(
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *supportedSpeedDescriptors) = 0;
};
#else /* C style interface */
typedef struct IDiscFormat2RawCDVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IDiscFormat2RawCD * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IDiscFormat2RawCD * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IDiscFormat2RawCD * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in IDiscFormat2RawCD * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in IDiscFormat2RawCD * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in IDiscFormat2RawCD * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
IDiscFormat2RawCD * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *IsRecorderSupported )(
__RPC__in IDiscFormat2RawCD * This,
/* [in] */ __RPC__in_opt IDiscRecorder2 *recorder,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *IsCurrentMediaSupported )(
__RPC__in IDiscFormat2RawCD * This,
/* [in] */ __RPC__in_opt IDiscRecorder2 *recorder,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaPhysicallyBlank )(
__RPC__in IDiscFormat2RawCD * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaHeuristicallyBlank )(
__RPC__in IDiscFormat2RawCD * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SupportedMediaTypes )(
__RPC__in IDiscFormat2RawCD * This,
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *PrepareMedia )(
__RPC__in IDiscFormat2RawCD * This);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *WriteMedia )(
__RPC__in IDiscFormat2RawCD * This,
/* [in] */ __RPC__in_opt IStream *data);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *WriteMedia2 )(
__RPC__in IDiscFormat2RawCD * This,
/* [in] */ __RPC__in_opt IStream *data,
/* [in] */ LONG streamLeadInSectors);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CancelWrite )(
__RPC__in IDiscFormat2RawCD * This);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ReleaseMedia )(
__RPC__in IDiscFormat2RawCD * This);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetWriteSpeed )(
__RPC__in IDiscFormat2RawCD * This,
/* [in] */ LONG RequestedSectorsPerSecond,
/* [in] */ VARIANT_BOOL RotationTypeIsPureCAV);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Recorder )(
__RPC__in IDiscFormat2RawCD * This,
/* [in] */ __RPC__in_opt IDiscRecorder2 *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Recorder )(
__RPC__in IDiscFormat2RawCD * This,
/* [retval][ref][out] */ __RPC__deref_out_opt IDiscRecorder2 **value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BufferUnderrunFreeDisabled )(
__RPC__in IDiscFormat2RawCD * This,
/* [in] */ VARIANT_BOOL value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BufferUnderrunFreeDisabled )(
__RPC__in IDiscFormat2RawCD * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StartOfNextSession )(
__RPC__in IDiscFormat2RawCD * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastPossibleStartOfLeadout )(
__RPC__in IDiscFormat2RawCD * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentPhysicalMediaType )(
__RPC__in IDiscFormat2RawCD * This,
/* [retval][ref][out] */ __RPC__out IMAPI_MEDIA_PHYSICAL_TYPE *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SupportedSectorTypes )(
__RPC__in IDiscFormat2RawCD * This,
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_RequestedSectorType )(
__RPC__in IDiscFormat2RawCD * This,
/* [in] */ IMAPI_FORMAT2_RAW_CD_DATA_SECTOR_TYPE value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RequestedSectorType )(
__RPC__in IDiscFormat2RawCD * This,
/* [retval][ref][out] */ __RPC__out IMAPI_FORMAT2_RAW_CD_DATA_SECTOR_TYPE *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ClientName )(
__RPC__in IDiscFormat2RawCD * This,
/* [in] */ __RPC__in BSTR value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClientName )(
__RPC__in IDiscFormat2RawCD * This,
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RequestedWriteSpeed )(
__RPC__in IDiscFormat2RawCD * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RequestedRotationTypeIsPureCAV )(
__RPC__in IDiscFormat2RawCD * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentWriteSpeed )(
__RPC__in IDiscFormat2RawCD * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentRotationTypeIsPureCAV )(
__RPC__in IDiscFormat2RawCD * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SupportedWriteSpeeds )(
__RPC__in IDiscFormat2RawCD * This,
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *supportedSpeeds);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SupportedWriteSpeedDescriptors )(
__RPC__in IDiscFormat2RawCD * This,
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *supportedSpeedDescriptors);
END_INTERFACE
} IDiscFormat2RawCDVtbl;
interface IDiscFormat2RawCD
{
CONST_VTBL struct IDiscFormat2RawCDVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDiscFormat2RawCD_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDiscFormat2RawCD_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDiscFormat2RawCD_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDiscFormat2RawCD_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define IDiscFormat2RawCD_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define IDiscFormat2RawCD_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define IDiscFormat2RawCD_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define IDiscFormat2RawCD_IsRecorderSupported(This,recorder,value) \
( (This)->lpVtbl -> IsRecorderSupported(This,recorder,value) )
#define IDiscFormat2RawCD_IsCurrentMediaSupported(This,recorder,value) \
( (This)->lpVtbl -> IsCurrentMediaSupported(This,recorder,value) )
#define IDiscFormat2RawCD_get_MediaPhysicallyBlank(This,value) \
( (This)->lpVtbl -> get_MediaPhysicallyBlank(This,value) )
#define IDiscFormat2RawCD_get_MediaHeuristicallyBlank(This,value) \
( (This)->lpVtbl -> get_MediaHeuristicallyBlank(This,value) )
#define IDiscFormat2RawCD_get_SupportedMediaTypes(This,value) \
( (This)->lpVtbl -> get_SupportedMediaTypes(This,value) )
#define IDiscFormat2RawCD_PrepareMedia(This) \
( (This)->lpVtbl -> PrepareMedia(This) )
#define IDiscFormat2RawCD_WriteMedia(This,data) \
( (This)->lpVtbl -> WriteMedia(This,data) )
#define IDiscFormat2RawCD_WriteMedia2(This,data,streamLeadInSectors) \
( (This)->lpVtbl -> WriteMedia2(This,data,streamLeadInSectors) )
#define IDiscFormat2RawCD_CancelWrite(This) \
( (This)->lpVtbl -> CancelWrite(This) )
#define IDiscFormat2RawCD_ReleaseMedia(This) \
( (This)->lpVtbl -> ReleaseMedia(This) )
#define IDiscFormat2RawCD_SetWriteSpeed(This,RequestedSectorsPerSecond,RotationTypeIsPureCAV) \
( (This)->lpVtbl -> SetWriteSpeed(This,RequestedSectorsPerSecond,RotationTypeIsPureCAV) )
#define IDiscFormat2RawCD_put_Recorder(This,value) \
( (This)->lpVtbl -> put_Recorder(This,value) )
#define IDiscFormat2RawCD_get_Recorder(This,value) \
( (This)->lpVtbl -> get_Recorder(This,value) )
#define IDiscFormat2RawCD_put_BufferUnderrunFreeDisabled(This,value) \
( (This)->lpVtbl -> put_BufferUnderrunFreeDisabled(This,value) )
#define IDiscFormat2RawCD_get_BufferUnderrunFreeDisabled(This,value) \
( (This)->lpVtbl -> get_BufferUnderrunFreeDisabled(This,value) )
#define IDiscFormat2RawCD_get_StartOfNextSession(This,value) \
( (This)->lpVtbl -> get_StartOfNextSession(This,value) )
#define IDiscFormat2RawCD_get_LastPossibleStartOfLeadout(This,value) \
( (This)->lpVtbl -> get_LastPossibleStartOfLeadout(This,value) )
#define IDiscFormat2RawCD_get_CurrentPhysicalMediaType(This,value) \
( (This)->lpVtbl -> get_CurrentPhysicalMediaType(This,value) )
#define IDiscFormat2RawCD_get_SupportedSectorTypes(This,value) \
( (This)->lpVtbl -> get_SupportedSectorTypes(This,value) )
#define IDiscFormat2RawCD_put_RequestedSectorType(This,value) \
( (This)->lpVtbl -> put_RequestedSectorType(This,value) )
#define IDiscFormat2RawCD_get_RequestedSectorType(This,value) \
( (This)->lpVtbl -> get_RequestedSectorType(This,value) )
#define IDiscFormat2RawCD_put_ClientName(This,value) \
( (This)->lpVtbl -> put_ClientName(This,value) )
#define IDiscFormat2RawCD_get_ClientName(This,value) \
( (This)->lpVtbl -> get_ClientName(This,value) )
#define IDiscFormat2RawCD_get_RequestedWriteSpeed(This,value) \
( (This)->lpVtbl -> get_RequestedWriteSpeed(This,value) )
#define IDiscFormat2RawCD_get_RequestedRotationTypeIsPureCAV(This,value) \
( (This)->lpVtbl -> get_RequestedRotationTypeIsPureCAV(This,value) )
#define IDiscFormat2RawCD_get_CurrentWriteSpeed(This,value) \
( (This)->lpVtbl -> get_CurrentWriteSpeed(This,value) )
#define IDiscFormat2RawCD_get_CurrentRotationTypeIsPureCAV(This,value) \
( (This)->lpVtbl -> get_CurrentRotationTypeIsPureCAV(This,value) )
#define IDiscFormat2RawCD_get_SupportedWriteSpeeds(This,supportedSpeeds) \
( (This)->lpVtbl -> get_SupportedWriteSpeeds(This,supportedSpeeds) )
#define IDiscFormat2RawCD_get_SupportedWriteSpeedDescriptors(This,supportedSpeedDescriptors) \
( (This)->lpVtbl -> get_SupportedWriteSpeedDescriptors(This,supportedSpeedDescriptors) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDiscFormat2RawCD_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0017 */
/* [local] */
#define DISPID_DDISCFORMAT2RAWCDEVENTS_UPDATE 0x200
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0017_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0017_v0_0_s_ifspec;
#ifndef __DDiscFormat2RawCDEvents_INTERFACE_DEFINED__
#define __DDiscFormat2RawCDEvents_INTERFACE_DEFINED__
/* interface DDiscFormat2RawCDEvents */
/* [helpstring][unique][uuid][oleautomation][nonextensible][object] */
EXTERN_C const IID IID_DDiscFormat2RawCDEvents;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("27354142-7F64-5B0F-8F00-5D77AFBE261E")
DDiscFormat2RawCDEvents : public IDispatch
{
public:
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Update(
/* [in] */ __RPC__in_opt IDispatch *object,
/* [in] */ __RPC__in_opt IDispatch *progress) = 0;
};
#else /* C style interface */
typedef struct DDiscFormat2RawCDEventsVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in DDiscFormat2RawCDEvents * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in DDiscFormat2RawCDEvents * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in DDiscFormat2RawCDEvents * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in DDiscFormat2RawCDEvents * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in DDiscFormat2RawCDEvents * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in DDiscFormat2RawCDEvents * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
DDiscFormat2RawCDEvents * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Update )(
__RPC__in DDiscFormat2RawCDEvents * This,
/* [in] */ __RPC__in_opt IDispatch *object,
/* [in] */ __RPC__in_opt IDispatch *progress);
END_INTERFACE
} DDiscFormat2RawCDEventsVtbl;
interface DDiscFormat2RawCDEvents
{
CONST_VTBL struct DDiscFormat2RawCDEventsVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define DDiscFormat2RawCDEvents_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define DDiscFormat2RawCDEvents_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define DDiscFormat2RawCDEvents_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define DDiscFormat2RawCDEvents_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define DDiscFormat2RawCDEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define DDiscFormat2RawCDEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define DDiscFormat2RawCDEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define DDiscFormat2RawCDEvents_Update(This,object,progress) \
( (This)->lpVtbl -> Update(This,object,progress) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __DDiscFormat2RawCDEvents_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0018 */
/* [local] */
#define DISPID_IDISCFORMAT2RAWCDEVENTARGS_CURRENTTRACKNUMBER 0x300
#define DISPID_IDISCFORMAT2RAWCDEVENTARGS_CURRENTACTION 0x301
#define DISPID_IDISCFORMAT2RAWCDEVENTARGS_ELAPSEDTIME 0x300
#define DISPID_IDISCFORMAT2RAWCDEVENTARGS_ESTIMATEDREMAININGTIME 0x301
#define DISPID_IDISCFORMAT2RAWCDEVENTARGS_ESTIMATEDTOTALTIME 0x302
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0018_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0018_v0_0_s_ifspec;
#ifndef __IDiscFormat2RawCDEventArgs_INTERFACE_DEFINED__
#define __IDiscFormat2RawCDEventArgs_INTERFACE_DEFINED__
/* interface IDiscFormat2RawCDEventArgs */
/* [helpstring][unique][uuid][dual][nonextensible][object] */
EXTERN_C const IID IID_IDiscFormat2RawCDEventArgs;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("27354143-7F64-5B0F-8F00-5D77AFBE261E")
IDiscFormat2RawCDEventArgs : public IWriteEngine2EventArgs
{
public:
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentAction(
/* [retval][ref][out] */ __RPC__out IMAPI_FORMAT2_RAW_CD_WRITE_ACTION *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ElapsedTime(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RemainingTime(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
};
#else /* C style interface */
typedef struct IDiscFormat2RawCDEventArgsVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IDiscFormat2RawCDEventArgs * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IDiscFormat2RawCDEventArgs * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IDiscFormat2RawCDEventArgs * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in IDiscFormat2RawCDEventArgs * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in IDiscFormat2RawCDEventArgs * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in IDiscFormat2RawCDEventArgs * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
IDiscFormat2RawCDEventArgs * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StartLba )(
__RPC__in IDiscFormat2RawCDEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SectorCount )(
__RPC__in IDiscFormat2RawCDEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastReadLba )(
__RPC__in IDiscFormat2RawCDEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastWrittenLba )(
__RPC__in IDiscFormat2RawCDEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TotalSystemBuffer )(
__RPC__in IDiscFormat2RawCDEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UsedSystemBuffer )(
__RPC__in IDiscFormat2RawCDEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FreeSystemBuffer )(
__RPC__in IDiscFormat2RawCDEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentAction )(
__RPC__in IDiscFormat2RawCDEventArgs * This,
/* [retval][ref][out] */ __RPC__out IMAPI_FORMAT2_RAW_CD_WRITE_ACTION *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ElapsedTime )(
__RPC__in IDiscFormat2RawCDEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RemainingTime )(
__RPC__in IDiscFormat2RawCDEventArgs * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
END_INTERFACE
} IDiscFormat2RawCDEventArgsVtbl;
interface IDiscFormat2RawCDEventArgs
{
CONST_VTBL struct IDiscFormat2RawCDEventArgsVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDiscFormat2RawCDEventArgs_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDiscFormat2RawCDEventArgs_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDiscFormat2RawCDEventArgs_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDiscFormat2RawCDEventArgs_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define IDiscFormat2RawCDEventArgs_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define IDiscFormat2RawCDEventArgs_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define IDiscFormat2RawCDEventArgs_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define IDiscFormat2RawCDEventArgs_get_StartLba(This,value) \
( (This)->lpVtbl -> get_StartLba(This,value) )
#define IDiscFormat2RawCDEventArgs_get_SectorCount(This,value) \
( (This)->lpVtbl -> get_SectorCount(This,value) )
#define IDiscFormat2RawCDEventArgs_get_LastReadLba(This,value) \
( (This)->lpVtbl -> get_LastReadLba(This,value) )
#define IDiscFormat2RawCDEventArgs_get_LastWrittenLba(This,value) \
( (This)->lpVtbl -> get_LastWrittenLba(This,value) )
#define IDiscFormat2RawCDEventArgs_get_TotalSystemBuffer(This,value) \
( (This)->lpVtbl -> get_TotalSystemBuffer(This,value) )
#define IDiscFormat2RawCDEventArgs_get_UsedSystemBuffer(This,value) \
( (This)->lpVtbl -> get_UsedSystemBuffer(This,value) )
#define IDiscFormat2RawCDEventArgs_get_FreeSystemBuffer(This,value) \
( (This)->lpVtbl -> get_FreeSystemBuffer(This,value) )
#define IDiscFormat2RawCDEventArgs_get_CurrentAction(This,value) \
( (This)->lpVtbl -> get_CurrentAction(This,value) )
#define IDiscFormat2RawCDEventArgs_get_ElapsedTime(This,value) \
( (This)->lpVtbl -> get_ElapsedTime(This,value) )
#define IDiscFormat2RawCDEventArgs_get_RemainingTime(This,value) \
( (This)->lpVtbl -> get_RemainingTime(This,value) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDiscFormat2RawCDEventArgs_INTERFACE_DEFINED__ */
#ifndef __IBurnVerification_INTERFACE_DEFINED__
#define __IBurnVerification_INTERFACE_DEFINED__
/* interface IBurnVerification */
/* [helpstring][unique][uuid][object] */
EXTERN_C const IID IID_IBurnVerification;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("D2FFD834-958B-426d-8470-2A13879C6A91")
IBurnVerification : public IUnknown
{
public:
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BurnVerificationLevel(
/* [in] */ IMAPI_BURN_VERIFICATION_LEVEL value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BurnVerificationLevel(
/* [retval][ref][out] */ __RPC__out IMAPI_BURN_VERIFICATION_LEVEL *value) = 0;
};
#else /* C style interface */
typedef struct IBurnVerificationVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IBurnVerification * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IBurnVerification * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IBurnVerification * This);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BurnVerificationLevel )(
__RPC__in IBurnVerification * This,
/* [in] */ IMAPI_BURN_VERIFICATION_LEVEL value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BurnVerificationLevel )(
__RPC__in IBurnVerification * This,
/* [retval][ref][out] */ __RPC__out IMAPI_BURN_VERIFICATION_LEVEL *value);
END_INTERFACE
} IBurnVerificationVtbl;
interface IBurnVerification
{
CONST_VTBL struct IBurnVerificationVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IBurnVerification_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IBurnVerification_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IBurnVerification_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IBurnVerification_put_BurnVerificationLevel(This,value) \
( (This)->lpVtbl -> put_BurnVerificationLevel(This,value) )
#define IBurnVerification_get_BurnVerificationLevel(This,value) \
( (This)->lpVtbl -> get_BurnVerificationLevel(This,value) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IBurnVerification_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0020 */
/* [local] */
#define IMAPI_SECTORS_PER_SECOND_AT_1X_CD 75
#define IMAPI_SECTORS_PER_SECOND_AT_1X_DVD 680
#define IMAPI_SECTORS_PER_SECOND_AT_1X_BD 2195
#define IMAPI_SECTORS_PER_SECOND_AT_1X_HD_DVD 4568
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0020_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0020_v0_0_s_ifspec;
#ifndef __IWriteSpeedDescriptor_INTERFACE_DEFINED__
#define __IWriteSpeedDescriptor_INTERFACE_DEFINED__
/* interface IWriteSpeedDescriptor */
/* [helpstring][unique][uuid][dual][object] */
EXTERN_C const IID IID_IWriteSpeedDescriptor;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("27354144-7F64-5B0F-8F00-5D77AFBE261E")
IWriteSpeedDescriptor : public IDispatch
{
public:
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MediaType(
/* [retval][ref][out] */ __RPC__out IMAPI_MEDIA_PHYSICAL_TYPE *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RotationTypeIsPureCAV(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_WriteSpeed(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
};
#else /* C style interface */
typedef struct IWriteSpeedDescriptorVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IWriteSpeedDescriptor * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IWriteSpeedDescriptor * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IWriteSpeedDescriptor * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in IWriteSpeedDescriptor * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in IWriteSpeedDescriptor * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in IWriteSpeedDescriptor * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
IWriteSpeedDescriptor * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaType )(
__RPC__in IWriteSpeedDescriptor * This,
/* [retval][ref][out] */ __RPC__out IMAPI_MEDIA_PHYSICAL_TYPE *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RotationTypeIsPureCAV )(
__RPC__in IWriteSpeedDescriptor * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_WriteSpeed )(
__RPC__in IWriteSpeedDescriptor * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
END_INTERFACE
} IWriteSpeedDescriptorVtbl;
interface IWriteSpeedDescriptor
{
CONST_VTBL struct IWriteSpeedDescriptorVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IWriteSpeedDescriptor_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IWriteSpeedDescriptor_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IWriteSpeedDescriptor_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IWriteSpeedDescriptor_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define IWriteSpeedDescriptor_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define IWriteSpeedDescriptor_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define IWriteSpeedDescriptor_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define IWriteSpeedDescriptor_get_MediaType(This,value) \
( (This)->lpVtbl -> get_MediaType(This,value) )
#define IWriteSpeedDescriptor_get_RotationTypeIsPureCAV(This,value) \
( (This)->lpVtbl -> get_RotationTypeIsPureCAV(This,value) )
#define IWriteSpeedDescriptor_get_WriteSpeed(This,value) \
( (This)->lpVtbl -> get_WriteSpeed(This,value) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IWriteSpeedDescriptor_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0021 */
/* [local] */
#define DISPID_IMULTISESSION_SUPPORTEDONCURRENTMEDIA 0x100
#define DISPID_IMULTISESSION_INUSE 0x101
#define DISPID_IMULTISESSION_IMPORTRECORDER 0x102
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0021_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0021_v0_0_s_ifspec;
#ifndef __IMultisession_INTERFACE_DEFINED__
#define __IMultisession_INTERFACE_DEFINED__
/* interface IMultisession */
/* [helpstring][unique][uuid][dual][object] */
EXTERN_C const IID IID_IMultisession;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("27354150-7F64-5B0F-8F00-5D77AFBE261E")
IMultisession : public IDispatch
{
public:
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsSupportedOnCurrentMediaState(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_InUse(
/* [in] */ VARIANT_BOOL value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_InUse(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ImportRecorder(
/* [retval][ref][out] */ __RPC__deref_out_opt IDiscRecorder2 **value) = 0;
};
#else /* C style interface */
typedef struct IMultisessionVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IMultisession * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IMultisession * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IMultisession * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in IMultisession * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in IMultisession * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in IMultisession * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
IMultisession * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsSupportedOnCurrentMediaState )(
__RPC__in IMultisession * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_InUse )(
__RPC__in IMultisession * This,
/* [in] */ VARIANT_BOOL value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InUse )(
__RPC__in IMultisession * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ImportRecorder )(
__RPC__in IMultisession * This,
/* [retval][ref][out] */ __RPC__deref_out_opt IDiscRecorder2 **value);
END_INTERFACE
} IMultisessionVtbl;
interface IMultisession
{
CONST_VTBL struct IMultisessionVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IMultisession_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IMultisession_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IMultisession_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IMultisession_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define IMultisession_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define IMultisession_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define IMultisession_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define IMultisession_get_IsSupportedOnCurrentMediaState(This,value) \
( (This)->lpVtbl -> get_IsSupportedOnCurrentMediaState(This,value) )
#define IMultisession_put_InUse(This,value) \
( (This)->lpVtbl -> put_InUse(This,value) )
#define IMultisession_get_InUse(This,value) \
( (This)->lpVtbl -> get_InUse(This,value) )
#define IMultisession_get_ImportRecorder(This,value) \
( (This)->lpVtbl -> get_ImportRecorder(This,value) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IMultisession_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0022 */
/* [local] */
#define DISPID_IMULTISESSION_FIRSTDATASESSION 0x200
#define DISPID_IMULTISESSION_STARTSECTOROFPREVIOUSSESSION 0x201
#define DISPID_IMULTISESSION_LASTSECTOROFPREVIOUSSESSION 0x202
#define DISPID_IMULTISESSION_NEXTWRITABLEADDRESS 0x203
#define DISPID_IMULTISESSION_FREESECTORS 0x204
#define DISPID_IMULTISESSION_WRITEUNITSIZE 0x205
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0022_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0022_v0_0_s_ifspec;
#ifndef __IMultisessionSequential_INTERFACE_DEFINED__
#define __IMultisessionSequential_INTERFACE_DEFINED__
/* interface IMultisessionSequential */
/* [helpstring][unique][uuid][dual][object] */
EXTERN_C const IID IID_IMultisessionSequential;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("27354151-7F64-5B0F-8F00-5D77AFBE261E")
IMultisessionSequential : public IMultisession
{
public:
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsFirstDataSession(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StartAddressOfPreviousSession(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LastWrittenAddressOfPreviousSession(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NextWritableAddress(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FreeSectorsOnMedia(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
};
#else /* C style interface */
typedef struct IMultisessionSequentialVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IMultisessionSequential * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IMultisessionSequential * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IMultisessionSequential * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in IMultisessionSequential * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in IMultisessionSequential * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in IMultisessionSequential * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
IMultisessionSequential * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsSupportedOnCurrentMediaState )(
__RPC__in IMultisessionSequential * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_InUse )(
__RPC__in IMultisessionSequential * This,
/* [in] */ VARIANT_BOOL value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InUse )(
__RPC__in IMultisessionSequential * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ImportRecorder )(
__RPC__in IMultisessionSequential * This,
/* [retval][ref][out] */ __RPC__deref_out_opt IDiscRecorder2 **value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsFirstDataSession )(
__RPC__in IMultisessionSequential * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StartAddressOfPreviousSession )(
__RPC__in IMultisessionSequential * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastWrittenAddressOfPreviousSession )(
__RPC__in IMultisessionSequential * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_NextWritableAddress )(
__RPC__in IMultisessionSequential * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FreeSectorsOnMedia )(
__RPC__in IMultisessionSequential * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
END_INTERFACE
} IMultisessionSequentialVtbl;
interface IMultisessionSequential
{
CONST_VTBL struct IMultisessionSequentialVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IMultisessionSequential_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IMultisessionSequential_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IMultisessionSequential_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IMultisessionSequential_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define IMultisessionSequential_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define IMultisessionSequential_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define IMultisessionSequential_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define IMultisessionSequential_get_IsSupportedOnCurrentMediaState(This,value) \
( (This)->lpVtbl -> get_IsSupportedOnCurrentMediaState(This,value) )
#define IMultisessionSequential_put_InUse(This,value) \
( (This)->lpVtbl -> put_InUse(This,value) )
#define IMultisessionSequential_get_InUse(This,value) \
( (This)->lpVtbl -> get_InUse(This,value) )
#define IMultisessionSequential_get_ImportRecorder(This,value) \
( (This)->lpVtbl -> get_ImportRecorder(This,value) )
#define IMultisessionSequential_get_IsFirstDataSession(This,value) \
( (This)->lpVtbl -> get_IsFirstDataSession(This,value) )
#define IMultisessionSequential_get_StartAddressOfPreviousSession(This,value) \
( (This)->lpVtbl -> get_StartAddressOfPreviousSession(This,value) )
#define IMultisessionSequential_get_LastWrittenAddressOfPreviousSession(This,value) \
( (This)->lpVtbl -> get_LastWrittenAddressOfPreviousSession(This,value) )
#define IMultisessionSequential_get_NextWritableAddress(This,value) \
( (This)->lpVtbl -> get_NextWritableAddress(This,value) )
#define IMultisessionSequential_get_FreeSectorsOnMedia(This,value) \
( (This)->lpVtbl -> get_FreeSectorsOnMedia(This,value) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IMultisessionSequential_INTERFACE_DEFINED__ */
#ifndef __IMultisessionSequential2_INTERFACE_DEFINED__
#define __IMultisessionSequential2_INTERFACE_DEFINED__
/* interface IMultisessionSequential2 */
/* [helpstring][unique][uuid][dual][object] */
EXTERN_C const IID IID_IMultisessionSequential2;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("B507CA22-2204-11DD-966A-001AA01BBC58")
IMultisessionSequential2 : public IMultisessionSequential
{
public:
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_WriteUnitSize(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
};
#else /* C style interface */
typedef struct IMultisessionSequential2Vtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IMultisessionSequential2 * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IMultisessionSequential2 * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IMultisessionSequential2 * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in IMultisessionSequential2 * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in IMultisessionSequential2 * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in IMultisessionSequential2 * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
IMultisessionSequential2 * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsSupportedOnCurrentMediaState )(
__RPC__in IMultisessionSequential2 * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_InUse )(
__RPC__in IMultisessionSequential2 * This,
/* [in] */ VARIANT_BOOL value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InUse )(
__RPC__in IMultisessionSequential2 * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ImportRecorder )(
__RPC__in IMultisessionSequential2 * This,
/* [retval][ref][out] */ __RPC__deref_out_opt IDiscRecorder2 **value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsFirstDataSession )(
__RPC__in IMultisessionSequential2 * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StartAddressOfPreviousSession )(
__RPC__in IMultisessionSequential2 * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastWrittenAddressOfPreviousSession )(
__RPC__in IMultisessionSequential2 * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_NextWritableAddress )(
__RPC__in IMultisessionSequential2 * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FreeSectorsOnMedia )(
__RPC__in IMultisessionSequential2 * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_WriteUnitSize )(
__RPC__in IMultisessionSequential2 * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
END_INTERFACE
} IMultisessionSequential2Vtbl;
interface IMultisessionSequential2
{
CONST_VTBL struct IMultisessionSequential2Vtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IMultisessionSequential2_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IMultisessionSequential2_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IMultisessionSequential2_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IMultisessionSequential2_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define IMultisessionSequential2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define IMultisessionSequential2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define IMultisessionSequential2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define IMultisessionSequential2_get_IsSupportedOnCurrentMediaState(This,value) \
( (This)->lpVtbl -> get_IsSupportedOnCurrentMediaState(This,value) )
#define IMultisessionSequential2_put_InUse(This,value) \
( (This)->lpVtbl -> put_InUse(This,value) )
#define IMultisessionSequential2_get_InUse(This,value) \
( (This)->lpVtbl -> get_InUse(This,value) )
#define IMultisessionSequential2_get_ImportRecorder(This,value) \
( (This)->lpVtbl -> get_ImportRecorder(This,value) )
#define IMultisessionSequential2_get_IsFirstDataSession(This,value) \
( (This)->lpVtbl -> get_IsFirstDataSession(This,value) )
#define IMultisessionSequential2_get_StartAddressOfPreviousSession(This,value) \
( (This)->lpVtbl -> get_StartAddressOfPreviousSession(This,value) )
#define IMultisessionSequential2_get_LastWrittenAddressOfPreviousSession(This,value) \
( (This)->lpVtbl -> get_LastWrittenAddressOfPreviousSession(This,value) )
#define IMultisessionSequential2_get_NextWritableAddress(This,value) \
( (This)->lpVtbl -> get_NextWritableAddress(This,value) )
#define IMultisessionSequential2_get_FreeSectorsOnMedia(This,value) \
( (This)->lpVtbl -> get_FreeSectorsOnMedia(This,value) )
#define IMultisessionSequential2_get_WriteUnitSize(This,value) \
( (This)->lpVtbl -> get_WriteUnitSize(This,value) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IMultisessionSequential2_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0024 */
/* [local] */
#define DISPID_IMULTISESSION_LASTWRITTENADDRESS 0x206
#define DISPID_IMULTISESSION_SECTORSONMEDIA 0x207
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0024_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0024_v0_0_s_ifspec;
#ifndef __IMultisessionRandomWrite_INTERFACE_DEFINED__
#define __IMultisessionRandomWrite_INTERFACE_DEFINED__
/* interface IMultisessionRandomWrite */
/* [helpstring][unique][uuid][dual][object] */
EXTERN_C const IID IID_IMultisessionRandomWrite;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("B507CA23-2204-11DD-966A-001AA01BBC58")
IMultisessionRandomWrite : public IMultisession
{
public:
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_WriteUnitSize(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LastWrittenAddress(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TotalSectorsOnMedia(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
};
#else /* C style interface */
typedef struct IMultisessionRandomWriteVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IMultisessionRandomWrite * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IMultisessionRandomWrite * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IMultisessionRandomWrite * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in IMultisessionRandomWrite * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in IMultisessionRandomWrite * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in IMultisessionRandomWrite * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
IMultisessionRandomWrite * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsSupportedOnCurrentMediaState )(
__RPC__in IMultisessionRandomWrite * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_InUse )(
__RPC__in IMultisessionRandomWrite * This,
/* [in] */ VARIANT_BOOL value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InUse )(
__RPC__in IMultisessionRandomWrite * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ImportRecorder )(
__RPC__in IMultisessionRandomWrite * This,
/* [retval][ref][out] */ __RPC__deref_out_opt IDiscRecorder2 **value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_WriteUnitSize )(
__RPC__in IMultisessionRandomWrite * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastWrittenAddress )(
__RPC__in IMultisessionRandomWrite * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TotalSectorsOnMedia )(
__RPC__in IMultisessionRandomWrite * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
END_INTERFACE
} IMultisessionRandomWriteVtbl;
interface IMultisessionRandomWrite
{
CONST_VTBL struct IMultisessionRandomWriteVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IMultisessionRandomWrite_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IMultisessionRandomWrite_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IMultisessionRandomWrite_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IMultisessionRandomWrite_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define IMultisessionRandomWrite_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define IMultisessionRandomWrite_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define IMultisessionRandomWrite_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define IMultisessionRandomWrite_get_IsSupportedOnCurrentMediaState(This,value) \
( (This)->lpVtbl -> get_IsSupportedOnCurrentMediaState(This,value) )
#define IMultisessionRandomWrite_put_InUse(This,value) \
( (This)->lpVtbl -> put_InUse(This,value) )
#define IMultisessionRandomWrite_get_InUse(This,value) \
( (This)->lpVtbl -> get_InUse(This,value) )
#define IMultisessionRandomWrite_get_ImportRecorder(This,value) \
( (This)->lpVtbl -> get_ImportRecorder(This,value) )
#define IMultisessionRandomWrite_get_WriteUnitSize(This,value) \
( (This)->lpVtbl -> get_WriteUnitSize(This,value) )
#define IMultisessionRandomWrite_get_LastWrittenAddress(This,value) \
( (This)->lpVtbl -> get_LastWrittenAddress(This,value) )
#define IMultisessionRandomWrite_get_TotalSectorsOnMedia(This,value) \
( (This)->lpVtbl -> get_TotalSectorsOnMedia(This,value) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IMultisessionRandomWrite_INTERFACE_DEFINED__ */
#ifndef __IStreamPseudoRandomBased_INTERFACE_DEFINED__
#define __IStreamPseudoRandomBased_INTERFACE_DEFINED__
/* interface IStreamPseudoRandomBased */
/* [helpstring][unique][uuid][object] */
EXTERN_C const IID IID_IStreamPseudoRandomBased;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("27354145-7F64-5B0F-8F00-5D77AFBE261E")
IStreamPseudoRandomBased : public IStream
{
public:
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE put_Seed(
/* [in] */ ULONG value) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE get_Seed(
/* [out] */ __RPC__out ULONG *value) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE put_ExtendedSeed(
/* [size_is][in] */ __RPC__in_ecount_full(eCount) ULONG *values,
/* [in] */ ULONG eCount) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE get_ExtendedSeed(
/* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*eCount) ULONG **values,
/* [out] */ __RPC__out ULONG *eCount) = 0;
};
#else /* C style interface */
typedef struct IStreamPseudoRandomBasedVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IStreamPseudoRandomBased * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IStreamPseudoRandomBased * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IStreamPseudoRandomBased * This);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Read )(
IStreamPseudoRandomBased * This,
/* [annotation] */
__out_bcount_part(cb, *pcbRead) void *pv,
/* [in] */ ULONG cb,
/* [annotation] */
__out_opt ULONG *pcbRead);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Write )(
IStreamPseudoRandomBased * This,
/* [annotation] */
__in_bcount(cb) const void *pv,
/* [in] */ ULONG cb,
/* [annotation] */
__out_opt ULONG *pcbWritten);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Seek )(
IStreamPseudoRandomBased * This,
/* [in] */ LARGE_INTEGER dlibMove,
/* [in] */ DWORD dwOrigin,
/* [annotation] */
__out_opt ULARGE_INTEGER *plibNewPosition);
HRESULT ( STDMETHODCALLTYPE *SetSize )(
__RPC__in IStreamPseudoRandomBased * This,
/* [in] */ ULARGE_INTEGER libNewSize);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *CopyTo )(
IStreamPseudoRandomBased * This,
/* [unique][in] */ IStream *pstm,
/* [in] */ ULARGE_INTEGER cb,
/* [annotation] */
__out_opt ULARGE_INTEGER *pcbRead,
/* [annotation] */
__out_opt ULARGE_INTEGER *pcbWritten);
HRESULT ( STDMETHODCALLTYPE *Commit )(
__RPC__in IStreamPseudoRandomBased * This,
/* [in] */ DWORD grfCommitFlags);
HRESULT ( STDMETHODCALLTYPE *Revert )(
__RPC__in IStreamPseudoRandomBased * This);
HRESULT ( STDMETHODCALLTYPE *LockRegion )(
__RPC__in IStreamPseudoRandomBased * This,
/* [in] */ ULARGE_INTEGER libOffset,
/* [in] */ ULARGE_INTEGER cb,
/* [in] */ DWORD dwLockType);
HRESULT ( STDMETHODCALLTYPE *UnlockRegion )(
__RPC__in IStreamPseudoRandomBased * This,
/* [in] */ ULARGE_INTEGER libOffset,
/* [in] */ ULARGE_INTEGER cb,
/* [in] */ DWORD dwLockType);
HRESULT ( STDMETHODCALLTYPE *Stat )(
__RPC__in IStreamPseudoRandomBased * This,
/* [out] */ __RPC__out STATSTG *pstatstg,
/* [in] */ DWORD grfStatFlag);
HRESULT ( STDMETHODCALLTYPE *Clone )(
__RPC__in IStreamPseudoRandomBased * This,
/* [out] */ __RPC__deref_out_opt IStream **ppstm);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *put_Seed )(
__RPC__in IStreamPseudoRandomBased * This,
/* [in] */ ULONG value);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *get_Seed )(
__RPC__in IStreamPseudoRandomBased * This,
/* [out] */ __RPC__out ULONG *value);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *put_ExtendedSeed )(
__RPC__in IStreamPseudoRandomBased * This,
/* [size_is][in] */ __RPC__in_ecount_full(eCount) ULONG *values,
/* [in] */ ULONG eCount);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *get_ExtendedSeed )(
__RPC__in IStreamPseudoRandomBased * This,
/* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*eCount) ULONG **values,
/* [out] */ __RPC__out ULONG *eCount);
END_INTERFACE
} IStreamPseudoRandomBasedVtbl;
interface IStreamPseudoRandomBased
{
CONST_VTBL struct IStreamPseudoRandomBasedVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IStreamPseudoRandomBased_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IStreamPseudoRandomBased_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IStreamPseudoRandomBased_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IStreamPseudoRandomBased_Read(This,pv,cb,pcbRead) \
( (This)->lpVtbl -> Read(This,pv,cb,pcbRead) )
#define IStreamPseudoRandomBased_Write(This,pv,cb,pcbWritten) \
( (This)->lpVtbl -> Write(This,pv,cb,pcbWritten) )
#define IStreamPseudoRandomBased_Seek(This,dlibMove,dwOrigin,plibNewPosition) \
( (This)->lpVtbl -> Seek(This,dlibMove,dwOrigin,plibNewPosition) )
#define IStreamPseudoRandomBased_SetSize(This,libNewSize) \
( (This)->lpVtbl -> SetSize(This,libNewSize) )
#define IStreamPseudoRandomBased_CopyTo(This,pstm,cb,pcbRead,pcbWritten) \
( (This)->lpVtbl -> CopyTo(This,pstm,cb,pcbRead,pcbWritten) )
#define IStreamPseudoRandomBased_Commit(This,grfCommitFlags) \
( (This)->lpVtbl -> Commit(This,grfCommitFlags) )
#define IStreamPseudoRandomBased_Revert(This) \
( (This)->lpVtbl -> Revert(This) )
#define IStreamPseudoRandomBased_LockRegion(This,libOffset,cb,dwLockType) \
( (This)->lpVtbl -> LockRegion(This,libOffset,cb,dwLockType) )
#define IStreamPseudoRandomBased_UnlockRegion(This,libOffset,cb,dwLockType) \
( (This)->lpVtbl -> UnlockRegion(This,libOffset,cb,dwLockType) )
#define IStreamPseudoRandomBased_Stat(This,pstatstg,grfStatFlag) \
( (This)->lpVtbl -> Stat(This,pstatstg,grfStatFlag) )
#define IStreamPseudoRandomBased_Clone(This,ppstm) \
( (This)->lpVtbl -> Clone(This,ppstm) )
#define IStreamPseudoRandomBased_put_Seed(This,value) \
( (This)->lpVtbl -> put_Seed(This,value) )
#define IStreamPseudoRandomBased_get_Seed(This,value) \
( (This)->lpVtbl -> get_Seed(This,value) )
#define IStreamPseudoRandomBased_put_ExtendedSeed(This,values,eCount) \
( (This)->lpVtbl -> put_ExtendedSeed(This,values,eCount) )
#define IStreamPseudoRandomBased_get_ExtendedSeed(This,values,eCount) \
( (This)->lpVtbl -> get_ExtendedSeed(This,values,eCount) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IStreamPseudoRandomBased_INTERFACE_DEFINED__ */
#ifndef __IStreamConcatenate_INTERFACE_DEFINED__
#define __IStreamConcatenate_INTERFACE_DEFINED__
/* interface IStreamConcatenate */
/* [helpstring][unique][uuid][object] */
EXTERN_C const IID IID_IStreamConcatenate;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("27354146-7F64-5B0F-8F00-5D77AFBE261E")
IStreamConcatenate : public IStream
{
public:
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Initialize(
/* [in] */ __RPC__in_opt IStream *stream1,
/* [in] */ __RPC__in_opt IStream *stream2) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Initialize2(
/* [size_is][in] */ __RPC__in_ecount_full(streamCount) IStream **streams,
/* [in] */ ULONG streamCount) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Append(
/* [in] */ __RPC__in_opt IStream *stream) = 0;
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Append2(
/* [size_is][in] */ __RPC__in_ecount_full(streamCount) IStream **streams,
/* [in] */ ULONG streamCount) = 0;
};
#else /* C style interface */
typedef struct IStreamConcatenateVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IStreamConcatenate * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IStreamConcatenate * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IStreamConcatenate * This);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Read )(
IStreamConcatenate * This,
/* [annotation] */
__out_bcount_part(cb, *pcbRead) void *pv,
/* [in] */ ULONG cb,
/* [annotation] */
__out_opt ULONG *pcbRead);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Write )(
IStreamConcatenate * This,
/* [annotation] */
__in_bcount(cb) const void *pv,
/* [in] */ ULONG cb,
/* [annotation] */
__out_opt ULONG *pcbWritten);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Seek )(
IStreamConcatenate * This,
/* [in] */ LARGE_INTEGER dlibMove,
/* [in] */ DWORD dwOrigin,
/* [annotation] */
__out_opt ULARGE_INTEGER *plibNewPosition);
HRESULT ( STDMETHODCALLTYPE *SetSize )(
__RPC__in IStreamConcatenate * This,
/* [in] */ ULARGE_INTEGER libNewSize);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *CopyTo )(
IStreamConcatenate * This,
/* [unique][in] */ IStream *pstm,
/* [in] */ ULARGE_INTEGER cb,
/* [annotation] */
__out_opt ULARGE_INTEGER *pcbRead,
/* [annotation] */
__out_opt ULARGE_INTEGER *pcbWritten);
HRESULT ( STDMETHODCALLTYPE *Commit )(
__RPC__in IStreamConcatenate * This,
/* [in] */ DWORD grfCommitFlags);
HRESULT ( STDMETHODCALLTYPE *Revert )(
__RPC__in IStreamConcatenate * This);
HRESULT ( STDMETHODCALLTYPE *LockRegion )(
__RPC__in IStreamConcatenate * This,
/* [in] */ ULARGE_INTEGER libOffset,
/* [in] */ ULARGE_INTEGER cb,
/* [in] */ DWORD dwLockType);
HRESULT ( STDMETHODCALLTYPE *UnlockRegion )(
__RPC__in IStreamConcatenate * This,
/* [in] */ ULARGE_INTEGER libOffset,
/* [in] */ ULARGE_INTEGER cb,
/* [in] */ DWORD dwLockType);
HRESULT ( STDMETHODCALLTYPE *Stat )(
__RPC__in IStreamConcatenate * This,
/* [out] */ __RPC__out STATSTG *pstatstg,
/* [in] */ DWORD grfStatFlag);
HRESULT ( STDMETHODCALLTYPE *Clone )(
__RPC__in IStreamConcatenate * This,
/* [out] */ __RPC__deref_out_opt IStream **ppstm);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Initialize )(
__RPC__in IStreamConcatenate * This,
/* [in] */ __RPC__in_opt IStream *stream1,
/* [in] */ __RPC__in_opt IStream *stream2);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Initialize2 )(
__RPC__in IStreamConcatenate * This,
/* [size_is][in] */ __RPC__in_ecount_full(streamCount) IStream **streams,
/* [in] */ ULONG streamCount);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Append )(
__RPC__in IStreamConcatenate * This,
/* [in] */ __RPC__in_opt IStream *stream);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Append2 )(
__RPC__in IStreamConcatenate * This,
/* [size_is][in] */ __RPC__in_ecount_full(streamCount) IStream **streams,
/* [in] */ ULONG streamCount);
END_INTERFACE
} IStreamConcatenateVtbl;
interface IStreamConcatenate
{
CONST_VTBL struct IStreamConcatenateVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IStreamConcatenate_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IStreamConcatenate_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IStreamConcatenate_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IStreamConcatenate_Read(This,pv,cb,pcbRead) \
( (This)->lpVtbl -> Read(This,pv,cb,pcbRead) )
#define IStreamConcatenate_Write(This,pv,cb,pcbWritten) \
( (This)->lpVtbl -> Write(This,pv,cb,pcbWritten) )
#define IStreamConcatenate_Seek(This,dlibMove,dwOrigin,plibNewPosition) \
( (This)->lpVtbl -> Seek(This,dlibMove,dwOrigin,plibNewPosition) )
#define IStreamConcatenate_SetSize(This,libNewSize) \
( (This)->lpVtbl -> SetSize(This,libNewSize) )
#define IStreamConcatenate_CopyTo(This,pstm,cb,pcbRead,pcbWritten) \
( (This)->lpVtbl -> CopyTo(This,pstm,cb,pcbRead,pcbWritten) )
#define IStreamConcatenate_Commit(This,grfCommitFlags) \
( (This)->lpVtbl -> Commit(This,grfCommitFlags) )
#define IStreamConcatenate_Revert(This) \
( (This)->lpVtbl -> Revert(This) )
#define IStreamConcatenate_LockRegion(This,libOffset,cb,dwLockType) \
( (This)->lpVtbl -> LockRegion(This,libOffset,cb,dwLockType) )
#define IStreamConcatenate_UnlockRegion(This,libOffset,cb,dwLockType) \
( (This)->lpVtbl -> UnlockRegion(This,libOffset,cb,dwLockType) )
#define IStreamConcatenate_Stat(This,pstatstg,grfStatFlag) \
( (This)->lpVtbl -> Stat(This,pstatstg,grfStatFlag) )
#define IStreamConcatenate_Clone(This,ppstm) \
( (This)->lpVtbl -> Clone(This,ppstm) )
#define IStreamConcatenate_Initialize(This,stream1,stream2) \
( (This)->lpVtbl -> Initialize(This,stream1,stream2) )
#define IStreamConcatenate_Initialize2(This,streams,streamCount) \
( (This)->lpVtbl -> Initialize2(This,streams,streamCount) )
#define IStreamConcatenate_Append(This,stream) \
( (This)->lpVtbl -> Append(This,stream) )
#define IStreamConcatenate_Append2(This,streams,streamCount) \
( (This)->lpVtbl -> Append2(This,streams,streamCount) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IStreamConcatenate_INTERFACE_DEFINED__ */
#ifndef __IStreamInterleave_INTERFACE_DEFINED__
#define __IStreamInterleave_INTERFACE_DEFINED__
/* interface IStreamInterleave */
/* [helpstring][unique][uuid][object] */
EXTERN_C const IID IID_IStreamInterleave;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("27354147-7F64-5B0F-8F00-5D77AFBE261E")
IStreamInterleave : public IStream
{
public:
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Initialize(
/* [size_is][in] */ __RPC__in_ecount_full(streamCount) IStream **streams,
/* [size_is][in] */ __RPC__in_ecount_full(streamCount) ULONG *interleaveSizes,
/* [range][in] */ __RPC__in_range(1,0x7fffffff) ULONG streamCount) = 0;
};
#else /* C style interface */
typedef struct IStreamInterleaveVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IStreamInterleave * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IStreamInterleave * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IStreamInterleave * This);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Read )(
IStreamInterleave * This,
/* [annotation] */
__out_bcount_part(cb, *pcbRead) void *pv,
/* [in] */ ULONG cb,
/* [annotation] */
__out_opt ULONG *pcbRead);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Write )(
IStreamInterleave * This,
/* [annotation] */
__in_bcount(cb) const void *pv,
/* [in] */ ULONG cb,
/* [annotation] */
__out_opt ULONG *pcbWritten);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Seek )(
IStreamInterleave * This,
/* [in] */ LARGE_INTEGER dlibMove,
/* [in] */ DWORD dwOrigin,
/* [annotation] */
__out_opt ULARGE_INTEGER *plibNewPosition);
HRESULT ( STDMETHODCALLTYPE *SetSize )(
__RPC__in IStreamInterleave * This,
/* [in] */ ULARGE_INTEGER libNewSize);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *CopyTo )(
IStreamInterleave * This,
/* [unique][in] */ IStream *pstm,
/* [in] */ ULARGE_INTEGER cb,
/* [annotation] */
__out_opt ULARGE_INTEGER *pcbRead,
/* [annotation] */
__out_opt ULARGE_INTEGER *pcbWritten);
HRESULT ( STDMETHODCALLTYPE *Commit )(
__RPC__in IStreamInterleave * This,
/* [in] */ DWORD grfCommitFlags);
HRESULT ( STDMETHODCALLTYPE *Revert )(
__RPC__in IStreamInterleave * This);
HRESULT ( STDMETHODCALLTYPE *LockRegion )(
__RPC__in IStreamInterleave * This,
/* [in] */ ULARGE_INTEGER libOffset,
/* [in] */ ULARGE_INTEGER cb,
/* [in] */ DWORD dwLockType);
HRESULT ( STDMETHODCALLTYPE *UnlockRegion )(
__RPC__in IStreamInterleave * This,
/* [in] */ ULARGE_INTEGER libOffset,
/* [in] */ ULARGE_INTEGER cb,
/* [in] */ DWORD dwLockType);
HRESULT ( STDMETHODCALLTYPE *Stat )(
__RPC__in IStreamInterleave * This,
/* [out] */ __RPC__out STATSTG *pstatstg,
/* [in] */ DWORD grfStatFlag);
HRESULT ( STDMETHODCALLTYPE *Clone )(
__RPC__in IStreamInterleave * This,
/* [out] */ __RPC__deref_out_opt IStream **ppstm);
/* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Initialize )(
__RPC__in IStreamInterleave * This,
/* [size_is][in] */ __RPC__in_ecount_full(streamCount) IStream **streams,
/* [size_is][in] */ __RPC__in_ecount_full(streamCount) ULONG *interleaveSizes,
/* [range][in] */ __RPC__in_range(1,0x7fffffff) ULONG streamCount);
END_INTERFACE
} IStreamInterleaveVtbl;
interface IStreamInterleave
{
CONST_VTBL struct IStreamInterleaveVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IStreamInterleave_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IStreamInterleave_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IStreamInterleave_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IStreamInterleave_Read(This,pv,cb,pcbRead) \
( (This)->lpVtbl -> Read(This,pv,cb,pcbRead) )
#define IStreamInterleave_Write(This,pv,cb,pcbWritten) \
( (This)->lpVtbl -> Write(This,pv,cb,pcbWritten) )
#define IStreamInterleave_Seek(This,dlibMove,dwOrigin,plibNewPosition) \
( (This)->lpVtbl -> Seek(This,dlibMove,dwOrigin,plibNewPosition) )
#define IStreamInterleave_SetSize(This,libNewSize) \
( (This)->lpVtbl -> SetSize(This,libNewSize) )
#define IStreamInterleave_CopyTo(This,pstm,cb,pcbRead,pcbWritten) \
( (This)->lpVtbl -> CopyTo(This,pstm,cb,pcbRead,pcbWritten) )
#define IStreamInterleave_Commit(This,grfCommitFlags) \
( (This)->lpVtbl -> Commit(This,grfCommitFlags) )
#define IStreamInterleave_Revert(This) \
( (This)->lpVtbl -> Revert(This) )
#define IStreamInterleave_LockRegion(This,libOffset,cb,dwLockType) \
( (This)->lpVtbl -> LockRegion(This,libOffset,cb,dwLockType) )
#define IStreamInterleave_UnlockRegion(This,libOffset,cb,dwLockType) \
( (This)->lpVtbl -> UnlockRegion(This,libOffset,cb,dwLockType) )
#define IStreamInterleave_Stat(This,pstatstg,grfStatFlag) \
( (This)->lpVtbl -> Stat(This,pstatstg,grfStatFlag) )
#define IStreamInterleave_Clone(This,ppstm) \
( (This)->lpVtbl -> Clone(This,ppstm) )
#define IStreamInterleave_Initialize(This,streams,interleaveSizes,streamCount) \
( (This)->lpVtbl -> Initialize(This,streams,interleaveSizes,streamCount) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IStreamInterleave_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0028 */
/* [local] */
#define DISPID_IRAWCDIMAGECREATOR_CREATERESULTIMAGE 0x200
#define DISPID_IRAWCDIMAGECREATOR_ADDTRACK 0x201
#define DISPID_IRAWCDIMAGECREATOR_ADDSPECIALPREGAP 0x202
#define DISPID_IRAWCDIMAGECREATOR_ADDSUBCODERWGENERATOR 0x203
#define DISPID_IRAWCDIMAGECREATOR_RESULTINGIMAGETYPE 0x100
#define DISPID_IRAWCDIMAGECREATOR_STARTOFLEADOUT 0x101
#define DISPID_IRAWCDIMAGECREATOR_STARTOFLEADOUTLIMIT 0x102
#define DISPID_IRAWCDIMAGECREATOR_DISABLEGAPLESSAUDIO 0x103
#define DISPID_IRAWCDIMAGECREATOR_MEDIACATALOGNUMBER 0x104
#define DISPID_IRAWCDIMAGECREATOR_STARTINGTRACKNUMBER 0x105
#define DISPID_IRAWCDIMAGECREATOR_TRACKINFO 0x106
#define DISPID_IRAWCDIMAGECREATOR_NUMBEROFEXISTINGTRACKS 0x107
#define DISPID_IRAWCDIMAGECREATOR_USEDSECTORSONDISC 0x108
#define DISPID_IRAWCDIMAGECREATOR_EXPECTEDTABLEOFCONTENTS 0x109
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0028_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0028_v0_0_s_ifspec;
#ifndef __IRawCDImageCreator_INTERFACE_DEFINED__
#define __IRawCDImageCreator_INTERFACE_DEFINED__
/* interface IRawCDImageCreator */
/* [helpstring][unique][uuid][dual][nonextensible][object] */
EXTERN_C const IID IID_IRawCDImageCreator;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("25983550-9D65-49CE-B335-40630D901227")
IRawCDImageCreator : public IDispatch
{
public:
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE CreateResultImage(
/* [retval][out] */ __RPC__deref_out_opt IStream **resultStream) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddTrack(
/* [in] */ IMAPI_CD_SECTOR_TYPE dataType,
/* [in] */ __RPC__in_opt IStream *data,
/* [retval][out] */ __RPC__out LONG *trackIndex) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddSpecialPregap(
/* [in] */ __RPC__in_opt IStream *data) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddSubcodeRWGenerator(
/* [in] */ __RPC__in_opt IStream *subcode) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ResultingImageType(
/* [in] */ IMAPI_FORMAT2_RAW_CD_DATA_SECTOR_TYPE value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ResultingImageType(
/* [retval][ref][out] */ __RPC__out IMAPI_FORMAT2_RAW_CD_DATA_SECTOR_TYPE *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StartOfLeadout(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_StartOfLeadoutLimit(
/* [in] */ LONG value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StartOfLeadoutLimit(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DisableGaplessAudio(
/* [in] */ VARIANT_BOOL value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DisableGaplessAudio(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_MediaCatalogNumber(
/* [in] */ __RPC__in BSTR value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MediaCatalogNumber(
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_StartingTrackNumber(
/* [range][in] */ __RPC__in_range(1,99) LONG value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StartingTrackNumber(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TrackInfo(
/* [in] */ LONG trackIndex,
/* [retval][ref][out] */ __RPC__deref_out_opt IRawCDImageTrackInfo **value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NumberOfExistingTracks(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LastUsedUserSectorInImage(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExpectedTableOfContents(
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value) = 0;
};
#else /* C style interface */
typedef struct IRawCDImageCreatorVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IRawCDImageCreator * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IRawCDImageCreator * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IRawCDImageCreator * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in IRawCDImageCreator * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in IRawCDImageCreator * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in IRawCDImageCreator * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
IRawCDImageCreator * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CreateResultImage )(
__RPC__in IRawCDImageCreator * This,
/* [retval][out] */ __RPC__deref_out_opt IStream **resultStream);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddTrack )(
__RPC__in IRawCDImageCreator * This,
/* [in] */ IMAPI_CD_SECTOR_TYPE dataType,
/* [in] */ __RPC__in_opt IStream *data,
/* [retval][out] */ __RPC__out LONG *trackIndex);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddSpecialPregap )(
__RPC__in IRawCDImageCreator * This,
/* [in] */ __RPC__in_opt IStream *data);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddSubcodeRWGenerator )(
__RPC__in IRawCDImageCreator * This,
/* [in] */ __RPC__in_opt IStream *subcode);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ResultingImageType )(
__RPC__in IRawCDImageCreator * This,
/* [in] */ IMAPI_FORMAT2_RAW_CD_DATA_SECTOR_TYPE value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ResultingImageType )(
__RPC__in IRawCDImageCreator * This,
/* [retval][ref][out] */ __RPC__out IMAPI_FORMAT2_RAW_CD_DATA_SECTOR_TYPE *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StartOfLeadout )(
__RPC__in IRawCDImageCreator * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StartOfLeadoutLimit )(
__RPC__in IRawCDImageCreator * This,
/* [in] */ LONG value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StartOfLeadoutLimit )(
__RPC__in IRawCDImageCreator * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DisableGaplessAudio )(
__RPC__in IRawCDImageCreator * This,
/* [in] */ VARIANT_BOOL value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DisableGaplessAudio )(
__RPC__in IRawCDImageCreator * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MediaCatalogNumber )(
__RPC__in IRawCDImageCreator * This,
/* [in] */ __RPC__in BSTR value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaCatalogNumber )(
__RPC__in IRawCDImageCreator * This,
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StartingTrackNumber )(
__RPC__in IRawCDImageCreator * This,
/* [range][in] */ __RPC__in_range(1,99) LONG value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StartingTrackNumber )(
__RPC__in IRawCDImageCreator * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrackInfo )(
__RPC__in IRawCDImageCreator * This,
/* [in] */ LONG trackIndex,
/* [retval][ref][out] */ __RPC__deref_out_opt IRawCDImageTrackInfo **value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_NumberOfExistingTracks )(
__RPC__in IRawCDImageCreator * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastUsedUserSectorInImage )(
__RPC__in IRawCDImageCreator * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExpectedTableOfContents )(
__RPC__in IRawCDImageCreator * This,
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value);
END_INTERFACE
} IRawCDImageCreatorVtbl;
interface IRawCDImageCreator
{
CONST_VTBL struct IRawCDImageCreatorVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IRawCDImageCreator_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IRawCDImageCreator_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IRawCDImageCreator_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IRawCDImageCreator_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define IRawCDImageCreator_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define IRawCDImageCreator_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define IRawCDImageCreator_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define IRawCDImageCreator_CreateResultImage(This,resultStream) \
( (This)->lpVtbl -> CreateResultImage(This,resultStream) )
#define IRawCDImageCreator_AddTrack(This,dataType,data,trackIndex) \
( (This)->lpVtbl -> AddTrack(This,dataType,data,trackIndex) )
#define IRawCDImageCreator_AddSpecialPregap(This,data) \
( (This)->lpVtbl -> AddSpecialPregap(This,data) )
#define IRawCDImageCreator_AddSubcodeRWGenerator(This,subcode) \
( (This)->lpVtbl -> AddSubcodeRWGenerator(This,subcode) )
#define IRawCDImageCreator_put_ResultingImageType(This,value) \
( (This)->lpVtbl -> put_ResultingImageType(This,value) )
#define IRawCDImageCreator_get_ResultingImageType(This,value) \
( (This)->lpVtbl -> get_ResultingImageType(This,value) )
#define IRawCDImageCreator_get_StartOfLeadout(This,value) \
( (This)->lpVtbl -> get_StartOfLeadout(This,value) )
#define IRawCDImageCreator_put_StartOfLeadoutLimit(This,value) \
( (This)->lpVtbl -> put_StartOfLeadoutLimit(This,value) )
#define IRawCDImageCreator_get_StartOfLeadoutLimit(This,value) \
( (This)->lpVtbl -> get_StartOfLeadoutLimit(This,value) )
#define IRawCDImageCreator_put_DisableGaplessAudio(This,value) \
( (This)->lpVtbl -> put_DisableGaplessAudio(This,value) )
#define IRawCDImageCreator_get_DisableGaplessAudio(This,value) \
( (This)->lpVtbl -> get_DisableGaplessAudio(This,value) )
#define IRawCDImageCreator_put_MediaCatalogNumber(This,value) \
( (This)->lpVtbl -> put_MediaCatalogNumber(This,value) )
#define IRawCDImageCreator_get_MediaCatalogNumber(This,value) \
( (This)->lpVtbl -> get_MediaCatalogNumber(This,value) )
#define IRawCDImageCreator_put_StartingTrackNumber(This,value) \
( (This)->lpVtbl -> put_StartingTrackNumber(This,value) )
#define IRawCDImageCreator_get_StartingTrackNumber(This,value) \
( (This)->lpVtbl -> get_StartingTrackNumber(This,value) )
#define IRawCDImageCreator_get_TrackInfo(This,trackIndex,value) \
( (This)->lpVtbl -> get_TrackInfo(This,trackIndex,value) )
#define IRawCDImageCreator_get_NumberOfExistingTracks(This,value) \
( (This)->lpVtbl -> get_NumberOfExistingTracks(This,value) )
#define IRawCDImageCreator_get_LastUsedUserSectorInImage(This,value) \
( (This)->lpVtbl -> get_LastUsedUserSectorInImage(This,value) )
#define IRawCDImageCreator_get_ExpectedTableOfContents(This,value) \
( (This)->lpVtbl -> get_ExpectedTableOfContents(This,value) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IRawCDImageCreator_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0029 */
/* [local] */
#define DISPID_IRAWCDTRACKINFO_STARTINGLBA 0x100
#define DISPID_IRAWCDTRACKINFO_SECTORCOUNT 0x101
#define DISPID_IRAWCDTRACKINFO_TRACKNUMBER 0x102
#define DISPID_IRAWCDTRACKINFO_SECTORTYPE 0x103
#define DISPID_IRAWCDTRACKINFO_ISRC 0x104
#define DISPID_IRAWCDTRACKINFO_DIGITALAUDIOCOPYSETTING 0x105
#define DISPID_IRAWCDTRACKINFO_AUDIOHASPREEMPHASIS 0x106
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0029_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0029_v0_0_s_ifspec;
#ifndef __IRawCDImageTrackInfo_INTERFACE_DEFINED__
#define __IRawCDImageTrackInfo_INTERFACE_DEFINED__
/* interface IRawCDImageTrackInfo */
/* [helpstring][unique][uuid][dual][nonextensible][object] */
EXTERN_C const IID IID_IRawCDImageTrackInfo;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("25983551-9D65-49CE-B335-40630D901227")
IRawCDImageTrackInfo : public IDispatch
{
public:
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StartingLba(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SectorCount(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TrackNumber(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SectorType(
/* [retval][ref][out] */ __RPC__out IMAPI_CD_SECTOR_TYPE *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ISRC(
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ISRC(
/* [in] */ __RPC__in BSTR value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DigitalAudioCopySetting(
/* [retval][ref][out] */ __RPC__out IMAPI_CD_TRACK_DIGITAL_COPY_SETTING *value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DigitalAudioCopySetting(
/* [in] */ IMAPI_CD_TRACK_DIGITAL_COPY_SETTING value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AudioHasPreemphasis(
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AudioHasPreemphasis(
/* [in] */ VARIANT_BOOL value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TrackIndexes(
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddTrackIndex(
/* [range][in] */ __RPC__in_range(0,0x7fffffff) LONG lbaOffset) = 0;
virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ClearTrackIndex(
/* [range][in] */ __RPC__in_range(0,0x7fffffff) LONG lbaOffset) = 0;
};
#else /* C style interface */
typedef struct IRawCDImageTrackInfoVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IRawCDImageTrackInfo * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IRawCDImageTrackInfo * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IRawCDImageTrackInfo * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in IRawCDImageTrackInfo * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in IRawCDImageTrackInfo * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in IRawCDImageTrackInfo * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
IRawCDImageTrackInfo * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StartingLba )(
__RPC__in IRawCDImageTrackInfo * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SectorCount )(
__RPC__in IRawCDImageTrackInfo * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrackNumber )(
__RPC__in IRawCDImageTrackInfo * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SectorType )(
__RPC__in IRawCDImageTrackInfo * This,
/* [retval][ref][out] */ __RPC__out IMAPI_CD_SECTOR_TYPE *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ISRC )(
__RPC__in IRawCDImageTrackInfo * This,
/* [retval][ref][out] */ __RPC__deref_out_opt BSTR *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ISRC )(
__RPC__in IRawCDImageTrackInfo * This,
/* [in] */ __RPC__in BSTR value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DigitalAudioCopySetting )(
__RPC__in IRawCDImageTrackInfo * This,
/* [retval][ref][out] */ __RPC__out IMAPI_CD_TRACK_DIGITAL_COPY_SETTING *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DigitalAudioCopySetting )(
__RPC__in IRawCDImageTrackInfo * This,
/* [in] */ IMAPI_CD_TRACK_DIGITAL_COPY_SETTING value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AudioHasPreemphasis )(
__RPC__in IRawCDImageTrackInfo * This,
/* [retval][ref][out] */ __RPC__out VARIANT_BOOL *value);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AudioHasPreemphasis )(
__RPC__in IRawCDImageTrackInfo * This,
/* [in] */ VARIANT_BOOL value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TrackIndexes )(
__RPC__in IRawCDImageTrackInfo * This,
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddTrackIndex )(
__RPC__in IRawCDImageTrackInfo * This,
/* [range][in] */ __RPC__in_range(0,0x7fffffff) LONG lbaOffset);
/* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ClearTrackIndex )(
__RPC__in IRawCDImageTrackInfo * This,
/* [range][in] */ __RPC__in_range(0,0x7fffffff) LONG lbaOffset);
END_INTERFACE
} IRawCDImageTrackInfoVtbl;
interface IRawCDImageTrackInfo
{
CONST_VTBL struct IRawCDImageTrackInfoVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IRawCDImageTrackInfo_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IRawCDImageTrackInfo_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IRawCDImageTrackInfo_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IRawCDImageTrackInfo_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define IRawCDImageTrackInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define IRawCDImageTrackInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define IRawCDImageTrackInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define IRawCDImageTrackInfo_get_StartingLba(This,value) \
( (This)->lpVtbl -> get_StartingLba(This,value) )
#define IRawCDImageTrackInfo_get_SectorCount(This,value) \
( (This)->lpVtbl -> get_SectorCount(This,value) )
#define IRawCDImageTrackInfo_get_TrackNumber(This,value) \
( (This)->lpVtbl -> get_TrackNumber(This,value) )
#define IRawCDImageTrackInfo_get_SectorType(This,value) \
( (This)->lpVtbl -> get_SectorType(This,value) )
#define IRawCDImageTrackInfo_get_ISRC(This,value) \
( (This)->lpVtbl -> get_ISRC(This,value) )
#define IRawCDImageTrackInfo_put_ISRC(This,value) \
( (This)->lpVtbl -> put_ISRC(This,value) )
#define IRawCDImageTrackInfo_get_DigitalAudioCopySetting(This,value) \
( (This)->lpVtbl -> get_DigitalAudioCopySetting(This,value) )
#define IRawCDImageTrackInfo_put_DigitalAudioCopySetting(This,value) \
( (This)->lpVtbl -> put_DigitalAudioCopySetting(This,value) )
#define IRawCDImageTrackInfo_get_AudioHasPreemphasis(This,value) \
( (This)->lpVtbl -> get_AudioHasPreemphasis(This,value) )
#define IRawCDImageTrackInfo_put_AudioHasPreemphasis(This,value) \
( (This)->lpVtbl -> put_AudioHasPreemphasis(This,value) )
#define IRawCDImageTrackInfo_get_TrackIndexes(This,value) \
( (This)->lpVtbl -> get_TrackIndexes(This,value) )
#define IRawCDImageTrackInfo_AddTrackIndex(This,lbaOffset) \
( (This)->lpVtbl -> AddTrackIndex(This,lbaOffset) )
#define IRawCDImageTrackInfo_ClearTrackIndex(This,lbaOffset) \
( (This)->lpVtbl -> ClearTrackIndex(This,lbaOffset) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IRawCDImageTrackInfo_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0030 */
/* [local] */
#define DISPID_IBLOCKRANGE_STARTLBA 0x100
#define DISPID_IBLOCKRANGE_ENDLBA 0x101
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0030_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0030_v0_0_s_ifspec;
#ifndef __IBlockRange_INTERFACE_DEFINED__
#define __IBlockRange_INTERFACE_DEFINED__
/* interface IBlockRange */
/* [helpstring][unique][uuid][dual][object] */
EXTERN_C const IID IID_IBlockRange;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("B507CA25-2204-11DD-966A-001AA01BBC58")
IBlockRange : public IDispatch
{
public:
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StartLba(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_EndLba(
/* [retval][ref][out] */ __RPC__out LONG *value) = 0;
};
#else /* C style interface */
typedef struct IBlockRangeVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IBlockRange * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IBlockRange * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IBlockRange * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in IBlockRange * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in IBlockRange * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in IBlockRange * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
IBlockRange * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StartLba )(
__RPC__in IBlockRange * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EndLba )(
__RPC__in IBlockRange * This,
/* [retval][ref][out] */ __RPC__out LONG *value);
END_INTERFACE
} IBlockRangeVtbl;
interface IBlockRange
{
CONST_VTBL struct IBlockRangeVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IBlockRange_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IBlockRange_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IBlockRange_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IBlockRange_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define IBlockRange_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define IBlockRange_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define IBlockRange_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define IBlockRange_get_StartLba(This,value) \
( (This)->lpVtbl -> get_StartLba(This,value) )
#define IBlockRange_get_EndLba(This,value) \
( (This)->lpVtbl -> get_EndLba(This,value) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IBlockRange_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0031 */
/* [local] */
#define DISPID_IBLOCKRANGELIST_BLOCKRANGES 0x100
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0031_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0031_v0_0_s_ifspec;
#ifndef __IBlockRangeList_INTERFACE_DEFINED__
#define __IBlockRangeList_INTERFACE_DEFINED__
/* interface IBlockRangeList */
/* [helpstring][unique][uuid][dual][object] */
EXTERN_C const IID IID_IBlockRangeList;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("B507CA26-2204-11DD-966A-001AA01BBC58")
IBlockRangeList : public IDispatch
{
public:
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BlockRanges(
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value) = 0;
};
#else /* C style interface */
typedef struct IBlockRangeListVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
__RPC__in IBlockRangeList * This,
/* [in] */ __RPC__in REFIID riid,
/* [annotation][iid_is][out] */
__RPC__deref_out void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
__RPC__in IBlockRangeList * This);
ULONG ( STDMETHODCALLTYPE *Release )(
__RPC__in IBlockRangeList * This);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
__RPC__in IBlockRangeList * This,
/* [out] */ __RPC__out UINT *pctinfo);
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
__RPC__in IBlockRangeList * This,
/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
__RPC__in IBlockRangeList * This,
/* [in] */ __RPC__in REFIID riid,
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
/* [in] */ LCID lcid,
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
IBlockRangeList * This,
/* [in] */ DISPID dispIdMember,
/* [in] */ REFIID riid,
/* [in] */ LCID lcid,
/* [in] */ WORD wFlags,
/* [out][in] */ DISPPARAMS *pDispParams,
/* [out] */ VARIANT *pVarResult,
/* [out] */ EXCEPINFO *pExcepInfo,
/* [out] */ UINT *puArgErr);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BlockRanges )(
__RPC__in IBlockRangeList * This,
/* [retval][ref][out] */ __RPC__deref_out_opt SAFEARRAY * *value);
END_INTERFACE
} IBlockRangeListVtbl;
interface IBlockRangeList
{
CONST_VTBL struct IBlockRangeListVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IBlockRangeList_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IBlockRangeList_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IBlockRangeList_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IBlockRangeList_GetTypeInfoCount(This,pctinfo) \
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
#define IBlockRangeList_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
#define IBlockRangeList_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
#define IBlockRangeList_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
#define IBlockRangeList_get_BlockRanges(This,value) \
( (This)->lpVtbl -> get_BlockRanges(This,value) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IBlockRangeList_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_imapi2_0000_0032 */
/* [local] */
//
// IMAPIv2 version information for TYPELib loading
//
#define IMAPILib2_MajorVersion 1
#define IMAPILib2_MinorVersion 0
#define LIBID_IMAPILib2 LIBID_IMAPI2
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0032_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_imapi2_0000_0032_v0_0_s_ifspec;
#ifndef __IMAPI2_LIBRARY_DEFINED__
#define __IMAPI2_LIBRARY_DEFINED__
/* library IMAPI2 */
/* [helpstring][version][uuid] */
EXTERN_C const IID LIBID_IMAPI2;
EXTERN_C const CLSID CLSID_MsftDiscMaster2;
#ifdef __cplusplus
class DECLSPEC_UUID("2735412E-7F64-5B0F-8F00-5D77AFBE261E")
MsftDiscMaster2;
#endif
EXTERN_C const CLSID CLSID_MsftDiscRecorder2;
#ifdef __cplusplus
class DECLSPEC_UUID("2735412D-7F64-5B0F-8F00-5D77AFBE261E")
MsftDiscRecorder2;
#endif
EXTERN_C const CLSID CLSID_MsftWriteEngine2;
#ifdef __cplusplus
class DECLSPEC_UUID("2735412C-7F64-5B0F-8F00-5D77AFBE261E")
MsftWriteEngine2;
#endif
EXTERN_C const CLSID CLSID_MsftDiscFormat2Erase;
#ifdef __cplusplus
class DECLSPEC_UUID("2735412B-7F64-5B0F-8F00-5D77AFBE261E")
MsftDiscFormat2Erase;
#endif
EXTERN_C const CLSID CLSID_MsftDiscFormat2Data;
#ifdef __cplusplus
class DECLSPEC_UUID("2735412A-7F64-5B0F-8F00-5D77AFBE261E")
MsftDiscFormat2Data;
#endif
EXTERN_C const CLSID CLSID_MsftDiscFormat2TrackAtOnce;
#ifdef __cplusplus
class DECLSPEC_UUID("27354129-7F64-5B0F-8F00-5D77AFBE261E")
MsftDiscFormat2TrackAtOnce;
#endif
EXTERN_C const CLSID CLSID_MsftDiscFormat2RawCD;
#ifdef __cplusplus
class DECLSPEC_UUID("27354128-7F64-5B0F-8F00-5D77AFBE261E")
MsftDiscFormat2RawCD;
#endif
EXTERN_C const CLSID CLSID_MsftStreamZero;
#ifdef __cplusplus
class DECLSPEC_UUID("27354127-7F64-5B0F-8F00-5D77AFBE261E")
MsftStreamZero;
#endif
EXTERN_C const CLSID CLSID_MsftStreamPrng001;
#ifdef __cplusplus
class DECLSPEC_UUID("27354126-7F64-5B0F-8F00-5D77AFBE261E")
MsftStreamPrng001;
#endif
EXTERN_C const CLSID CLSID_MsftStreamConcatenate;
#ifdef __cplusplus
class DECLSPEC_UUID("27354125-7F64-5B0F-8F00-5D77AFBE261E")
MsftStreamConcatenate;
#endif
EXTERN_C const CLSID CLSID_MsftStreamInterleave;
#ifdef __cplusplus
class DECLSPEC_UUID("27354124-7F64-5B0F-8F00-5D77AFBE261E")
MsftStreamInterleave;
#endif
EXTERN_C const CLSID CLSID_MsftWriteSpeedDescriptor;
#ifdef __cplusplus
class DECLSPEC_UUID("27354123-7F64-5B0F-8F00-5D77AFBE261E")
MsftWriteSpeedDescriptor;
#endif
EXTERN_C const CLSID CLSID_MsftMultisessionSequential;
#ifdef __cplusplus
class DECLSPEC_UUID("27354122-7F64-5B0F-8F00-5D77AFBE261E")
MsftMultisessionSequential;
#endif
EXTERN_C const CLSID CLSID_MsftMultisessionRandomWrite;
#ifdef __cplusplus
class DECLSPEC_UUID("B507CA24-2204-11DD-966A-001AA01BBC58")
MsftMultisessionRandomWrite;
#endif
EXTERN_C const CLSID CLSID_MsftRawCDImageCreator;
#ifdef __cplusplus
class DECLSPEC_UUID("25983561-9D65-49CE-B335-40630D901227")
MsftRawCDImageCreator;
#endif
#endif /* __IMAPI2_LIBRARY_DEFINED__ */
/* Additional Prototypes for ALL interfaces */
unsigned long __RPC_USER BSTR_UserSize( __RPC__in unsigned long *, unsigned long , __RPC__in BSTR * );
unsigned char * __RPC_USER BSTR_UserMarshal( __RPC__in unsigned long *, __RPC__inout_xcount(0) unsigned char *, __RPC__in BSTR * );
unsigned char * __RPC_USER BSTR_UserUnmarshal(__RPC__in unsigned long *, __RPC__in_xcount(0) unsigned char *, __RPC__out BSTR * );
void __RPC_USER BSTR_UserFree( __RPC__in unsigned long *, __RPC__in BSTR * );
unsigned long __RPC_USER LPSAFEARRAY_UserSize( __RPC__in unsigned long *, unsigned long , __RPC__in LPSAFEARRAY * );
unsigned char * __RPC_USER LPSAFEARRAY_UserMarshal( __RPC__in unsigned long *, __RPC__inout_xcount(0) unsigned char *, __RPC__in LPSAFEARRAY * );
unsigned char * __RPC_USER LPSAFEARRAY_UserUnmarshal(__RPC__in unsigned long *, __RPC__in_xcount(0) unsigned char *, __RPC__out LPSAFEARRAY * );
void __RPC_USER LPSAFEARRAY_UserFree( __RPC__in unsigned long *, __RPC__in LPSAFEARRAY * );
unsigned long __RPC_USER BSTR_UserSize64( __RPC__in unsigned long *, unsigned long , __RPC__in BSTR * );
unsigned char * __RPC_USER BSTR_UserMarshal64( __RPC__in unsigned long *, __RPC__inout_xcount(0) unsigned char *, __RPC__in BSTR * );
unsigned char * __RPC_USER BSTR_UserUnmarshal64(__RPC__in unsigned long *, __RPC__in_xcount(0) unsigned char *, __RPC__out BSTR * );
void __RPC_USER BSTR_UserFree64( __RPC__in unsigned long *, __RPC__in BSTR * );
unsigned long __RPC_USER LPSAFEARRAY_UserSize64( __RPC__in unsigned long *, unsigned long , __RPC__in LPSAFEARRAY * );
unsigned char * __RPC_USER LPSAFEARRAY_UserMarshal64( __RPC__in unsigned long *, __RPC__inout_xcount(0) unsigned char *, __RPC__in LPSAFEARRAY * );
unsigned char * __RPC_USER LPSAFEARRAY_UserUnmarshal64(__RPC__in unsigned long *, __RPC__in_xcount(0) unsigned char *, __RPC__out LPSAFEARRAY * );
void __RPC_USER LPSAFEARRAY_UserFree64( __RPC__in unsigned long *, __RPC__in LPSAFEARRAY * );
/* end of Additional Prototypes */
#ifdef __cplusplus
}
#endif
#endif