/*** Autogenerated by WIDL 1.6 from include/wmsdkidl.idl - Do not edit ***/ #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __wmsdkidl_h__ #define __wmsdkidl_h__ /* Forward declarations */ #ifndef __IWMStatusCallback_FWD_DEFINED__ #define __IWMStatusCallback_FWD_DEFINED__ typedef interface IWMStatusCallback IWMStatusCallback; #endif #ifndef __IWMReaderCallback_FWD_DEFINED__ #define __IWMReaderCallback_FWD_DEFINED__ typedef interface IWMReaderCallback IWMReaderCallback; #endif #ifndef __IWMStreamList_FWD_DEFINED__ #define __IWMStreamList_FWD_DEFINED__ typedef interface IWMStreamList IWMStreamList; #endif #ifndef __IWMMutualExclusion_FWD_DEFINED__ #define __IWMMutualExclusion_FWD_DEFINED__ typedef interface IWMMutualExclusion IWMMutualExclusion; #endif #ifndef __IWMStreamConfig_FWD_DEFINED__ #define __IWMStreamConfig_FWD_DEFINED__ typedef interface IWMStreamConfig IWMStreamConfig; #endif #ifndef __IWMProfile_FWD_DEFINED__ #define __IWMProfile_FWD_DEFINED__ typedef interface IWMProfile IWMProfile; #endif #ifndef __IWMProfileManager_FWD_DEFINED__ #define __IWMProfileManager_FWD_DEFINED__ typedef interface IWMProfileManager IWMProfileManager; #endif #ifndef __IWMMediaProps_FWD_DEFINED__ #define __IWMMediaProps_FWD_DEFINED__ typedef interface IWMMediaProps IWMMediaProps; #endif #ifndef __IWMOutputMediaProps_FWD_DEFINED__ #define __IWMOutputMediaProps_FWD_DEFINED__ typedef interface IWMOutputMediaProps IWMOutputMediaProps; #endif #ifndef __IWMMetadataEditor_FWD_DEFINED__ #define __IWMMetadataEditor_FWD_DEFINED__ typedef interface IWMMetadataEditor IWMMetadataEditor; #endif #ifndef __IWMReader_FWD_DEFINED__ #define __IWMReader_FWD_DEFINED__ typedef interface IWMReader IWMReader; #endif #ifndef __IWMPlayerHook_FWD_DEFINED__ #define __IWMPlayerHook_FWD_DEFINED__ typedef interface IWMPlayerHook IWMPlayerHook; #endif #ifndef __IWMReaderAdvanced_FWD_DEFINED__ #define __IWMReaderAdvanced_FWD_DEFINED__ typedef interface IWMReaderAdvanced IWMReaderAdvanced; #endif #ifndef __IWMReaderAdvanced2_FWD_DEFINED__ #define __IWMReaderAdvanced2_FWD_DEFINED__ typedef interface IWMReaderAdvanced2 IWMReaderAdvanced2; #endif #ifndef __IWMReaderAdvanced3_FWD_DEFINED__ #define __IWMReaderAdvanced3_FWD_DEFINED__ typedef interface IWMReaderAdvanced3 IWMReaderAdvanced3; #endif #ifndef __IWMReaderAdvanced4_FWD_DEFINED__ #define __IWMReaderAdvanced4_FWD_DEFINED__ typedef interface IWMReaderAdvanced4 IWMReaderAdvanced4; #endif #ifndef __IWMReaderAdvanced5_FWD_DEFINED__ #define __IWMReaderAdvanced5_FWD_DEFINED__ typedef interface IWMReaderAdvanced5 IWMReaderAdvanced5; #endif #ifndef __IWMReaderAdvanced6_FWD_DEFINED__ #define __IWMReaderAdvanced6_FWD_DEFINED__ typedef interface IWMReaderAdvanced6 IWMReaderAdvanced6; #endif #ifndef __IWMSyncReader_FWD_DEFINED__ #define __IWMSyncReader_FWD_DEFINED__ typedef interface IWMSyncReader IWMSyncReader; #endif #ifndef __IWMInputMediaProps_FWD_DEFINED__ #define __IWMInputMediaProps_FWD_DEFINED__ typedef interface IWMInputMediaProps IWMInputMediaProps; #endif #ifndef __IWMWriterSink_FWD_DEFINED__ #define __IWMWriterSink_FWD_DEFINED__ typedef interface IWMWriterSink IWMWriterSink; #endif #ifndef __IWMWriter_FWD_DEFINED__ #define __IWMWriter_FWD_DEFINED__ typedef interface IWMWriter IWMWriter; #endif #ifndef __IWMWriterAdvanced_FWD_DEFINED__ #define __IWMWriterAdvanced_FWD_DEFINED__ typedef interface IWMWriterAdvanced IWMWriterAdvanced; #endif #ifndef __IWMWriterAdvanced2_FWD_DEFINED__ #define __IWMWriterAdvanced2_FWD_DEFINED__ typedef interface IWMWriterAdvanced2 IWMWriterAdvanced2; #endif #ifndef __IWMWriterAdvanced3_FWD_DEFINED__ #define __IWMWriterAdvanced3_FWD_DEFINED__ typedef interface IWMWriterAdvanced3 IWMWriterAdvanced3; #endif /* Headers for imported files */ #include #include #ifdef __cplusplus extern "C" { #endif typedef UINT64 QWORD; typedef struct _WMMediaType { GUID majortype; GUID subtype; WINBOOL bFixedSizeSamples; WINBOOL bTemporalCompression; ULONG lSampleSize; GUID formattype; IUnknown *pUnk; ULONG cbFormat; BYTE *pbFormat; } WM_MEDIA_TYPE; typedef struct _WMWriterStatistics { QWORD qwSampleCount; QWORD qwByteCount; QWORD qwDroppedSampleCount; QWORD qwDroppedByteCount; DWORD dwCurrentBitrate; DWORD dwAverageBitrate; DWORD dwExpectedBitrate; DWORD dwCurrentSampleRate; DWORD dwAverageSampleRate; DWORD dwExpectedSampleRate; } WM_WRITER_STATISTICS; typedef struct _WMWriterStatisticsEx { DWORD dwBitratePlusOverhead; DWORD dwCurrentSampleDropRateInQueue; DWORD dwCurrentSampleDropRateInCodec; DWORD dwCurrentSampleDropRateInMultiplexer; DWORD dwTotalSampleDropsInQueue; DWORD dwTotalSampleDropsInCodec; DWORD dwTotalSampleDropsInMultiplexer; } WM_WRITER_STATISTICS_EX; typedef struct _WMReaderStatistics { DWORD cbSize; DWORD dwBandwidth; DWORD cPacketsReceived; DWORD cPacketsRecovered; DWORD cPacketsLost; WORD wQuality; } WM_READER_STATISTICS; typedef struct _WMReaderClientInfo { DWORD cbSize; WCHAR *wszLang; WCHAR *wszBrowserUserAgent; WCHAR *wszBrowserWebPage; QWORD qwReserved; LPARAM *pReserved; WCHAR *wszHostExe; QWORD qwHostVersion; WCHAR *wszPlayerUserAgent; } WM_READER_CLIENTINFO; typedef enum WMT_ATTR_DATATYPE { WMT_TYPE_DWORD = 0, WMT_TYPE_STRING = 1, WMT_TYPE_BINARY = 2, WMT_TYPE_BOOL = 3, WMT_TYPE_QWORD = 4, WMT_TYPE_WORD = 5, WMT_TYPE_GUID = 6 } WMT_ATTR_DATATYPE; typedef enum WMT_STATUS { WMT_ERROR = 0, WMT_OPENED = 1, WMT_BUFFERING_START = 2, WMT_BUFFERING_STOP = 3, WMT_EOF = 4, WMT_END_OF_FILE = 4, WMT_END_OF_SEGMENT = 5, WMT_END_OF_STREAMING = 6, WMT_LOCATING = 7, WMT_CONNECTING = 8, WMT_NO_RIGHTS = 9, WMT_MISSING_CODEC = 10, WMT_STARTED = 11, WMT_STOPPED = 12, WMT_CLOSED = 13, WMT_STRIDING = 14, WMT_TIMER = 15, WMT_INDEX_PROGRESS = 16, WMT_SAVEAS_START = 17, WMT_SAVEAS_STOP = 18, WMT_NEW_SOURCEFLAGS = 19, WMT_NEW_METADATA = 20, WMT_BACKUPRESTORE_BEGIN = 21, WMT_SOURCE_SWITCH = 22, WMT_ACQUIRE_LICENSE = 23, WMT_INDIVIDUALIZE = 24, WMT_NEEDS_INDIVIDUALIZATION = 25, WMT_NO_RIGHTS_EX = 26, WMT_BACKUPRESTORE_END = 27, WMT_BACKUPRESTORE_CONNECTING = 28, WMT_BACKUPRESTORE_DISCONNECTING = 29, WMT_ERROR_WITHURL = 30, WMT_RESTRICTED_LICENSE = 31, WMT_CLIENT_CONNECT = 32, WMT_CLIENT_DISCONNECT = 33, WMT_NATIVE_OUTPUT_PROPS_CHANGED = 34, WMT_RECONNECT_START = 35, WMT_RECONNECT_END = 36, WMT_CLIENT_CONNECT_EX = 37, WMT_CLIENT_DISCONNECT_EX = 38, WMT_SET_FEC_SPAN = 39, WMT_PREROLL_READY = 40, WMT_PREROLL_COMPLETE = 41, WMT_CLIENT_PROPERTIES = 42, WMT_LICENSEURL_SIGNATURE_STATE = 43, WMT_INIT_PLAYLIST_BURN = 44, WMT_TRANSCRYPTOR_INIT = 45, WMT_TRANSCRYPTOR_SEEKED = 46, WMT_TRANSCRYPTOR_READ = 47, WMT_TRANSCRYPTOR_CLOSED = 48, WMT_PROXIMITY_RESULT = 49, WMT_PROXIMITY_COMPLETED = 50, WMT_CONTENT_ENABLER = 51 } WMT_STATUS; typedef enum WMT_STREAM_SELECTION { WMT_OFF = 0, WMT_CLEANPOINT_ONLY = 1, WMT_ON = 2 } WMT_STREAM_SELECTION; typedef enum WMT_VERSION { WMT_VER_4_0 = 0x40000, WMT_VER_7_0 = 0x70000, WMT_VER_8_0 = 0x80000, WMT_VER_9_0 = 0x90000 } WMT_VERSION; typedef enum WMT_PLAY_MODE { WMT_PLAY_MODE_AUTOSELECT = 0, WMT_PLAY_MODE_LOCAL = 1, WMT_PLAY_MODE_DOWNLOAD = 2, WMT_PLAY_MODE_STREAMING = 3 } WMT_PLAY_MODE; typedef enum tagWMT_OFFSET_FORMAT { WMT_OFFSET_FORMAT_100NS = 0, WMT_OFFSET_FORMAT_FRAME_NUMBERS = 1, WMT_OFFSET_FORMAT_PLAYLIST_OFFSET = 2, WMT_OFFSET_FORMAT_TIMECODE = 3, WMT_OFFSET_FORMAT_100NS_APPROXIMATE = 4 } WMT_OFFSET_FORMAT; typedef LPCWSTR LPCWSTR_WMSDK_TYPE_SAFE; /***************************************************************************** * IWMStatusCallback interface */ #ifndef __IWMStatusCallback_INTERFACE_DEFINED__ #define __IWMStatusCallback_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMStatusCallback, 0x6d7cdc70, 0x9888, 0x11d3, 0x8e,0xdc, 0x00,0xc0,0x4f,0x61,0x09,0xcf); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("6d7cdc70-9888-11d3-8edc-00c04f6109cf") IWMStatusCallback : public IUnknown { virtual HRESULT STDMETHODCALLTYPE OnStatus( WMT_STATUS Status, HRESULT hr, WMT_ATTR_DATATYPE dwType, BYTE *pValue, void *pvContext) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMStatusCallback, 0x6d7cdc70, 0x9888, 0x11d3, 0x8e,0xdc, 0x00,0xc0,0x4f,0x61,0x09,0xcf) #endif #else typedef struct IWMStatusCallbackVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMStatusCallback* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMStatusCallback* This); ULONG (STDMETHODCALLTYPE *Release)( IWMStatusCallback* This); /*** IWMStatusCallback methods ***/ HRESULT (STDMETHODCALLTYPE *OnStatus)( IWMStatusCallback* This, WMT_STATUS Status, HRESULT hr, WMT_ATTR_DATATYPE dwType, BYTE *pValue, void *pvContext); END_INTERFACE } IWMStatusCallbackVtbl; interface IWMStatusCallback { CONST_VTBL IWMStatusCallbackVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMStatusCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMStatusCallback_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMStatusCallback_Release(This) (This)->lpVtbl->Release(This) /*** IWMStatusCallback methods ***/ #define IWMStatusCallback_OnStatus(This,Status,hr,dwType,pValue,pvContext) (This)->lpVtbl->OnStatus(This,Status,hr,dwType,pValue,pvContext) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMStatusCallback_QueryInterface(IWMStatusCallback* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMStatusCallback_AddRef(IWMStatusCallback* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMStatusCallback_Release(IWMStatusCallback* This) { return This->lpVtbl->Release(This); } /*** IWMStatusCallback methods ***/ static FORCEINLINE HRESULT IWMStatusCallback_OnStatus(IWMStatusCallback* This,WMT_STATUS Status,HRESULT hr,WMT_ATTR_DATATYPE dwType,BYTE *pValue,void *pvContext) { return This->lpVtbl->OnStatus(This,Status,hr,dwType,pValue,pvContext); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMStatusCallback_OnStatus_Proxy( IWMStatusCallback* This, WMT_STATUS Status, HRESULT hr, WMT_ATTR_DATATYPE dwType, BYTE *pValue, void *pvContext); void __RPC_STUB IWMStatusCallback_OnStatus_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMStatusCallback_INTERFACE_DEFINED__ */ /***************************************************************************** * IWMReaderCallback interface */ #ifndef __IWMReaderCallback_INTERFACE_DEFINED__ #define __IWMReaderCallback_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMReaderCallback, 0x96406bd8, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("96406bd8-2b2b-11d3-b36b-00c04f6108ff") IWMReaderCallback : public IWMStatusCallback { virtual HRESULT STDMETHODCALLTYPE OnSample( DWORD dwOutputNum, QWORD cnsSampleTime, QWORD cnsSampleDuration, DWORD dwFlags, INSSBuffer *pSample, void *pvContext) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMReaderCallback, 0x96406bd8, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff) #endif #else typedef struct IWMReaderCallbackVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMReaderCallback* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMReaderCallback* This); ULONG (STDMETHODCALLTYPE *Release)( IWMReaderCallback* This); /*** IWMStatusCallback methods ***/ HRESULT (STDMETHODCALLTYPE *OnStatus)( IWMReaderCallback* This, WMT_STATUS Status, HRESULT hr, WMT_ATTR_DATATYPE dwType, BYTE *pValue, void *pvContext); /*** IWMReaderCallback methods ***/ HRESULT (STDMETHODCALLTYPE *OnSample)( IWMReaderCallback* This, DWORD dwOutputNum, QWORD cnsSampleTime, QWORD cnsSampleDuration, DWORD dwFlags, INSSBuffer *pSample, void *pvContext); END_INTERFACE } IWMReaderCallbackVtbl; interface IWMReaderCallback { CONST_VTBL IWMReaderCallbackVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMReaderCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMReaderCallback_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMReaderCallback_Release(This) (This)->lpVtbl->Release(This) /*** IWMStatusCallback methods ***/ #define IWMReaderCallback_OnStatus(This,Status,hr,dwType,pValue,pvContext) (This)->lpVtbl->OnStatus(This,Status,hr,dwType,pValue,pvContext) /*** IWMReaderCallback methods ***/ #define IWMReaderCallback_OnSample(This,dwOutputNum,cnsSampleTime,cnsSampleDuration,dwFlags,pSample,pvContext) (This)->lpVtbl->OnSample(This,dwOutputNum,cnsSampleTime,cnsSampleDuration,dwFlags,pSample,pvContext) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMReaderCallback_QueryInterface(IWMReaderCallback* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMReaderCallback_AddRef(IWMReaderCallback* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMReaderCallback_Release(IWMReaderCallback* This) { return This->lpVtbl->Release(This); } /*** IWMStatusCallback methods ***/ static FORCEINLINE HRESULT IWMReaderCallback_OnStatus(IWMReaderCallback* This,WMT_STATUS Status,HRESULT hr,WMT_ATTR_DATATYPE dwType,BYTE *pValue,void *pvContext) { return This->lpVtbl->OnStatus(This,Status,hr,dwType,pValue,pvContext); } /*** IWMReaderCallback methods ***/ static FORCEINLINE HRESULT IWMReaderCallback_OnSample(IWMReaderCallback* This,DWORD dwOutputNum,QWORD cnsSampleTime,QWORD cnsSampleDuration,DWORD dwFlags,INSSBuffer *pSample,void *pvContext) { return This->lpVtbl->OnSample(This,dwOutputNum,cnsSampleTime,cnsSampleDuration,dwFlags,pSample,pvContext); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMReaderCallback_OnSample_Proxy( IWMReaderCallback* This, DWORD dwOutputNum, QWORD cnsSampleTime, QWORD cnsSampleDuration, DWORD dwFlags, INSSBuffer *pSample, void *pvContext); void __RPC_STUB IWMReaderCallback_OnSample_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMReaderCallback_INTERFACE_DEFINED__ */ /***************************************************************************** * IWMStreamList interface */ #ifndef __IWMStreamList_INTERFACE_DEFINED__ #define __IWMStreamList_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMStreamList, 0x96406bdd, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("96406bdd-2b2b-11d3-b36b-00c04f6108ff") IWMStreamList : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetStreams( WORD *pwStreamNumArray, WORD *pcStreams) = 0; virtual HRESULT STDMETHODCALLTYPE AddStream( WORD wStreamNum) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveStream( WORD wStreamNum) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMStreamList, 0x96406bdd, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff) #endif #else typedef struct IWMStreamListVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMStreamList* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMStreamList* This); ULONG (STDMETHODCALLTYPE *Release)( IWMStreamList* This); /*** IWMStreamList methods ***/ HRESULT (STDMETHODCALLTYPE *GetStreams)( IWMStreamList* This, WORD *pwStreamNumArray, WORD *pcStreams); HRESULT (STDMETHODCALLTYPE *AddStream)( IWMStreamList* This, WORD wStreamNum); HRESULT (STDMETHODCALLTYPE *RemoveStream)( IWMStreamList* This, WORD wStreamNum); END_INTERFACE } IWMStreamListVtbl; interface IWMStreamList { CONST_VTBL IWMStreamListVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMStreamList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMStreamList_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMStreamList_Release(This) (This)->lpVtbl->Release(This) /*** IWMStreamList methods ***/ #define IWMStreamList_GetStreams(This,pwStreamNumArray,pcStreams) (This)->lpVtbl->GetStreams(This,pwStreamNumArray,pcStreams) #define IWMStreamList_AddStream(This,wStreamNum) (This)->lpVtbl->AddStream(This,wStreamNum) #define IWMStreamList_RemoveStream(This,wStreamNum) (This)->lpVtbl->RemoveStream(This,wStreamNum) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMStreamList_QueryInterface(IWMStreamList* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMStreamList_AddRef(IWMStreamList* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMStreamList_Release(IWMStreamList* This) { return This->lpVtbl->Release(This); } /*** IWMStreamList methods ***/ static FORCEINLINE HRESULT IWMStreamList_GetStreams(IWMStreamList* This,WORD *pwStreamNumArray,WORD *pcStreams) { return This->lpVtbl->GetStreams(This,pwStreamNumArray,pcStreams); } static FORCEINLINE HRESULT IWMStreamList_AddStream(IWMStreamList* This,WORD wStreamNum) { return This->lpVtbl->AddStream(This,wStreamNum); } static FORCEINLINE HRESULT IWMStreamList_RemoveStream(IWMStreamList* This,WORD wStreamNum) { return This->lpVtbl->RemoveStream(This,wStreamNum); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMStreamList_GetStreams_Proxy( IWMStreamList* This, WORD *pwStreamNumArray, WORD *pcStreams); void __RPC_STUB IWMStreamList_GetStreams_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMStreamList_AddStream_Proxy( IWMStreamList* This, WORD wStreamNum); void __RPC_STUB IWMStreamList_AddStream_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMStreamList_RemoveStream_Proxy( IWMStreamList* This, WORD wStreamNum); void __RPC_STUB IWMStreamList_RemoveStream_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMStreamList_INTERFACE_DEFINED__ */ /***************************************************************************** * IWMMutualExclusion interface */ #ifndef __IWMMutualExclusion_INTERFACE_DEFINED__ #define __IWMMutualExclusion_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMMutualExclusion, 0x96406bde, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("96406bde-2b2b-11d3-b36b-00c04f6108ff") IWMMutualExclusion : public IWMStreamList { virtual HRESULT STDMETHODCALLTYPE GetType( GUID *pguidType) = 0; virtual HRESULT STDMETHODCALLTYPE SetType( REFGUID guidType) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMMutualExclusion, 0x96406bde, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff) #endif #else typedef struct IWMMutualExclusionVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMMutualExclusion* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMMutualExclusion* This); ULONG (STDMETHODCALLTYPE *Release)( IWMMutualExclusion* This); /*** IWMStreamList methods ***/ HRESULT (STDMETHODCALLTYPE *GetStreams)( IWMMutualExclusion* This, WORD *pwStreamNumArray, WORD *pcStreams); HRESULT (STDMETHODCALLTYPE *AddStream)( IWMMutualExclusion* This, WORD wStreamNum); HRESULT (STDMETHODCALLTYPE *RemoveStream)( IWMMutualExclusion* This, WORD wStreamNum); /*** IWMMutualExclusion methods ***/ HRESULT (STDMETHODCALLTYPE *GetType)( IWMMutualExclusion* This, GUID *pguidType); HRESULT (STDMETHODCALLTYPE *SetType)( IWMMutualExclusion* This, REFGUID guidType); END_INTERFACE } IWMMutualExclusionVtbl; interface IWMMutualExclusion { CONST_VTBL IWMMutualExclusionVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMMutualExclusion_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMMutualExclusion_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMMutualExclusion_Release(This) (This)->lpVtbl->Release(This) /*** IWMStreamList methods ***/ #define IWMMutualExclusion_GetStreams(This,pwStreamNumArray,pcStreams) (This)->lpVtbl->GetStreams(This,pwStreamNumArray,pcStreams) #define IWMMutualExclusion_AddStream(This,wStreamNum) (This)->lpVtbl->AddStream(This,wStreamNum) #define IWMMutualExclusion_RemoveStream(This,wStreamNum) (This)->lpVtbl->RemoveStream(This,wStreamNum) /*** IWMMutualExclusion methods ***/ #define IWMMutualExclusion_GetType(This,pguidType) (This)->lpVtbl->GetType(This,pguidType) #define IWMMutualExclusion_SetType(This,guidType) (This)->lpVtbl->SetType(This,guidType) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMMutualExclusion_QueryInterface(IWMMutualExclusion* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMMutualExclusion_AddRef(IWMMutualExclusion* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMMutualExclusion_Release(IWMMutualExclusion* This) { return This->lpVtbl->Release(This); } /*** IWMStreamList methods ***/ static FORCEINLINE HRESULT IWMMutualExclusion_GetStreams(IWMMutualExclusion* This,WORD *pwStreamNumArray,WORD *pcStreams) { return This->lpVtbl->GetStreams(This,pwStreamNumArray,pcStreams); } static FORCEINLINE HRESULT IWMMutualExclusion_AddStream(IWMMutualExclusion* This,WORD wStreamNum) { return This->lpVtbl->AddStream(This,wStreamNum); } static FORCEINLINE HRESULT IWMMutualExclusion_RemoveStream(IWMMutualExclusion* This,WORD wStreamNum) { return This->lpVtbl->RemoveStream(This,wStreamNum); } /*** IWMMutualExclusion methods ***/ static FORCEINLINE HRESULT IWMMutualExclusion_GetType(IWMMutualExclusion* This,GUID *pguidType) { return This->lpVtbl->GetType(This,pguidType); } static FORCEINLINE HRESULT IWMMutualExclusion_SetType(IWMMutualExclusion* This,REFGUID guidType) { return This->lpVtbl->SetType(This,guidType); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMMutualExclusion_GetType_Proxy( IWMMutualExclusion* This, GUID *pguidType); void __RPC_STUB IWMMutualExclusion_GetType_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMMutualExclusion_SetType_Proxy( IWMMutualExclusion* This, REFGUID guidType); void __RPC_STUB IWMMutualExclusion_SetType_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMMutualExclusion_INTERFACE_DEFINED__ */ /***************************************************************************** * IWMStreamConfig interface */ #ifndef __IWMStreamConfig_INTERFACE_DEFINED__ #define __IWMStreamConfig_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMStreamConfig, 0x96406bdc, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("96406bdc-2b2b-11d3-b36b-00c04f6108ff") IWMStreamConfig : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetStreamType( GUID *pguidStreamType) = 0; virtual HRESULT STDMETHODCALLTYPE GetStreamNumber( WORD *pwStreamNum) = 0; virtual HRESULT STDMETHODCALLTYPE SetStreamNumber( WORD wStreamNum) = 0; virtual HRESULT STDMETHODCALLTYPE GetStreamName( WCHAR *pwszStreamName, WORD *pcchStreamName) = 0; virtual HRESULT STDMETHODCALLTYPE SetStreamName( LPCWSTR_WMSDK_TYPE_SAFE pwszStreamName) = 0; virtual HRESULT STDMETHODCALLTYPE GetConnectionName( WCHAR *pwszInputName, WORD *pcchInputName) = 0; virtual HRESULT STDMETHODCALLTYPE SetConnectionName( LPCWSTR_WMSDK_TYPE_SAFE pwszInputName) = 0; virtual HRESULT STDMETHODCALLTYPE GetBitrate( DWORD *pdwBitrate) = 0; virtual HRESULT STDMETHODCALLTYPE SetBitrate( DWORD pdwBitrate) = 0; virtual HRESULT STDMETHODCALLTYPE GetBufferWindow( DWORD *pmsBufferWindow) = 0; virtual HRESULT STDMETHODCALLTYPE SetBufferWindow( DWORD msBufferWindow) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMStreamConfig, 0x96406bdc, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff) #endif #else typedef struct IWMStreamConfigVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMStreamConfig* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMStreamConfig* This); ULONG (STDMETHODCALLTYPE *Release)( IWMStreamConfig* This); /*** IWMStreamConfig methods ***/ HRESULT (STDMETHODCALLTYPE *GetStreamType)( IWMStreamConfig* This, GUID *pguidStreamType); HRESULT (STDMETHODCALLTYPE *GetStreamNumber)( IWMStreamConfig* This, WORD *pwStreamNum); HRESULT (STDMETHODCALLTYPE *SetStreamNumber)( IWMStreamConfig* This, WORD wStreamNum); HRESULT (STDMETHODCALLTYPE *GetStreamName)( IWMStreamConfig* This, WCHAR *pwszStreamName, WORD *pcchStreamName); HRESULT (STDMETHODCALLTYPE *SetStreamName)( IWMStreamConfig* This, LPCWSTR_WMSDK_TYPE_SAFE pwszStreamName); HRESULT (STDMETHODCALLTYPE *GetConnectionName)( IWMStreamConfig* This, WCHAR *pwszInputName, WORD *pcchInputName); HRESULT (STDMETHODCALLTYPE *SetConnectionName)( IWMStreamConfig* This, LPCWSTR_WMSDK_TYPE_SAFE pwszInputName); HRESULT (STDMETHODCALLTYPE *GetBitrate)( IWMStreamConfig* This, DWORD *pdwBitrate); HRESULT (STDMETHODCALLTYPE *SetBitrate)( IWMStreamConfig* This, DWORD pdwBitrate); HRESULT (STDMETHODCALLTYPE *GetBufferWindow)( IWMStreamConfig* This, DWORD *pmsBufferWindow); HRESULT (STDMETHODCALLTYPE *SetBufferWindow)( IWMStreamConfig* This, DWORD msBufferWindow); END_INTERFACE } IWMStreamConfigVtbl; interface IWMStreamConfig { CONST_VTBL IWMStreamConfigVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMStreamConfig_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMStreamConfig_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMStreamConfig_Release(This) (This)->lpVtbl->Release(This) /*** IWMStreamConfig methods ***/ #define IWMStreamConfig_GetStreamType(This,pguidStreamType) (This)->lpVtbl->GetStreamType(This,pguidStreamType) #define IWMStreamConfig_GetStreamNumber(This,pwStreamNum) (This)->lpVtbl->GetStreamNumber(This,pwStreamNum) #define IWMStreamConfig_SetStreamNumber(This,wStreamNum) (This)->lpVtbl->SetStreamNumber(This,wStreamNum) #define IWMStreamConfig_GetStreamName(This,pwszStreamName,pcchStreamName) (This)->lpVtbl->GetStreamName(This,pwszStreamName,pcchStreamName) #define IWMStreamConfig_SetStreamName(This,pwszStreamName) (This)->lpVtbl->SetStreamName(This,pwszStreamName) #define IWMStreamConfig_GetConnectionName(This,pwszInputName,pcchInputName) (This)->lpVtbl->GetConnectionName(This,pwszInputName,pcchInputName) #define IWMStreamConfig_SetConnectionName(This,pwszInputName) (This)->lpVtbl->SetConnectionName(This,pwszInputName) #define IWMStreamConfig_GetBitrate(This,pdwBitrate) (This)->lpVtbl->GetBitrate(This,pdwBitrate) #define IWMStreamConfig_SetBitrate(This,pdwBitrate) (This)->lpVtbl->SetBitrate(This,pdwBitrate) #define IWMStreamConfig_GetBufferWindow(This,pmsBufferWindow) (This)->lpVtbl->GetBufferWindow(This,pmsBufferWindow) #define IWMStreamConfig_SetBufferWindow(This,msBufferWindow) (This)->lpVtbl->SetBufferWindow(This,msBufferWindow) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMStreamConfig_QueryInterface(IWMStreamConfig* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMStreamConfig_AddRef(IWMStreamConfig* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMStreamConfig_Release(IWMStreamConfig* This) { return This->lpVtbl->Release(This); } /*** IWMStreamConfig methods ***/ static FORCEINLINE HRESULT IWMStreamConfig_GetStreamType(IWMStreamConfig* This,GUID *pguidStreamType) { return This->lpVtbl->GetStreamType(This,pguidStreamType); } static FORCEINLINE HRESULT IWMStreamConfig_GetStreamNumber(IWMStreamConfig* This,WORD *pwStreamNum) { return This->lpVtbl->GetStreamNumber(This,pwStreamNum); } static FORCEINLINE HRESULT IWMStreamConfig_SetStreamNumber(IWMStreamConfig* This,WORD wStreamNum) { return This->lpVtbl->SetStreamNumber(This,wStreamNum); } static FORCEINLINE HRESULT IWMStreamConfig_GetStreamName(IWMStreamConfig* This,WCHAR *pwszStreamName,WORD *pcchStreamName) { return This->lpVtbl->GetStreamName(This,pwszStreamName,pcchStreamName); } static FORCEINLINE HRESULT IWMStreamConfig_SetStreamName(IWMStreamConfig* This,LPCWSTR_WMSDK_TYPE_SAFE pwszStreamName) { return This->lpVtbl->SetStreamName(This,pwszStreamName); } static FORCEINLINE HRESULT IWMStreamConfig_GetConnectionName(IWMStreamConfig* This,WCHAR *pwszInputName,WORD *pcchInputName) { return This->lpVtbl->GetConnectionName(This,pwszInputName,pcchInputName); } static FORCEINLINE HRESULT IWMStreamConfig_SetConnectionName(IWMStreamConfig* This,LPCWSTR_WMSDK_TYPE_SAFE pwszInputName) { return This->lpVtbl->SetConnectionName(This,pwszInputName); } static FORCEINLINE HRESULT IWMStreamConfig_GetBitrate(IWMStreamConfig* This,DWORD *pdwBitrate) { return This->lpVtbl->GetBitrate(This,pdwBitrate); } static FORCEINLINE HRESULT IWMStreamConfig_SetBitrate(IWMStreamConfig* This,DWORD pdwBitrate) { return This->lpVtbl->SetBitrate(This,pdwBitrate); } static FORCEINLINE HRESULT IWMStreamConfig_GetBufferWindow(IWMStreamConfig* This,DWORD *pmsBufferWindow) { return This->lpVtbl->GetBufferWindow(This,pmsBufferWindow); } static FORCEINLINE HRESULT IWMStreamConfig_SetBufferWindow(IWMStreamConfig* This,DWORD msBufferWindow) { return This->lpVtbl->SetBufferWindow(This,msBufferWindow); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMStreamConfig_GetStreamType_Proxy( IWMStreamConfig* This, GUID *pguidStreamType); void __RPC_STUB IWMStreamConfig_GetStreamType_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMStreamConfig_GetStreamNumber_Proxy( IWMStreamConfig* This, WORD *pwStreamNum); void __RPC_STUB IWMStreamConfig_GetStreamNumber_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMStreamConfig_SetStreamNumber_Proxy( IWMStreamConfig* This, WORD wStreamNum); void __RPC_STUB IWMStreamConfig_SetStreamNumber_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMStreamConfig_GetStreamName_Proxy( IWMStreamConfig* This, WCHAR *pwszStreamName, WORD *pcchStreamName); void __RPC_STUB IWMStreamConfig_GetStreamName_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMStreamConfig_SetStreamName_Proxy( IWMStreamConfig* This, LPCWSTR_WMSDK_TYPE_SAFE pwszStreamName); void __RPC_STUB IWMStreamConfig_SetStreamName_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMStreamConfig_GetConnectionName_Proxy( IWMStreamConfig* This, WCHAR *pwszInputName, WORD *pcchInputName); void __RPC_STUB IWMStreamConfig_GetConnectionName_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMStreamConfig_SetConnectionName_Proxy( IWMStreamConfig* This, LPCWSTR_WMSDK_TYPE_SAFE pwszInputName); void __RPC_STUB IWMStreamConfig_SetConnectionName_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMStreamConfig_GetBitrate_Proxy( IWMStreamConfig* This, DWORD *pdwBitrate); void __RPC_STUB IWMStreamConfig_GetBitrate_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMStreamConfig_SetBitrate_Proxy( IWMStreamConfig* This, DWORD pdwBitrate); void __RPC_STUB IWMStreamConfig_SetBitrate_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMStreamConfig_GetBufferWindow_Proxy( IWMStreamConfig* This, DWORD *pmsBufferWindow); void __RPC_STUB IWMStreamConfig_GetBufferWindow_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMStreamConfig_SetBufferWindow_Proxy( IWMStreamConfig* This, DWORD msBufferWindow); void __RPC_STUB IWMStreamConfig_SetBufferWindow_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMStreamConfig_INTERFACE_DEFINED__ */ /***************************************************************************** * IWMProfile interface */ #ifndef __IWMProfile_INTERFACE_DEFINED__ #define __IWMProfile_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMProfile, 0x96406bdb, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("96406bdb-2b2b-11d3-b36b-00c04f6108ff") IWMProfile : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetVersion( WMT_VERSION *pdwVersion) = 0; virtual HRESULT STDMETHODCALLTYPE GetName( WCHAR *pwszName, DWORD *pcchName) = 0; virtual HRESULT STDMETHODCALLTYPE SetName( const WCHAR *pwszName) = 0; virtual HRESULT STDMETHODCALLTYPE GetDescription( WCHAR *pwszDescription, DWORD *pcchDescription) = 0; virtual HRESULT STDMETHODCALLTYPE SetDescription( const WCHAR *pwszDescription) = 0; virtual HRESULT STDMETHODCALLTYPE GetStreamCount( DWORD *pcStreams) = 0; virtual HRESULT STDMETHODCALLTYPE GetStream( DWORD dwStreamIndex, IWMStreamConfig **ppConfig) = 0; virtual HRESULT STDMETHODCALLTYPE GetStreamByNumber( WORD wStreamNum, IWMStreamConfig **ppConfig) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveStream( IWMStreamConfig *pConfig) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveStreamByNumber( WORD wStreamNum) = 0; virtual HRESULT STDMETHODCALLTYPE AddStream( IWMStreamConfig *pConfig) = 0; virtual HRESULT STDMETHODCALLTYPE ReconfigStream( IWMStreamConfig *pConfig) = 0; virtual HRESULT STDMETHODCALLTYPE CreateNewStream( REFGUID guidStreamType, IWMStreamConfig **ppConfig) = 0; virtual HRESULT STDMETHODCALLTYPE GetMutualExclusionCount( DWORD *pcME) = 0; virtual HRESULT STDMETHODCALLTYPE GetMutualExclusion( DWORD dwMEIndex, IWMMutualExclusion **ppME) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveMutualExclusion( IWMMutualExclusion *pME) = 0; virtual HRESULT STDMETHODCALLTYPE AddMutualExclusion( IWMMutualExclusion *pME) = 0; virtual HRESULT STDMETHODCALLTYPE CreateNewMutualExclusion( IWMMutualExclusion **ppME) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMProfile, 0x96406bdb, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff) #endif #else typedef struct IWMProfileVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMProfile* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMProfile* This); ULONG (STDMETHODCALLTYPE *Release)( IWMProfile* This); /*** IWMProfile methods ***/ HRESULT (STDMETHODCALLTYPE *GetVersion)( IWMProfile* This, WMT_VERSION *pdwVersion); HRESULT (STDMETHODCALLTYPE *GetName)( IWMProfile* This, WCHAR *pwszName, DWORD *pcchName); HRESULT (STDMETHODCALLTYPE *SetName)( IWMProfile* This, const WCHAR *pwszName); HRESULT (STDMETHODCALLTYPE *GetDescription)( IWMProfile* This, WCHAR *pwszDescription, DWORD *pcchDescription); HRESULT (STDMETHODCALLTYPE *SetDescription)( IWMProfile* This, const WCHAR *pwszDescription); HRESULT (STDMETHODCALLTYPE *GetStreamCount)( IWMProfile* This, DWORD *pcStreams); HRESULT (STDMETHODCALLTYPE *GetStream)( IWMProfile* This, DWORD dwStreamIndex, IWMStreamConfig **ppConfig); HRESULT (STDMETHODCALLTYPE *GetStreamByNumber)( IWMProfile* This, WORD wStreamNum, IWMStreamConfig **ppConfig); HRESULT (STDMETHODCALLTYPE *RemoveStream)( IWMProfile* This, IWMStreamConfig *pConfig); HRESULT (STDMETHODCALLTYPE *RemoveStreamByNumber)( IWMProfile* This, WORD wStreamNum); HRESULT (STDMETHODCALLTYPE *AddStream)( IWMProfile* This, IWMStreamConfig *pConfig); HRESULT (STDMETHODCALLTYPE *ReconfigStream)( IWMProfile* This, IWMStreamConfig *pConfig); HRESULT (STDMETHODCALLTYPE *CreateNewStream)( IWMProfile* This, REFGUID guidStreamType, IWMStreamConfig **ppConfig); HRESULT (STDMETHODCALLTYPE *GetMutualExclusionCount)( IWMProfile* This, DWORD *pcME); HRESULT (STDMETHODCALLTYPE *GetMutualExclusion)( IWMProfile* This, DWORD dwMEIndex, IWMMutualExclusion **ppME); HRESULT (STDMETHODCALLTYPE *RemoveMutualExclusion)( IWMProfile* This, IWMMutualExclusion *pME); HRESULT (STDMETHODCALLTYPE *AddMutualExclusion)( IWMProfile* This, IWMMutualExclusion *pME); HRESULT (STDMETHODCALLTYPE *CreateNewMutualExclusion)( IWMProfile* This, IWMMutualExclusion **ppME); END_INTERFACE } IWMProfileVtbl; interface IWMProfile { CONST_VTBL IWMProfileVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMProfile_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMProfile_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMProfile_Release(This) (This)->lpVtbl->Release(This) /*** IWMProfile methods ***/ #define IWMProfile_GetVersion(This,pdwVersion) (This)->lpVtbl->GetVersion(This,pdwVersion) #define IWMProfile_GetName(This,pwszName,pcchName) (This)->lpVtbl->GetName(This,pwszName,pcchName) #define IWMProfile_SetName(This,pwszName) (This)->lpVtbl->SetName(This,pwszName) #define IWMProfile_GetDescription(This,pwszDescription,pcchDescription) (This)->lpVtbl->GetDescription(This,pwszDescription,pcchDescription) #define IWMProfile_SetDescription(This,pwszDescription) (This)->lpVtbl->SetDescription(This,pwszDescription) #define IWMProfile_GetStreamCount(This,pcStreams) (This)->lpVtbl->GetStreamCount(This,pcStreams) #define IWMProfile_GetStream(This,dwStreamIndex,ppConfig) (This)->lpVtbl->GetStream(This,dwStreamIndex,ppConfig) #define IWMProfile_GetStreamByNumber(This,wStreamNum,ppConfig) (This)->lpVtbl->GetStreamByNumber(This,wStreamNum,ppConfig) #define IWMProfile_RemoveStream(This,pConfig) (This)->lpVtbl->RemoveStream(This,pConfig) #define IWMProfile_RemoveStreamByNumber(This,wStreamNum) (This)->lpVtbl->RemoveStreamByNumber(This,wStreamNum) #define IWMProfile_AddStream(This,pConfig) (This)->lpVtbl->AddStream(This,pConfig) #define IWMProfile_ReconfigStream(This,pConfig) (This)->lpVtbl->ReconfigStream(This,pConfig) #define IWMProfile_CreateNewStream(This,guidStreamType,ppConfig) (This)->lpVtbl->CreateNewStream(This,guidStreamType,ppConfig) #define IWMProfile_GetMutualExclusionCount(This,pcME) (This)->lpVtbl->GetMutualExclusionCount(This,pcME) #define IWMProfile_GetMutualExclusion(This,dwMEIndex,ppME) (This)->lpVtbl->GetMutualExclusion(This,dwMEIndex,ppME) #define IWMProfile_RemoveMutualExclusion(This,pME) (This)->lpVtbl->RemoveMutualExclusion(This,pME) #define IWMProfile_AddMutualExclusion(This,pME) (This)->lpVtbl->AddMutualExclusion(This,pME) #define IWMProfile_CreateNewMutualExclusion(This,ppME) (This)->lpVtbl->CreateNewMutualExclusion(This,ppME) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMProfile_QueryInterface(IWMProfile* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMProfile_AddRef(IWMProfile* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMProfile_Release(IWMProfile* This) { return This->lpVtbl->Release(This); } /*** IWMProfile methods ***/ static FORCEINLINE HRESULT IWMProfile_GetVersion(IWMProfile* This,WMT_VERSION *pdwVersion) { return This->lpVtbl->GetVersion(This,pdwVersion); } static FORCEINLINE HRESULT IWMProfile_GetName(IWMProfile* This,WCHAR *pwszName,DWORD *pcchName) { return This->lpVtbl->GetName(This,pwszName,pcchName); } static FORCEINLINE HRESULT IWMProfile_SetName(IWMProfile* This,const WCHAR *pwszName) { return This->lpVtbl->SetName(This,pwszName); } static FORCEINLINE HRESULT IWMProfile_GetDescription(IWMProfile* This,WCHAR *pwszDescription,DWORD *pcchDescription) { return This->lpVtbl->GetDescription(This,pwszDescription,pcchDescription); } static FORCEINLINE HRESULT IWMProfile_SetDescription(IWMProfile* This,const WCHAR *pwszDescription) { return This->lpVtbl->SetDescription(This,pwszDescription); } static FORCEINLINE HRESULT IWMProfile_GetStreamCount(IWMProfile* This,DWORD *pcStreams) { return This->lpVtbl->GetStreamCount(This,pcStreams); } static FORCEINLINE HRESULT IWMProfile_GetStream(IWMProfile* This,DWORD dwStreamIndex,IWMStreamConfig **ppConfig) { return This->lpVtbl->GetStream(This,dwStreamIndex,ppConfig); } static FORCEINLINE HRESULT IWMProfile_GetStreamByNumber(IWMProfile* This,WORD wStreamNum,IWMStreamConfig **ppConfig) { return This->lpVtbl->GetStreamByNumber(This,wStreamNum,ppConfig); } static FORCEINLINE HRESULT IWMProfile_RemoveStream(IWMProfile* This,IWMStreamConfig *pConfig) { return This->lpVtbl->RemoveStream(This,pConfig); } static FORCEINLINE HRESULT IWMProfile_RemoveStreamByNumber(IWMProfile* This,WORD wStreamNum) { return This->lpVtbl->RemoveStreamByNumber(This,wStreamNum); } static FORCEINLINE HRESULT IWMProfile_AddStream(IWMProfile* This,IWMStreamConfig *pConfig) { return This->lpVtbl->AddStream(This,pConfig); } static FORCEINLINE HRESULT IWMProfile_ReconfigStream(IWMProfile* This,IWMStreamConfig *pConfig) { return This->lpVtbl->ReconfigStream(This,pConfig); } static FORCEINLINE HRESULT IWMProfile_CreateNewStream(IWMProfile* This,REFGUID guidStreamType,IWMStreamConfig **ppConfig) { return This->lpVtbl->CreateNewStream(This,guidStreamType,ppConfig); } static FORCEINLINE HRESULT IWMProfile_GetMutualExclusionCount(IWMProfile* This,DWORD *pcME) { return This->lpVtbl->GetMutualExclusionCount(This,pcME); } static FORCEINLINE HRESULT IWMProfile_GetMutualExclusion(IWMProfile* This,DWORD dwMEIndex,IWMMutualExclusion **ppME) { return This->lpVtbl->GetMutualExclusion(This,dwMEIndex,ppME); } static FORCEINLINE HRESULT IWMProfile_RemoveMutualExclusion(IWMProfile* This,IWMMutualExclusion *pME) { return This->lpVtbl->RemoveMutualExclusion(This,pME); } static FORCEINLINE HRESULT IWMProfile_AddMutualExclusion(IWMProfile* This,IWMMutualExclusion *pME) { return This->lpVtbl->AddMutualExclusion(This,pME); } static FORCEINLINE HRESULT IWMProfile_CreateNewMutualExclusion(IWMProfile* This,IWMMutualExclusion **ppME) { return This->lpVtbl->CreateNewMutualExclusion(This,ppME); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMProfile_GetVersion_Proxy( IWMProfile* This, WMT_VERSION *pdwVersion); void __RPC_STUB IWMProfile_GetVersion_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMProfile_GetName_Proxy( IWMProfile* This, WCHAR *pwszName, DWORD *pcchName); void __RPC_STUB IWMProfile_GetName_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMProfile_SetName_Proxy( IWMProfile* This, const WCHAR *pwszName); void __RPC_STUB IWMProfile_SetName_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMProfile_GetDescription_Proxy( IWMProfile* This, WCHAR *pwszDescription, DWORD *pcchDescription); void __RPC_STUB IWMProfile_GetDescription_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMProfile_SetDescription_Proxy( IWMProfile* This, const WCHAR *pwszDescription); void __RPC_STUB IWMProfile_SetDescription_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMProfile_GetStreamCount_Proxy( IWMProfile* This, DWORD *pcStreams); void __RPC_STUB IWMProfile_GetStreamCount_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMProfile_GetStream_Proxy( IWMProfile* This, DWORD dwStreamIndex, IWMStreamConfig **ppConfig); void __RPC_STUB IWMProfile_GetStream_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMProfile_GetStreamByNumber_Proxy( IWMProfile* This, WORD wStreamNum, IWMStreamConfig **ppConfig); void __RPC_STUB IWMProfile_GetStreamByNumber_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMProfile_RemoveStream_Proxy( IWMProfile* This, IWMStreamConfig *pConfig); void __RPC_STUB IWMProfile_RemoveStream_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMProfile_RemoveStreamByNumber_Proxy( IWMProfile* This, WORD wStreamNum); void __RPC_STUB IWMProfile_RemoveStreamByNumber_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMProfile_AddStream_Proxy( IWMProfile* This, IWMStreamConfig *pConfig); void __RPC_STUB IWMProfile_AddStream_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMProfile_ReconfigStream_Proxy( IWMProfile* This, IWMStreamConfig *pConfig); void __RPC_STUB IWMProfile_ReconfigStream_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMProfile_CreateNewStream_Proxy( IWMProfile* This, REFGUID guidStreamType, IWMStreamConfig **ppConfig); void __RPC_STUB IWMProfile_CreateNewStream_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMProfile_GetMutualExclusionCount_Proxy( IWMProfile* This, DWORD *pcME); void __RPC_STUB IWMProfile_GetMutualExclusionCount_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMProfile_GetMutualExclusion_Proxy( IWMProfile* This, DWORD dwMEIndex, IWMMutualExclusion **ppME); void __RPC_STUB IWMProfile_GetMutualExclusion_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMProfile_RemoveMutualExclusion_Proxy( IWMProfile* This, IWMMutualExclusion *pME); void __RPC_STUB IWMProfile_RemoveMutualExclusion_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMProfile_AddMutualExclusion_Proxy( IWMProfile* This, IWMMutualExclusion *pME); void __RPC_STUB IWMProfile_AddMutualExclusion_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMProfile_CreateNewMutualExclusion_Proxy( IWMProfile* This, IWMMutualExclusion **ppME); void __RPC_STUB IWMProfile_CreateNewMutualExclusion_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMProfile_INTERFACE_DEFINED__ */ /***************************************************************************** * IWMProfileManager interface */ #ifndef __IWMProfileManager_INTERFACE_DEFINED__ #define __IWMProfileManager_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMProfileManager, 0xd16679f2, 0x6ca0, 0x472d, 0x8d,0x31, 0x2f,0x5d,0x55,0xae,0xe1,0x55); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("d16679f2-6ca0-472d-8d31-2f5d55aee155") IWMProfileManager : public IUnknown { virtual HRESULT STDMETHODCALLTYPE CreateEmptyProfile( WMT_VERSION dwVersion, IWMProfile **ppProfile) = 0; virtual HRESULT STDMETHODCALLTYPE LoadProfileByID( REFGUID guidProfile, IWMProfile **ppProfile) = 0; virtual HRESULT STDMETHODCALLTYPE LoadProfileByData( const WCHAR *pwszProfile, IWMProfile **ppProfile) = 0; virtual HRESULT STDMETHODCALLTYPE SaveProfile( IWMProfile *pIWMProfile, WCHAR *pwszProfile, DWORD *pdwLength) = 0; virtual HRESULT STDMETHODCALLTYPE GetSystemProfileCount( DWORD *pcProfiles) = 0; virtual HRESULT STDMETHODCALLTYPE LoadSystemProfile( DWORD dwProfileIndex, IWMProfile **ppProfile) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMProfileManager, 0xd16679f2, 0x6ca0, 0x472d, 0x8d,0x31, 0x2f,0x5d,0x55,0xae,0xe1,0x55) #endif #else typedef struct IWMProfileManagerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMProfileManager* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMProfileManager* This); ULONG (STDMETHODCALLTYPE *Release)( IWMProfileManager* This); /*** IWMProfileManager methods ***/ HRESULT (STDMETHODCALLTYPE *CreateEmptyProfile)( IWMProfileManager* This, WMT_VERSION dwVersion, IWMProfile **ppProfile); HRESULT (STDMETHODCALLTYPE *LoadProfileByID)( IWMProfileManager* This, REFGUID guidProfile, IWMProfile **ppProfile); HRESULT (STDMETHODCALLTYPE *LoadProfileByData)( IWMProfileManager* This, const WCHAR *pwszProfile, IWMProfile **ppProfile); HRESULT (STDMETHODCALLTYPE *SaveProfile)( IWMProfileManager* This, IWMProfile *pIWMProfile, WCHAR *pwszProfile, DWORD *pdwLength); HRESULT (STDMETHODCALLTYPE *GetSystemProfileCount)( IWMProfileManager* This, DWORD *pcProfiles); HRESULT (STDMETHODCALLTYPE *LoadSystemProfile)( IWMProfileManager* This, DWORD dwProfileIndex, IWMProfile **ppProfile); END_INTERFACE } IWMProfileManagerVtbl; interface IWMProfileManager { CONST_VTBL IWMProfileManagerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMProfileManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMProfileManager_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMProfileManager_Release(This) (This)->lpVtbl->Release(This) /*** IWMProfileManager methods ***/ #define IWMProfileManager_CreateEmptyProfile(This,dwVersion,ppProfile) (This)->lpVtbl->CreateEmptyProfile(This,dwVersion,ppProfile) #define IWMProfileManager_LoadProfileByID(This,guidProfile,ppProfile) (This)->lpVtbl->LoadProfileByID(This,guidProfile,ppProfile) #define IWMProfileManager_LoadProfileByData(This,pwszProfile,ppProfile) (This)->lpVtbl->LoadProfileByData(This,pwszProfile,ppProfile) #define IWMProfileManager_SaveProfile(This,pIWMProfile,pwszProfile,pdwLength) (This)->lpVtbl->SaveProfile(This,pIWMProfile,pwszProfile,pdwLength) #define IWMProfileManager_GetSystemProfileCount(This,pcProfiles) (This)->lpVtbl->GetSystemProfileCount(This,pcProfiles) #define IWMProfileManager_LoadSystemProfile(This,dwProfileIndex,ppProfile) (This)->lpVtbl->LoadSystemProfile(This,dwProfileIndex,ppProfile) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMProfileManager_QueryInterface(IWMProfileManager* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMProfileManager_AddRef(IWMProfileManager* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMProfileManager_Release(IWMProfileManager* This) { return This->lpVtbl->Release(This); } /*** IWMProfileManager methods ***/ static FORCEINLINE HRESULT IWMProfileManager_CreateEmptyProfile(IWMProfileManager* This,WMT_VERSION dwVersion,IWMProfile **ppProfile) { return This->lpVtbl->CreateEmptyProfile(This,dwVersion,ppProfile); } static FORCEINLINE HRESULT IWMProfileManager_LoadProfileByID(IWMProfileManager* This,REFGUID guidProfile,IWMProfile **ppProfile) { return This->lpVtbl->LoadProfileByID(This,guidProfile,ppProfile); } static FORCEINLINE HRESULT IWMProfileManager_LoadProfileByData(IWMProfileManager* This,const WCHAR *pwszProfile,IWMProfile **ppProfile) { return This->lpVtbl->LoadProfileByData(This,pwszProfile,ppProfile); } static FORCEINLINE HRESULT IWMProfileManager_SaveProfile(IWMProfileManager* This,IWMProfile *pIWMProfile,WCHAR *pwszProfile,DWORD *pdwLength) { return This->lpVtbl->SaveProfile(This,pIWMProfile,pwszProfile,pdwLength); } static FORCEINLINE HRESULT IWMProfileManager_GetSystemProfileCount(IWMProfileManager* This,DWORD *pcProfiles) { return This->lpVtbl->GetSystemProfileCount(This,pcProfiles); } static FORCEINLINE HRESULT IWMProfileManager_LoadSystemProfile(IWMProfileManager* This,DWORD dwProfileIndex,IWMProfile **ppProfile) { return This->lpVtbl->LoadSystemProfile(This,dwProfileIndex,ppProfile); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMProfileManager_CreateEmptyProfile_Proxy( IWMProfileManager* This, WMT_VERSION dwVersion, IWMProfile **ppProfile); void __RPC_STUB IWMProfileManager_CreateEmptyProfile_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMProfileManager_LoadProfileByID_Proxy( IWMProfileManager* This, REFGUID guidProfile, IWMProfile **ppProfile); void __RPC_STUB IWMProfileManager_LoadProfileByID_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMProfileManager_LoadProfileByData_Proxy( IWMProfileManager* This, const WCHAR *pwszProfile, IWMProfile **ppProfile); void __RPC_STUB IWMProfileManager_LoadProfileByData_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMProfileManager_SaveProfile_Proxy( IWMProfileManager* This, IWMProfile *pIWMProfile, WCHAR *pwszProfile, DWORD *pdwLength); void __RPC_STUB IWMProfileManager_SaveProfile_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMProfileManager_GetSystemProfileCount_Proxy( IWMProfileManager* This, DWORD *pcProfiles); void __RPC_STUB IWMProfileManager_GetSystemProfileCount_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMProfileManager_LoadSystemProfile_Proxy( IWMProfileManager* This, DWORD dwProfileIndex, IWMProfile **ppProfile); void __RPC_STUB IWMProfileManager_LoadSystemProfile_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMProfileManager_INTERFACE_DEFINED__ */ HRESULT WINAPI WMCreateProfileManager(IWMProfileManager**); /***************************************************************************** * IWMMediaProps interface */ #ifndef __IWMMediaProps_INTERFACE_DEFINED__ #define __IWMMediaProps_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMMediaProps, 0x96406bce, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("96406bce-2b2b-11d3-b36b-00c04f6108ff") IWMMediaProps : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetType( GUID *pguidType) = 0; virtual HRESULT STDMETHODCALLTYPE GetMediaType( WM_MEDIA_TYPE *pType, DWORD *pcbType) = 0; virtual HRESULT STDMETHODCALLTYPE SetMediaType( WM_MEDIA_TYPE *pType) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMMediaProps, 0x96406bce, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff) #endif #else typedef struct IWMMediaPropsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMMediaProps* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMMediaProps* This); ULONG (STDMETHODCALLTYPE *Release)( IWMMediaProps* This); /*** IWMMediaProps methods ***/ HRESULT (STDMETHODCALLTYPE *GetType)( IWMMediaProps* This, GUID *pguidType); HRESULT (STDMETHODCALLTYPE *GetMediaType)( IWMMediaProps* This, WM_MEDIA_TYPE *pType, DWORD *pcbType); HRESULT (STDMETHODCALLTYPE *SetMediaType)( IWMMediaProps* This, WM_MEDIA_TYPE *pType); END_INTERFACE } IWMMediaPropsVtbl; interface IWMMediaProps { CONST_VTBL IWMMediaPropsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMMediaProps_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMMediaProps_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMMediaProps_Release(This) (This)->lpVtbl->Release(This) /*** IWMMediaProps methods ***/ #define IWMMediaProps_GetType(This,pguidType) (This)->lpVtbl->GetType(This,pguidType) #define IWMMediaProps_GetMediaType(This,pType,pcbType) (This)->lpVtbl->GetMediaType(This,pType,pcbType) #define IWMMediaProps_SetMediaType(This,pType) (This)->lpVtbl->SetMediaType(This,pType) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMMediaProps_QueryInterface(IWMMediaProps* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMMediaProps_AddRef(IWMMediaProps* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMMediaProps_Release(IWMMediaProps* This) { return This->lpVtbl->Release(This); } /*** IWMMediaProps methods ***/ static FORCEINLINE HRESULT IWMMediaProps_GetType(IWMMediaProps* This,GUID *pguidType) { return This->lpVtbl->GetType(This,pguidType); } static FORCEINLINE HRESULT IWMMediaProps_GetMediaType(IWMMediaProps* This,WM_MEDIA_TYPE *pType,DWORD *pcbType) { return This->lpVtbl->GetMediaType(This,pType,pcbType); } static FORCEINLINE HRESULT IWMMediaProps_SetMediaType(IWMMediaProps* This,WM_MEDIA_TYPE *pType) { return This->lpVtbl->SetMediaType(This,pType); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMMediaProps_GetType_Proxy( IWMMediaProps* This, GUID *pguidType); void __RPC_STUB IWMMediaProps_GetType_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMMediaProps_GetMediaType_Proxy( IWMMediaProps* This, WM_MEDIA_TYPE *pType, DWORD *pcbType); void __RPC_STUB IWMMediaProps_GetMediaType_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMMediaProps_SetMediaType_Proxy( IWMMediaProps* This, WM_MEDIA_TYPE *pType); void __RPC_STUB IWMMediaProps_SetMediaType_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMMediaProps_INTERFACE_DEFINED__ */ /***************************************************************************** * IWMOutputMediaProps interface */ #ifndef __IWMOutputMediaProps_INTERFACE_DEFINED__ #define __IWMOutputMediaProps_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMOutputMediaProps, 0x96406bd7, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("96406bd7-2b2b-11d3-b36b-00c04f6108ff") IWMOutputMediaProps : public IWMMediaProps { virtual HRESULT STDMETHODCALLTYPE GetStreamGroupName( WCHAR *pwszName, WORD *pcchName) = 0; virtual HRESULT STDMETHODCALLTYPE GetConnectionName( WCHAR *pwszName, WORD *pcchName) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMOutputMediaProps, 0x96406bd7, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff) #endif #else typedef struct IWMOutputMediaPropsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMOutputMediaProps* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMOutputMediaProps* This); ULONG (STDMETHODCALLTYPE *Release)( IWMOutputMediaProps* This); /*** IWMMediaProps methods ***/ HRESULT (STDMETHODCALLTYPE *GetType)( IWMOutputMediaProps* This, GUID *pguidType); HRESULT (STDMETHODCALLTYPE *GetMediaType)( IWMOutputMediaProps* This, WM_MEDIA_TYPE *pType, DWORD *pcbType); HRESULT (STDMETHODCALLTYPE *SetMediaType)( IWMOutputMediaProps* This, WM_MEDIA_TYPE *pType); /*** IWMOutputMediaProps methods ***/ HRESULT (STDMETHODCALLTYPE *GetStreamGroupName)( IWMOutputMediaProps* This, WCHAR *pwszName, WORD *pcchName); HRESULT (STDMETHODCALLTYPE *GetConnectionName)( IWMOutputMediaProps* This, WCHAR *pwszName, WORD *pcchName); END_INTERFACE } IWMOutputMediaPropsVtbl; interface IWMOutputMediaProps { CONST_VTBL IWMOutputMediaPropsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMOutputMediaProps_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMOutputMediaProps_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMOutputMediaProps_Release(This) (This)->lpVtbl->Release(This) /*** IWMMediaProps methods ***/ #define IWMOutputMediaProps_GetType(This,pguidType) (This)->lpVtbl->GetType(This,pguidType) #define IWMOutputMediaProps_GetMediaType(This,pType,pcbType) (This)->lpVtbl->GetMediaType(This,pType,pcbType) #define IWMOutputMediaProps_SetMediaType(This,pType) (This)->lpVtbl->SetMediaType(This,pType) /*** IWMOutputMediaProps methods ***/ #define IWMOutputMediaProps_GetStreamGroupName(This,pwszName,pcchName) (This)->lpVtbl->GetStreamGroupName(This,pwszName,pcchName) #define IWMOutputMediaProps_GetConnectionName(This,pwszName,pcchName) (This)->lpVtbl->GetConnectionName(This,pwszName,pcchName) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMOutputMediaProps_QueryInterface(IWMOutputMediaProps* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMOutputMediaProps_AddRef(IWMOutputMediaProps* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMOutputMediaProps_Release(IWMOutputMediaProps* This) { return This->lpVtbl->Release(This); } /*** IWMMediaProps methods ***/ static FORCEINLINE HRESULT IWMOutputMediaProps_GetType(IWMOutputMediaProps* This,GUID *pguidType) { return This->lpVtbl->GetType(This,pguidType); } static FORCEINLINE HRESULT IWMOutputMediaProps_GetMediaType(IWMOutputMediaProps* This,WM_MEDIA_TYPE *pType,DWORD *pcbType) { return This->lpVtbl->GetMediaType(This,pType,pcbType); } static FORCEINLINE HRESULT IWMOutputMediaProps_SetMediaType(IWMOutputMediaProps* This,WM_MEDIA_TYPE *pType) { return This->lpVtbl->SetMediaType(This,pType); } /*** IWMOutputMediaProps methods ***/ static FORCEINLINE HRESULT IWMOutputMediaProps_GetStreamGroupName(IWMOutputMediaProps* This,WCHAR *pwszName,WORD *pcchName) { return This->lpVtbl->GetStreamGroupName(This,pwszName,pcchName); } static FORCEINLINE HRESULT IWMOutputMediaProps_GetConnectionName(IWMOutputMediaProps* This,WCHAR *pwszName,WORD *pcchName) { return This->lpVtbl->GetConnectionName(This,pwszName,pcchName); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMOutputMediaProps_GetStreamGroupName_Proxy( IWMOutputMediaProps* This, WCHAR *pwszName, WORD *pcchName); void __RPC_STUB IWMOutputMediaProps_GetStreamGroupName_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMOutputMediaProps_GetConnectionName_Proxy( IWMOutputMediaProps* This, WCHAR *pwszName, WORD *pcchName); void __RPC_STUB IWMOutputMediaProps_GetConnectionName_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMOutputMediaProps_INTERFACE_DEFINED__ */ /***************************************************************************** * IWMMetadataEditor interface */ #ifndef __IWMMetadataEditor_INTERFACE_DEFINED__ #define __IWMMetadataEditor_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMMetadataEditor, 0x96406bd9, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("96406bd9-2b2b-11d3-b36b-00c04f6108ff") IWMMetadataEditor : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Open( const WCHAR *pwszFilename) = 0; virtual HRESULT STDMETHODCALLTYPE Close( ) = 0; virtual HRESULT STDMETHODCALLTYPE Flush( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMMetadataEditor, 0x96406bd9, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff) #endif #else typedef struct IWMMetadataEditorVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMMetadataEditor* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMMetadataEditor* This); ULONG (STDMETHODCALLTYPE *Release)( IWMMetadataEditor* This); /*** IWMMetadataEditor methods ***/ HRESULT (STDMETHODCALLTYPE *Open)( IWMMetadataEditor* This, const WCHAR *pwszFilename); HRESULT (STDMETHODCALLTYPE *Close)( IWMMetadataEditor* This); HRESULT (STDMETHODCALLTYPE *Flush)( IWMMetadataEditor* This); END_INTERFACE } IWMMetadataEditorVtbl; interface IWMMetadataEditor { CONST_VTBL IWMMetadataEditorVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMMetadataEditor_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMMetadataEditor_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMMetadataEditor_Release(This) (This)->lpVtbl->Release(This) /*** IWMMetadataEditor methods ***/ #define IWMMetadataEditor_Open(This,pwszFilename) (This)->lpVtbl->Open(This,pwszFilename) #define IWMMetadataEditor_Close(This) (This)->lpVtbl->Close(This) #define IWMMetadataEditor_Flush(This) (This)->lpVtbl->Flush(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMMetadataEditor_QueryInterface(IWMMetadataEditor* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMMetadataEditor_AddRef(IWMMetadataEditor* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMMetadataEditor_Release(IWMMetadataEditor* This) { return This->lpVtbl->Release(This); } /*** IWMMetadataEditor methods ***/ static FORCEINLINE HRESULT IWMMetadataEditor_Open(IWMMetadataEditor* This,const WCHAR *pwszFilename) { return This->lpVtbl->Open(This,pwszFilename); } static FORCEINLINE HRESULT IWMMetadataEditor_Close(IWMMetadataEditor* This) { return This->lpVtbl->Close(This); } static FORCEINLINE HRESULT IWMMetadataEditor_Flush(IWMMetadataEditor* This) { return This->lpVtbl->Flush(This); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMMetadataEditor_Open_Proxy( IWMMetadataEditor* This, const WCHAR *pwszFilename); void __RPC_STUB IWMMetadataEditor_Open_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMMetadataEditor_Close_Proxy( IWMMetadataEditor* This); void __RPC_STUB IWMMetadataEditor_Close_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMMetadataEditor_Flush_Proxy( IWMMetadataEditor* This); void __RPC_STUB IWMMetadataEditor_Flush_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMMetadataEditor_INTERFACE_DEFINED__ */ /***************************************************************************** * IWMReader interface */ #ifndef __IWMReader_INTERFACE_DEFINED__ #define __IWMReader_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMReader, 0x96406bd6, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("96406bd6-2b2b-11d3-b36b-00c04f6108ff") IWMReader : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Open( const WCHAR *pwszURL, IWMReaderCallback *pCallback, void *pvContext) = 0; virtual HRESULT STDMETHODCALLTYPE Close( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetOutputCount( DWORD *pcOutputs) = 0; virtual HRESULT STDMETHODCALLTYPE GetOutputProps( DWORD dwOutputNum, IWMOutputMediaProps **ppOutput) = 0; virtual HRESULT STDMETHODCALLTYPE SetOutputProps( DWORD dwOutputNum, IWMOutputMediaProps *pOutput) = 0; virtual HRESULT STDMETHODCALLTYPE GetOutputFormatCount( DWORD dwOutputNumber, DWORD *pcFormats) = 0; virtual HRESULT STDMETHODCALLTYPE GetOutputFormat( DWORD dwOutputNumber, DWORD dwFormatNumber, IWMOutputMediaProps **ppProps) = 0; virtual HRESULT STDMETHODCALLTYPE Start( QWORD cnsStart, QWORD cnsDuration, float fRate, void *pvContext) = 0; virtual HRESULT STDMETHODCALLTYPE Stop( ) = 0; virtual HRESULT STDMETHODCALLTYPE Pause( ) = 0; virtual HRESULT STDMETHODCALLTYPE Resume( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMReader, 0x96406bd6, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff) #endif #else typedef struct IWMReaderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMReader* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMReader* This); ULONG (STDMETHODCALLTYPE *Release)( IWMReader* This); /*** IWMReader methods ***/ HRESULT (STDMETHODCALLTYPE *Open)( IWMReader* This, const WCHAR *pwszURL, IWMReaderCallback *pCallback, void *pvContext); HRESULT (STDMETHODCALLTYPE *Close)( IWMReader* This); HRESULT (STDMETHODCALLTYPE *GetOutputCount)( IWMReader* This, DWORD *pcOutputs); HRESULT (STDMETHODCALLTYPE *GetOutputProps)( IWMReader* This, DWORD dwOutputNum, IWMOutputMediaProps **ppOutput); HRESULT (STDMETHODCALLTYPE *SetOutputProps)( IWMReader* This, DWORD dwOutputNum, IWMOutputMediaProps *pOutput); HRESULT (STDMETHODCALLTYPE *GetOutputFormatCount)( IWMReader* This, DWORD dwOutputNumber, DWORD *pcFormats); HRESULT (STDMETHODCALLTYPE *GetOutputFormat)( IWMReader* This, DWORD dwOutputNumber, DWORD dwFormatNumber, IWMOutputMediaProps **ppProps); HRESULT (STDMETHODCALLTYPE *Start)( IWMReader* This, QWORD cnsStart, QWORD cnsDuration, float fRate, void *pvContext); HRESULT (STDMETHODCALLTYPE *Stop)( IWMReader* This); HRESULT (STDMETHODCALLTYPE *Pause)( IWMReader* This); HRESULT (STDMETHODCALLTYPE *Resume)( IWMReader* This); END_INTERFACE } IWMReaderVtbl; interface IWMReader { CONST_VTBL IWMReaderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMReader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMReader_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMReader_Release(This) (This)->lpVtbl->Release(This) /*** IWMReader methods ***/ #define IWMReader_Open(This,pwszURL,pCallback,pvContext) (This)->lpVtbl->Open(This,pwszURL,pCallback,pvContext) #define IWMReader_Close(This) (This)->lpVtbl->Close(This) #define IWMReader_GetOutputCount(This,pcOutputs) (This)->lpVtbl->GetOutputCount(This,pcOutputs) #define IWMReader_GetOutputProps(This,dwOutputNum,ppOutput) (This)->lpVtbl->GetOutputProps(This,dwOutputNum,ppOutput) #define IWMReader_SetOutputProps(This,dwOutputNum,pOutput) (This)->lpVtbl->SetOutputProps(This,dwOutputNum,pOutput) #define IWMReader_GetOutputFormatCount(This,dwOutputNumber,pcFormats) (This)->lpVtbl->GetOutputFormatCount(This,dwOutputNumber,pcFormats) #define IWMReader_GetOutputFormat(This,dwOutputNumber,dwFormatNumber,ppProps) (This)->lpVtbl->GetOutputFormat(This,dwOutputNumber,dwFormatNumber,ppProps) #define IWMReader_Start(This,cnsStart,cnsDuration,fRate,pvContext) (This)->lpVtbl->Start(This,cnsStart,cnsDuration,fRate,pvContext) #define IWMReader_Stop(This) (This)->lpVtbl->Stop(This) #define IWMReader_Pause(This) (This)->lpVtbl->Pause(This) #define IWMReader_Resume(This) (This)->lpVtbl->Resume(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMReader_QueryInterface(IWMReader* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMReader_AddRef(IWMReader* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMReader_Release(IWMReader* This) { return This->lpVtbl->Release(This); } /*** IWMReader methods ***/ static FORCEINLINE HRESULT IWMReader_Open(IWMReader* This,const WCHAR *pwszURL,IWMReaderCallback *pCallback,void *pvContext) { return This->lpVtbl->Open(This,pwszURL,pCallback,pvContext); } static FORCEINLINE HRESULT IWMReader_Close(IWMReader* This) { return This->lpVtbl->Close(This); } static FORCEINLINE HRESULT IWMReader_GetOutputCount(IWMReader* This,DWORD *pcOutputs) { return This->lpVtbl->GetOutputCount(This,pcOutputs); } static FORCEINLINE HRESULT IWMReader_GetOutputProps(IWMReader* This,DWORD dwOutputNum,IWMOutputMediaProps **ppOutput) { return This->lpVtbl->GetOutputProps(This,dwOutputNum,ppOutput); } static FORCEINLINE HRESULT IWMReader_SetOutputProps(IWMReader* This,DWORD dwOutputNum,IWMOutputMediaProps *pOutput) { return This->lpVtbl->SetOutputProps(This,dwOutputNum,pOutput); } static FORCEINLINE HRESULT IWMReader_GetOutputFormatCount(IWMReader* This,DWORD dwOutputNumber,DWORD *pcFormats) { return This->lpVtbl->GetOutputFormatCount(This,dwOutputNumber,pcFormats); } static FORCEINLINE HRESULT IWMReader_GetOutputFormat(IWMReader* This,DWORD dwOutputNumber,DWORD dwFormatNumber,IWMOutputMediaProps **ppProps) { return This->lpVtbl->GetOutputFormat(This,dwOutputNumber,dwFormatNumber,ppProps); } static FORCEINLINE HRESULT IWMReader_Start(IWMReader* This,QWORD cnsStart,QWORD cnsDuration,float fRate,void *pvContext) { return This->lpVtbl->Start(This,cnsStart,cnsDuration,fRate,pvContext); } static FORCEINLINE HRESULT IWMReader_Stop(IWMReader* This) { return This->lpVtbl->Stop(This); } static FORCEINLINE HRESULT IWMReader_Pause(IWMReader* This) { return This->lpVtbl->Pause(This); } static FORCEINLINE HRESULT IWMReader_Resume(IWMReader* This) { return This->lpVtbl->Resume(This); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMReader_Open_Proxy( IWMReader* This, const WCHAR *pwszURL, IWMReaderCallback *pCallback, void *pvContext); void __RPC_STUB IWMReader_Open_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReader_Close_Proxy( IWMReader* This); void __RPC_STUB IWMReader_Close_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReader_GetOutputCount_Proxy( IWMReader* This, DWORD *pcOutputs); void __RPC_STUB IWMReader_GetOutputCount_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReader_GetOutputProps_Proxy( IWMReader* This, DWORD dwOutputNum, IWMOutputMediaProps **ppOutput); void __RPC_STUB IWMReader_GetOutputProps_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReader_SetOutputProps_Proxy( IWMReader* This, DWORD dwOutputNum, IWMOutputMediaProps *pOutput); void __RPC_STUB IWMReader_SetOutputProps_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReader_GetOutputFormatCount_Proxy( IWMReader* This, DWORD dwOutputNumber, DWORD *pcFormats); void __RPC_STUB IWMReader_GetOutputFormatCount_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReader_GetOutputFormat_Proxy( IWMReader* This, DWORD dwOutputNumber, DWORD dwFormatNumber, IWMOutputMediaProps **ppProps); void __RPC_STUB IWMReader_GetOutputFormat_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReader_Start_Proxy( IWMReader* This, QWORD cnsStart, QWORD cnsDuration, float fRate, void *pvContext); void __RPC_STUB IWMReader_Start_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReader_Stop_Proxy( IWMReader* This); void __RPC_STUB IWMReader_Stop_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReader_Pause_Proxy( IWMReader* This); void __RPC_STUB IWMReader_Pause_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReader_Resume_Proxy( IWMReader* This); void __RPC_STUB IWMReader_Resume_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMReader_INTERFACE_DEFINED__ */ /***************************************************************************** * IWMPlayerHook interface */ #ifndef __IWMPlayerHook_INTERFACE_DEFINED__ #define __IWMPlayerHook_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMPlayerHook, 0xe5b7ca9a, 0x0f1c, 0x4f66, 0x90,0x02, 0x74,0xec,0x50,0xd8,0xb3,0x04); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("e5b7ca9a-0f1c-4f66-9002-74ec50d8b304") IWMPlayerHook : public IUnknown { virtual HRESULT STDMETHODCALLTYPE PreDecode( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMPlayerHook, 0xe5b7ca9a, 0x0f1c, 0x4f66, 0x90,0x02, 0x74,0xec,0x50,0xd8,0xb3,0x04) #endif #else typedef struct IWMPlayerHookVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMPlayerHook* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMPlayerHook* This); ULONG (STDMETHODCALLTYPE *Release)( IWMPlayerHook* This); /*** IWMPlayerHook methods ***/ HRESULT (STDMETHODCALLTYPE *PreDecode)( IWMPlayerHook* This); END_INTERFACE } IWMPlayerHookVtbl; interface IWMPlayerHook { CONST_VTBL IWMPlayerHookVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMPlayerHook_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMPlayerHook_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMPlayerHook_Release(This) (This)->lpVtbl->Release(This) /*** IWMPlayerHook methods ***/ #define IWMPlayerHook_PreDecode(This) (This)->lpVtbl->PreDecode(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMPlayerHook_QueryInterface(IWMPlayerHook* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMPlayerHook_AddRef(IWMPlayerHook* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMPlayerHook_Release(IWMPlayerHook* This) { return This->lpVtbl->Release(This); } /*** IWMPlayerHook methods ***/ static FORCEINLINE HRESULT IWMPlayerHook_PreDecode(IWMPlayerHook* This) { return This->lpVtbl->PreDecode(This); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMPlayerHook_PreDecode_Proxy( IWMPlayerHook* This); void __RPC_STUB IWMPlayerHook_PreDecode_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMPlayerHook_INTERFACE_DEFINED__ */ /***************************************************************************** * IWMReaderAdvanced interface */ #ifndef __IWMReaderAdvanced_INTERFACE_DEFINED__ #define __IWMReaderAdvanced_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMReaderAdvanced, 0x96406bea, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("96406bea-2b2b-11d3-b36b-00c04f6108ff") IWMReaderAdvanced : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetUserProvidedClock( WINBOOL fUserClock) = 0; virtual HRESULT STDMETHODCALLTYPE GetUserProvidedClock( WINBOOL *pfUserClock) = 0; virtual HRESULT STDMETHODCALLTYPE DeliverTime( QWORD cnsTime) = 0; virtual HRESULT STDMETHODCALLTYPE SetManualStreamSelection( WINBOOL fSelection) = 0; virtual HRESULT STDMETHODCALLTYPE GetManualStreamSelection( WINBOOL *pfSelection) = 0; virtual HRESULT STDMETHODCALLTYPE SetStreamsSelected( WORD cStreamCount, WORD *pwStreamNumbers, WMT_STREAM_SELECTION *pSelections) = 0; virtual HRESULT STDMETHODCALLTYPE GetStreamSelected( WORD wStreamNum, WMT_STREAM_SELECTION *pSelection) = 0; virtual HRESULT STDMETHODCALLTYPE SetReceiveSelectionCallbacks( WINBOOL fGetCallbacks) = 0; virtual HRESULT STDMETHODCALLTYPE GetReceiveSelectionCallbacks( WINBOOL *pfGetCallbacks) = 0; virtual HRESULT STDMETHODCALLTYPE SetReceiveStreamSamples( WORD wStreamNum, WINBOOL fReceiveStreamSamples) = 0; virtual HRESULT STDMETHODCALLTYPE GetReceiveStreamSamples( WORD wStreamNum, WINBOOL *pfReceiveStreamSamples) = 0; virtual HRESULT STDMETHODCALLTYPE SetAllocateForOutput( DWORD dwOutputNum, WINBOOL fAllocate) = 0; virtual HRESULT STDMETHODCALLTYPE GetAllocateForOutput( DWORD dwOutputNum, WINBOOL *pfAllocate) = 0; virtual HRESULT STDMETHODCALLTYPE SetAllocateForStream( WORD wStreamNum, WINBOOL fAllocate) = 0; virtual HRESULT STDMETHODCALLTYPE GetAllocateForStream( WORD dwSreamNum, WINBOOL *pfAllocate) = 0; virtual HRESULT STDMETHODCALLTYPE GetStatistics( WM_READER_STATISTICS *pStatistics) = 0; virtual HRESULT STDMETHODCALLTYPE SetClientInfo( WM_READER_CLIENTINFO *pClientInfo) = 0; virtual HRESULT STDMETHODCALLTYPE GetMaxOutputSampleSize( DWORD dwOutput, DWORD *pcbMax) = 0; virtual HRESULT STDMETHODCALLTYPE GetMaxStreamSampleSize( WORD wStream, DWORD *pcbMax) = 0; virtual HRESULT STDMETHODCALLTYPE NotifyLateDelivery( QWORD cnsLateness) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMReaderAdvanced, 0x96406bea, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff) #endif #else typedef struct IWMReaderAdvancedVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMReaderAdvanced* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMReaderAdvanced* This); ULONG (STDMETHODCALLTYPE *Release)( IWMReaderAdvanced* This); /*** IWMReaderAdvanced methods ***/ HRESULT (STDMETHODCALLTYPE *SetUserProvidedClock)( IWMReaderAdvanced* This, WINBOOL fUserClock); HRESULT (STDMETHODCALLTYPE *GetUserProvidedClock)( IWMReaderAdvanced* This, WINBOOL *pfUserClock); HRESULT (STDMETHODCALLTYPE *DeliverTime)( IWMReaderAdvanced* This, QWORD cnsTime); HRESULT (STDMETHODCALLTYPE *SetManualStreamSelection)( IWMReaderAdvanced* This, WINBOOL fSelection); HRESULT (STDMETHODCALLTYPE *GetManualStreamSelection)( IWMReaderAdvanced* This, WINBOOL *pfSelection); HRESULT (STDMETHODCALLTYPE *SetStreamsSelected)( IWMReaderAdvanced* This, WORD cStreamCount, WORD *pwStreamNumbers, WMT_STREAM_SELECTION *pSelections); HRESULT (STDMETHODCALLTYPE *GetStreamSelected)( IWMReaderAdvanced* This, WORD wStreamNum, WMT_STREAM_SELECTION *pSelection); HRESULT (STDMETHODCALLTYPE *SetReceiveSelectionCallbacks)( IWMReaderAdvanced* This, WINBOOL fGetCallbacks); HRESULT (STDMETHODCALLTYPE *GetReceiveSelectionCallbacks)( IWMReaderAdvanced* This, WINBOOL *pfGetCallbacks); HRESULT (STDMETHODCALLTYPE *SetReceiveStreamSamples)( IWMReaderAdvanced* This, WORD wStreamNum, WINBOOL fReceiveStreamSamples); HRESULT (STDMETHODCALLTYPE *GetReceiveStreamSamples)( IWMReaderAdvanced* This, WORD wStreamNum, WINBOOL *pfReceiveStreamSamples); HRESULT (STDMETHODCALLTYPE *SetAllocateForOutput)( IWMReaderAdvanced* This, DWORD dwOutputNum, WINBOOL fAllocate); HRESULT (STDMETHODCALLTYPE *GetAllocateForOutput)( IWMReaderAdvanced* This, DWORD dwOutputNum, WINBOOL *pfAllocate); HRESULT (STDMETHODCALLTYPE *SetAllocateForStream)( IWMReaderAdvanced* This, WORD wStreamNum, WINBOOL fAllocate); HRESULT (STDMETHODCALLTYPE *GetAllocateForStream)( IWMReaderAdvanced* This, WORD dwSreamNum, WINBOOL *pfAllocate); HRESULT (STDMETHODCALLTYPE *GetStatistics)( IWMReaderAdvanced* This, WM_READER_STATISTICS *pStatistics); HRESULT (STDMETHODCALLTYPE *SetClientInfo)( IWMReaderAdvanced* This, WM_READER_CLIENTINFO *pClientInfo); HRESULT (STDMETHODCALLTYPE *GetMaxOutputSampleSize)( IWMReaderAdvanced* This, DWORD dwOutput, DWORD *pcbMax); HRESULT (STDMETHODCALLTYPE *GetMaxStreamSampleSize)( IWMReaderAdvanced* This, WORD wStream, DWORD *pcbMax); HRESULT (STDMETHODCALLTYPE *NotifyLateDelivery)( IWMReaderAdvanced* This, QWORD cnsLateness); END_INTERFACE } IWMReaderAdvancedVtbl; interface IWMReaderAdvanced { CONST_VTBL IWMReaderAdvancedVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMReaderAdvanced_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMReaderAdvanced_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMReaderAdvanced_Release(This) (This)->lpVtbl->Release(This) /*** IWMReaderAdvanced methods ***/ #define IWMReaderAdvanced_SetUserProvidedClock(This,fUserClock) (This)->lpVtbl->SetUserProvidedClock(This,fUserClock) #define IWMReaderAdvanced_GetUserProvidedClock(This,pfUserClock) (This)->lpVtbl->GetUserProvidedClock(This,pfUserClock) #define IWMReaderAdvanced_DeliverTime(This,cnsTime) (This)->lpVtbl->DeliverTime(This,cnsTime) #define IWMReaderAdvanced_SetManualStreamSelection(This,fSelection) (This)->lpVtbl->SetManualStreamSelection(This,fSelection) #define IWMReaderAdvanced_GetManualStreamSelection(This,pfSelection) (This)->lpVtbl->GetManualStreamSelection(This,pfSelection) #define IWMReaderAdvanced_SetStreamsSelected(This,cStreamCount,pwStreamNumbers,pSelections) (This)->lpVtbl->SetStreamsSelected(This,cStreamCount,pwStreamNumbers,pSelections) #define IWMReaderAdvanced_GetStreamSelected(This,wStreamNum,pSelection) (This)->lpVtbl->GetStreamSelected(This,wStreamNum,pSelection) #define IWMReaderAdvanced_SetReceiveSelectionCallbacks(This,fGetCallbacks) (This)->lpVtbl->SetReceiveSelectionCallbacks(This,fGetCallbacks) #define IWMReaderAdvanced_GetReceiveSelectionCallbacks(This,pfGetCallbacks) (This)->lpVtbl->GetReceiveSelectionCallbacks(This,pfGetCallbacks) #define IWMReaderAdvanced_SetReceiveStreamSamples(This,wStreamNum,fReceiveStreamSamples) (This)->lpVtbl->SetReceiveStreamSamples(This,wStreamNum,fReceiveStreamSamples) #define IWMReaderAdvanced_GetReceiveStreamSamples(This,wStreamNum,pfReceiveStreamSamples) (This)->lpVtbl->GetReceiveStreamSamples(This,wStreamNum,pfReceiveStreamSamples) #define IWMReaderAdvanced_SetAllocateForOutput(This,dwOutputNum,fAllocate) (This)->lpVtbl->SetAllocateForOutput(This,dwOutputNum,fAllocate) #define IWMReaderAdvanced_GetAllocateForOutput(This,dwOutputNum,pfAllocate) (This)->lpVtbl->GetAllocateForOutput(This,dwOutputNum,pfAllocate) #define IWMReaderAdvanced_SetAllocateForStream(This,wStreamNum,fAllocate) (This)->lpVtbl->SetAllocateForStream(This,wStreamNum,fAllocate) #define IWMReaderAdvanced_GetAllocateForStream(This,dwSreamNum,pfAllocate) (This)->lpVtbl->GetAllocateForStream(This,dwSreamNum,pfAllocate) #define IWMReaderAdvanced_GetStatistics(This,pStatistics) (This)->lpVtbl->GetStatistics(This,pStatistics) #define IWMReaderAdvanced_SetClientInfo(This,pClientInfo) (This)->lpVtbl->SetClientInfo(This,pClientInfo) #define IWMReaderAdvanced_GetMaxOutputSampleSize(This,dwOutput,pcbMax) (This)->lpVtbl->GetMaxOutputSampleSize(This,dwOutput,pcbMax) #define IWMReaderAdvanced_GetMaxStreamSampleSize(This,wStream,pcbMax) (This)->lpVtbl->GetMaxStreamSampleSize(This,wStream,pcbMax) #define IWMReaderAdvanced_NotifyLateDelivery(This,cnsLateness) (This)->lpVtbl->NotifyLateDelivery(This,cnsLateness) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced_QueryInterface(IWMReaderAdvanced* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMReaderAdvanced_AddRef(IWMReaderAdvanced* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMReaderAdvanced_Release(IWMReaderAdvanced* This) { return This->lpVtbl->Release(This); } /*** IWMReaderAdvanced methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced_SetUserProvidedClock(IWMReaderAdvanced* This,WINBOOL fUserClock) { return This->lpVtbl->SetUserProvidedClock(This,fUserClock); } static FORCEINLINE HRESULT IWMReaderAdvanced_GetUserProvidedClock(IWMReaderAdvanced* This,WINBOOL *pfUserClock) { return This->lpVtbl->GetUserProvidedClock(This,pfUserClock); } static FORCEINLINE HRESULT IWMReaderAdvanced_DeliverTime(IWMReaderAdvanced* This,QWORD cnsTime) { return This->lpVtbl->DeliverTime(This,cnsTime); } static FORCEINLINE HRESULT IWMReaderAdvanced_SetManualStreamSelection(IWMReaderAdvanced* This,WINBOOL fSelection) { return This->lpVtbl->SetManualStreamSelection(This,fSelection); } static FORCEINLINE HRESULT IWMReaderAdvanced_GetManualStreamSelection(IWMReaderAdvanced* This,WINBOOL *pfSelection) { return This->lpVtbl->GetManualStreamSelection(This,pfSelection); } static FORCEINLINE HRESULT IWMReaderAdvanced_SetStreamsSelected(IWMReaderAdvanced* This,WORD cStreamCount,WORD *pwStreamNumbers,WMT_STREAM_SELECTION *pSelections) { return This->lpVtbl->SetStreamsSelected(This,cStreamCount,pwStreamNumbers,pSelections); } static FORCEINLINE HRESULT IWMReaderAdvanced_GetStreamSelected(IWMReaderAdvanced* This,WORD wStreamNum,WMT_STREAM_SELECTION *pSelection) { return This->lpVtbl->GetStreamSelected(This,wStreamNum,pSelection); } static FORCEINLINE HRESULT IWMReaderAdvanced_SetReceiveSelectionCallbacks(IWMReaderAdvanced* This,WINBOOL fGetCallbacks) { return This->lpVtbl->SetReceiveSelectionCallbacks(This,fGetCallbacks); } static FORCEINLINE HRESULT IWMReaderAdvanced_GetReceiveSelectionCallbacks(IWMReaderAdvanced* This,WINBOOL *pfGetCallbacks) { return This->lpVtbl->GetReceiveSelectionCallbacks(This,pfGetCallbacks); } static FORCEINLINE HRESULT IWMReaderAdvanced_SetReceiveStreamSamples(IWMReaderAdvanced* This,WORD wStreamNum,WINBOOL fReceiveStreamSamples) { return This->lpVtbl->SetReceiveStreamSamples(This,wStreamNum,fReceiveStreamSamples); } static FORCEINLINE HRESULT IWMReaderAdvanced_GetReceiveStreamSamples(IWMReaderAdvanced* This,WORD wStreamNum,WINBOOL *pfReceiveStreamSamples) { return This->lpVtbl->GetReceiveStreamSamples(This,wStreamNum,pfReceiveStreamSamples); } static FORCEINLINE HRESULT IWMReaderAdvanced_SetAllocateForOutput(IWMReaderAdvanced* This,DWORD dwOutputNum,WINBOOL fAllocate) { return This->lpVtbl->SetAllocateForOutput(This,dwOutputNum,fAllocate); } static FORCEINLINE HRESULT IWMReaderAdvanced_GetAllocateForOutput(IWMReaderAdvanced* This,DWORD dwOutputNum,WINBOOL *pfAllocate) { return This->lpVtbl->GetAllocateForOutput(This,dwOutputNum,pfAllocate); } static FORCEINLINE HRESULT IWMReaderAdvanced_SetAllocateForStream(IWMReaderAdvanced* This,WORD wStreamNum,WINBOOL fAllocate) { return This->lpVtbl->SetAllocateForStream(This,wStreamNum,fAllocate); } static FORCEINLINE HRESULT IWMReaderAdvanced_GetAllocateForStream(IWMReaderAdvanced* This,WORD dwSreamNum,WINBOOL *pfAllocate) { return This->lpVtbl->GetAllocateForStream(This,dwSreamNum,pfAllocate); } static FORCEINLINE HRESULT IWMReaderAdvanced_GetStatistics(IWMReaderAdvanced* This,WM_READER_STATISTICS *pStatistics) { return This->lpVtbl->GetStatistics(This,pStatistics); } static FORCEINLINE HRESULT IWMReaderAdvanced_SetClientInfo(IWMReaderAdvanced* This,WM_READER_CLIENTINFO *pClientInfo) { return This->lpVtbl->SetClientInfo(This,pClientInfo); } static FORCEINLINE HRESULT IWMReaderAdvanced_GetMaxOutputSampleSize(IWMReaderAdvanced* This,DWORD dwOutput,DWORD *pcbMax) { return This->lpVtbl->GetMaxOutputSampleSize(This,dwOutput,pcbMax); } static FORCEINLINE HRESULT IWMReaderAdvanced_GetMaxStreamSampleSize(IWMReaderAdvanced* This,WORD wStream,DWORD *pcbMax) { return This->lpVtbl->GetMaxStreamSampleSize(This,wStream,pcbMax); } static FORCEINLINE HRESULT IWMReaderAdvanced_NotifyLateDelivery(IWMReaderAdvanced* This,QWORD cnsLateness) { return This->lpVtbl->NotifyLateDelivery(This,cnsLateness); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMReaderAdvanced_SetUserProvidedClock_Proxy( IWMReaderAdvanced* This, WINBOOL fUserClock); void __RPC_STUB IWMReaderAdvanced_SetUserProvidedClock_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced_GetUserProvidedClock_Proxy( IWMReaderAdvanced* This, WINBOOL *pfUserClock); void __RPC_STUB IWMReaderAdvanced_GetUserProvidedClock_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced_DeliverTime_Proxy( IWMReaderAdvanced* This, QWORD cnsTime); void __RPC_STUB IWMReaderAdvanced_DeliverTime_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced_SetManualStreamSelection_Proxy( IWMReaderAdvanced* This, WINBOOL fSelection); void __RPC_STUB IWMReaderAdvanced_SetManualStreamSelection_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced_GetManualStreamSelection_Proxy( IWMReaderAdvanced* This, WINBOOL *pfSelection); void __RPC_STUB IWMReaderAdvanced_GetManualStreamSelection_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced_SetStreamsSelected_Proxy( IWMReaderAdvanced* This, WORD cStreamCount, WORD *pwStreamNumbers, WMT_STREAM_SELECTION *pSelections); void __RPC_STUB IWMReaderAdvanced_SetStreamsSelected_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced_GetStreamSelected_Proxy( IWMReaderAdvanced* This, WORD wStreamNum, WMT_STREAM_SELECTION *pSelection); void __RPC_STUB IWMReaderAdvanced_GetStreamSelected_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced_SetReceiveSelectionCallbacks_Proxy( IWMReaderAdvanced* This, WINBOOL fGetCallbacks); void __RPC_STUB IWMReaderAdvanced_SetReceiveSelectionCallbacks_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced_GetReceiveSelectionCallbacks_Proxy( IWMReaderAdvanced* This, WINBOOL *pfGetCallbacks); void __RPC_STUB IWMReaderAdvanced_GetReceiveSelectionCallbacks_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced_SetReceiveStreamSamples_Proxy( IWMReaderAdvanced* This, WORD wStreamNum, WINBOOL fReceiveStreamSamples); void __RPC_STUB IWMReaderAdvanced_SetReceiveStreamSamples_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced_GetReceiveStreamSamples_Proxy( IWMReaderAdvanced* This, WORD wStreamNum, WINBOOL *pfReceiveStreamSamples); void __RPC_STUB IWMReaderAdvanced_GetReceiveStreamSamples_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced_SetAllocateForOutput_Proxy( IWMReaderAdvanced* This, DWORD dwOutputNum, WINBOOL fAllocate); void __RPC_STUB IWMReaderAdvanced_SetAllocateForOutput_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced_GetAllocateForOutput_Proxy( IWMReaderAdvanced* This, DWORD dwOutputNum, WINBOOL *pfAllocate); void __RPC_STUB IWMReaderAdvanced_GetAllocateForOutput_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced_SetAllocateForStream_Proxy( IWMReaderAdvanced* This, WORD wStreamNum, WINBOOL fAllocate); void __RPC_STUB IWMReaderAdvanced_SetAllocateForStream_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced_GetAllocateForStream_Proxy( IWMReaderAdvanced* This, WORD dwSreamNum, WINBOOL *pfAllocate); void __RPC_STUB IWMReaderAdvanced_GetAllocateForStream_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced_GetStatistics_Proxy( IWMReaderAdvanced* This, WM_READER_STATISTICS *pStatistics); void __RPC_STUB IWMReaderAdvanced_GetStatistics_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced_SetClientInfo_Proxy( IWMReaderAdvanced* This, WM_READER_CLIENTINFO *pClientInfo); void __RPC_STUB IWMReaderAdvanced_SetClientInfo_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced_GetMaxOutputSampleSize_Proxy( IWMReaderAdvanced* This, DWORD dwOutput, DWORD *pcbMax); void __RPC_STUB IWMReaderAdvanced_GetMaxOutputSampleSize_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced_GetMaxStreamSampleSize_Proxy( IWMReaderAdvanced* This, WORD wStream, DWORD *pcbMax); void __RPC_STUB IWMReaderAdvanced_GetMaxStreamSampleSize_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced_NotifyLateDelivery_Proxy( IWMReaderAdvanced* This, QWORD cnsLateness); void __RPC_STUB IWMReaderAdvanced_NotifyLateDelivery_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMReaderAdvanced_INTERFACE_DEFINED__ */ /***************************************************************************** * IWMReaderAdvanced2 interface */ #ifndef __IWMReaderAdvanced2_INTERFACE_DEFINED__ #define __IWMReaderAdvanced2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMReaderAdvanced2, 0xae14a945, 0xb90c, 0x4d0d, 0x91,0x27, 0x80,0xd6,0x65,0xf7,0xd7,0x3e); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("ae14a945-b90c-4d0d-9127-80d665f7d73e") IWMReaderAdvanced2 : public IWMReaderAdvanced { virtual HRESULT STDMETHODCALLTYPE SetPlayMode( WMT_PLAY_MODE Mode) = 0; virtual HRESULT STDMETHODCALLTYPE GetPlayMode( WMT_PLAY_MODE *pMode) = 0; virtual HRESULT STDMETHODCALLTYPE GetBufferProgress( DWORD *pdwPercent, QWORD *pcnsBuffering) = 0; virtual HRESULT STDMETHODCALLTYPE GetDownloadProgress( DWORD *pdwPercent, QWORD *pqwBytesDownloaded, QWORD *pcnsDownload) = 0; virtual HRESULT STDMETHODCALLTYPE GetSaveAsProgress( DWORD *pdwPercent) = 0; virtual HRESULT STDMETHODCALLTYPE SaveFileAs( const WCHAR *pwszFilename) = 0; virtual HRESULT STDMETHODCALLTYPE GetProtocolName( WCHAR *pwszProtocol, DWORD *pcchProtocol) = 0; virtual HRESULT STDMETHODCALLTYPE StartAtMarker( WORD wMarkerIndex, QWORD cnsDuration, float fRate, void *pvContext) = 0; virtual HRESULT STDMETHODCALLTYPE GetOutputSetting( DWORD dwOutputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE *pType, BYTE *pValue, WORD *pcbLength) = 0; virtual HRESULT STDMETHODCALLTYPE SetOutputSetting( DWORD dwOutputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE Type, const BYTE *pValue, WORD cbLength) = 0; virtual HRESULT STDMETHODCALLTYPE Preroll( QWORD cnsStart, QWORD cnsDuration, float fRate) = 0; virtual HRESULT STDMETHODCALLTYPE SetLogClientID( WINBOOL fLogClientID) = 0; virtual HRESULT STDMETHODCALLTYPE GetLogClientID( WINBOOL *pfLogClientID) = 0; virtual HRESULT STDMETHODCALLTYPE StopBuffering( ) = 0; virtual HRESULT STDMETHODCALLTYPE OpenStream( IStream *pStream, IWMReaderCallback *pCallback, void *pvContext) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMReaderAdvanced2, 0xae14a945, 0xb90c, 0x4d0d, 0x91,0x27, 0x80,0xd6,0x65,0xf7,0xd7,0x3e) #endif #else typedef struct IWMReaderAdvanced2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMReaderAdvanced2* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMReaderAdvanced2* This); ULONG (STDMETHODCALLTYPE *Release)( IWMReaderAdvanced2* This); /*** IWMReaderAdvanced methods ***/ HRESULT (STDMETHODCALLTYPE *SetUserProvidedClock)( IWMReaderAdvanced2* This, WINBOOL fUserClock); HRESULT (STDMETHODCALLTYPE *GetUserProvidedClock)( IWMReaderAdvanced2* This, WINBOOL *pfUserClock); HRESULT (STDMETHODCALLTYPE *DeliverTime)( IWMReaderAdvanced2* This, QWORD cnsTime); HRESULT (STDMETHODCALLTYPE *SetManualStreamSelection)( IWMReaderAdvanced2* This, WINBOOL fSelection); HRESULT (STDMETHODCALLTYPE *GetManualStreamSelection)( IWMReaderAdvanced2* This, WINBOOL *pfSelection); HRESULT (STDMETHODCALLTYPE *SetStreamsSelected)( IWMReaderAdvanced2* This, WORD cStreamCount, WORD *pwStreamNumbers, WMT_STREAM_SELECTION *pSelections); HRESULT (STDMETHODCALLTYPE *GetStreamSelected)( IWMReaderAdvanced2* This, WORD wStreamNum, WMT_STREAM_SELECTION *pSelection); HRESULT (STDMETHODCALLTYPE *SetReceiveSelectionCallbacks)( IWMReaderAdvanced2* This, WINBOOL fGetCallbacks); HRESULT (STDMETHODCALLTYPE *GetReceiveSelectionCallbacks)( IWMReaderAdvanced2* This, WINBOOL *pfGetCallbacks); HRESULT (STDMETHODCALLTYPE *SetReceiveStreamSamples)( IWMReaderAdvanced2* This, WORD wStreamNum, WINBOOL fReceiveStreamSamples); HRESULT (STDMETHODCALLTYPE *GetReceiveStreamSamples)( IWMReaderAdvanced2* This, WORD wStreamNum, WINBOOL *pfReceiveStreamSamples); HRESULT (STDMETHODCALLTYPE *SetAllocateForOutput)( IWMReaderAdvanced2* This, DWORD dwOutputNum, WINBOOL fAllocate); HRESULT (STDMETHODCALLTYPE *GetAllocateForOutput)( IWMReaderAdvanced2* This, DWORD dwOutputNum, WINBOOL *pfAllocate); HRESULT (STDMETHODCALLTYPE *SetAllocateForStream)( IWMReaderAdvanced2* This, WORD wStreamNum, WINBOOL fAllocate); HRESULT (STDMETHODCALLTYPE *GetAllocateForStream)( IWMReaderAdvanced2* This, WORD dwSreamNum, WINBOOL *pfAllocate); HRESULT (STDMETHODCALLTYPE *GetStatistics)( IWMReaderAdvanced2* This, WM_READER_STATISTICS *pStatistics); HRESULT (STDMETHODCALLTYPE *SetClientInfo)( IWMReaderAdvanced2* This, WM_READER_CLIENTINFO *pClientInfo); HRESULT (STDMETHODCALLTYPE *GetMaxOutputSampleSize)( IWMReaderAdvanced2* This, DWORD dwOutput, DWORD *pcbMax); HRESULT (STDMETHODCALLTYPE *GetMaxStreamSampleSize)( IWMReaderAdvanced2* This, WORD wStream, DWORD *pcbMax); HRESULT (STDMETHODCALLTYPE *NotifyLateDelivery)( IWMReaderAdvanced2* This, QWORD cnsLateness); /*** IWMReaderAdvanced2 methods ***/ HRESULT (STDMETHODCALLTYPE *SetPlayMode)( IWMReaderAdvanced2* This, WMT_PLAY_MODE Mode); HRESULT (STDMETHODCALLTYPE *GetPlayMode)( IWMReaderAdvanced2* This, WMT_PLAY_MODE *pMode); HRESULT (STDMETHODCALLTYPE *GetBufferProgress)( IWMReaderAdvanced2* This, DWORD *pdwPercent, QWORD *pcnsBuffering); HRESULT (STDMETHODCALLTYPE *GetDownloadProgress)( IWMReaderAdvanced2* This, DWORD *pdwPercent, QWORD *pqwBytesDownloaded, QWORD *pcnsDownload); HRESULT (STDMETHODCALLTYPE *GetSaveAsProgress)( IWMReaderAdvanced2* This, DWORD *pdwPercent); HRESULT (STDMETHODCALLTYPE *SaveFileAs)( IWMReaderAdvanced2* This, const WCHAR *pwszFilename); HRESULT (STDMETHODCALLTYPE *GetProtocolName)( IWMReaderAdvanced2* This, WCHAR *pwszProtocol, DWORD *pcchProtocol); HRESULT (STDMETHODCALLTYPE *StartAtMarker)( IWMReaderAdvanced2* This, WORD wMarkerIndex, QWORD cnsDuration, float fRate, void *pvContext); HRESULT (STDMETHODCALLTYPE *GetOutputSetting)( IWMReaderAdvanced2* This, DWORD dwOutputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE *pType, BYTE *pValue, WORD *pcbLength); HRESULT (STDMETHODCALLTYPE *SetOutputSetting)( IWMReaderAdvanced2* This, DWORD dwOutputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE Type, const BYTE *pValue, WORD cbLength); HRESULT (STDMETHODCALLTYPE *Preroll)( IWMReaderAdvanced2* This, QWORD cnsStart, QWORD cnsDuration, float fRate); HRESULT (STDMETHODCALLTYPE *SetLogClientID)( IWMReaderAdvanced2* This, WINBOOL fLogClientID); HRESULT (STDMETHODCALLTYPE *GetLogClientID)( IWMReaderAdvanced2* This, WINBOOL *pfLogClientID); HRESULT (STDMETHODCALLTYPE *StopBuffering)( IWMReaderAdvanced2* This); HRESULT (STDMETHODCALLTYPE *OpenStream)( IWMReaderAdvanced2* This, IStream *pStream, IWMReaderCallback *pCallback, void *pvContext); END_INTERFACE } IWMReaderAdvanced2Vtbl; interface IWMReaderAdvanced2 { CONST_VTBL IWMReaderAdvanced2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMReaderAdvanced2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMReaderAdvanced2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMReaderAdvanced2_Release(This) (This)->lpVtbl->Release(This) /*** IWMReaderAdvanced methods ***/ #define IWMReaderAdvanced2_SetUserProvidedClock(This,fUserClock) (This)->lpVtbl->SetUserProvidedClock(This,fUserClock) #define IWMReaderAdvanced2_GetUserProvidedClock(This,pfUserClock) (This)->lpVtbl->GetUserProvidedClock(This,pfUserClock) #define IWMReaderAdvanced2_DeliverTime(This,cnsTime) (This)->lpVtbl->DeliverTime(This,cnsTime) #define IWMReaderAdvanced2_SetManualStreamSelection(This,fSelection) (This)->lpVtbl->SetManualStreamSelection(This,fSelection) #define IWMReaderAdvanced2_GetManualStreamSelection(This,pfSelection) (This)->lpVtbl->GetManualStreamSelection(This,pfSelection) #define IWMReaderAdvanced2_SetStreamsSelected(This,cStreamCount,pwStreamNumbers,pSelections) (This)->lpVtbl->SetStreamsSelected(This,cStreamCount,pwStreamNumbers,pSelections) #define IWMReaderAdvanced2_GetStreamSelected(This,wStreamNum,pSelection) (This)->lpVtbl->GetStreamSelected(This,wStreamNum,pSelection) #define IWMReaderAdvanced2_SetReceiveSelectionCallbacks(This,fGetCallbacks) (This)->lpVtbl->SetReceiveSelectionCallbacks(This,fGetCallbacks) #define IWMReaderAdvanced2_GetReceiveSelectionCallbacks(This,pfGetCallbacks) (This)->lpVtbl->GetReceiveSelectionCallbacks(This,pfGetCallbacks) #define IWMReaderAdvanced2_SetReceiveStreamSamples(This,wStreamNum,fReceiveStreamSamples) (This)->lpVtbl->SetReceiveStreamSamples(This,wStreamNum,fReceiveStreamSamples) #define IWMReaderAdvanced2_GetReceiveStreamSamples(This,wStreamNum,pfReceiveStreamSamples) (This)->lpVtbl->GetReceiveStreamSamples(This,wStreamNum,pfReceiveStreamSamples) #define IWMReaderAdvanced2_SetAllocateForOutput(This,dwOutputNum,fAllocate) (This)->lpVtbl->SetAllocateForOutput(This,dwOutputNum,fAllocate) #define IWMReaderAdvanced2_GetAllocateForOutput(This,dwOutputNum,pfAllocate) (This)->lpVtbl->GetAllocateForOutput(This,dwOutputNum,pfAllocate) #define IWMReaderAdvanced2_SetAllocateForStream(This,wStreamNum,fAllocate) (This)->lpVtbl->SetAllocateForStream(This,wStreamNum,fAllocate) #define IWMReaderAdvanced2_GetAllocateForStream(This,dwSreamNum,pfAllocate) (This)->lpVtbl->GetAllocateForStream(This,dwSreamNum,pfAllocate) #define IWMReaderAdvanced2_GetStatistics(This,pStatistics) (This)->lpVtbl->GetStatistics(This,pStatistics) #define IWMReaderAdvanced2_SetClientInfo(This,pClientInfo) (This)->lpVtbl->SetClientInfo(This,pClientInfo) #define IWMReaderAdvanced2_GetMaxOutputSampleSize(This,dwOutput,pcbMax) (This)->lpVtbl->GetMaxOutputSampleSize(This,dwOutput,pcbMax) #define IWMReaderAdvanced2_GetMaxStreamSampleSize(This,wStream,pcbMax) (This)->lpVtbl->GetMaxStreamSampleSize(This,wStream,pcbMax) #define IWMReaderAdvanced2_NotifyLateDelivery(This,cnsLateness) (This)->lpVtbl->NotifyLateDelivery(This,cnsLateness) /*** IWMReaderAdvanced2 methods ***/ #define IWMReaderAdvanced2_SetPlayMode(This,Mode) (This)->lpVtbl->SetPlayMode(This,Mode) #define IWMReaderAdvanced2_GetPlayMode(This,pMode) (This)->lpVtbl->GetPlayMode(This,pMode) #define IWMReaderAdvanced2_GetBufferProgress(This,pdwPercent,pcnsBuffering) (This)->lpVtbl->GetBufferProgress(This,pdwPercent,pcnsBuffering) #define IWMReaderAdvanced2_GetDownloadProgress(This,pdwPercent,pqwBytesDownloaded,pcnsDownload) (This)->lpVtbl->GetDownloadProgress(This,pdwPercent,pqwBytesDownloaded,pcnsDownload) #define IWMReaderAdvanced2_GetSaveAsProgress(This,pdwPercent) (This)->lpVtbl->GetSaveAsProgress(This,pdwPercent) #define IWMReaderAdvanced2_SaveFileAs(This,pwszFilename) (This)->lpVtbl->SaveFileAs(This,pwszFilename) #define IWMReaderAdvanced2_GetProtocolName(This,pwszProtocol,pcchProtocol) (This)->lpVtbl->GetProtocolName(This,pwszProtocol,pcchProtocol) #define IWMReaderAdvanced2_StartAtMarker(This,wMarkerIndex,cnsDuration,fRate,pvContext) (This)->lpVtbl->StartAtMarker(This,wMarkerIndex,cnsDuration,fRate,pvContext) #define IWMReaderAdvanced2_GetOutputSetting(This,dwOutputNum,pszName,pType,pValue,pcbLength) (This)->lpVtbl->GetOutputSetting(This,dwOutputNum,pszName,pType,pValue,pcbLength) #define IWMReaderAdvanced2_SetOutputSetting(This,dwOutputNum,pszName,Type,pValue,cbLength) (This)->lpVtbl->SetOutputSetting(This,dwOutputNum,pszName,Type,pValue,cbLength) #define IWMReaderAdvanced2_Preroll(This,cnsStart,cnsDuration,fRate) (This)->lpVtbl->Preroll(This,cnsStart,cnsDuration,fRate) #define IWMReaderAdvanced2_SetLogClientID(This,fLogClientID) (This)->lpVtbl->SetLogClientID(This,fLogClientID) #define IWMReaderAdvanced2_GetLogClientID(This,pfLogClientID) (This)->lpVtbl->GetLogClientID(This,pfLogClientID) #define IWMReaderAdvanced2_StopBuffering(This) (This)->lpVtbl->StopBuffering(This) #define IWMReaderAdvanced2_OpenStream(This,pStream,pCallback,pvContext) (This)->lpVtbl->OpenStream(This,pStream,pCallback,pvContext) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced2_QueryInterface(IWMReaderAdvanced2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMReaderAdvanced2_AddRef(IWMReaderAdvanced2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMReaderAdvanced2_Release(IWMReaderAdvanced2* This) { return This->lpVtbl->Release(This); } /*** IWMReaderAdvanced methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced2_SetUserProvidedClock(IWMReaderAdvanced2* This,WINBOOL fUserClock) { return This->lpVtbl->SetUserProvidedClock(This,fUserClock); } static FORCEINLINE HRESULT IWMReaderAdvanced2_GetUserProvidedClock(IWMReaderAdvanced2* This,WINBOOL *pfUserClock) { return This->lpVtbl->GetUserProvidedClock(This,pfUserClock); } static FORCEINLINE HRESULT IWMReaderAdvanced2_DeliverTime(IWMReaderAdvanced2* This,QWORD cnsTime) { return This->lpVtbl->DeliverTime(This,cnsTime); } static FORCEINLINE HRESULT IWMReaderAdvanced2_SetManualStreamSelection(IWMReaderAdvanced2* This,WINBOOL fSelection) { return This->lpVtbl->SetManualStreamSelection(This,fSelection); } static FORCEINLINE HRESULT IWMReaderAdvanced2_GetManualStreamSelection(IWMReaderAdvanced2* This,WINBOOL *pfSelection) { return This->lpVtbl->GetManualStreamSelection(This,pfSelection); } static FORCEINLINE HRESULT IWMReaderAdvanced2_SetStreamsSelected(IWMReaderAdvanced2* This,WORD cStreamCount,WORD *pwStreamNumbers,WMT_STREAM_SELECTION *pSelections) { return This->lpVtbl->SetStreamsSelected(This,cStreamCount,pwStreamNumbers,pSelections); } static FORCEINLINE HRESULT IWMReaderAdvanced2_GetStreamSelected(IWMReaderAdvanced2* This,WORD wStreamNum,WMT_STREAM_SELECTION *pSelection) { return This->lpVtbl->GetStreamSelected(This,wStreamNum,pSelection); } static FORCEINLINE HRESULT IWMReaderAdvanced2_SetReceiveSelectionCallbacks(IWMReaderAdvanced2* This,WINBOOL fGetCallbacks) { return This->lpVtbl->SetReceiveSelectionCallbacks(This,fGetCallbacks); } static FORCEINLINE HRESULT IWMReaderAdvanced2_GetReceiveSelectionCallbacks(IWMReaderAdvanced2* This,WINBOOL *pfGetCallbacks) { return This->lpVtbl->GetReceiveSelectionCallbacks(This,pfGetCallbacks); } static FORCEINLINE HRESULT IWMReaderAdvanced2_SetReceiveStreamSamples(IWMReaderAdvanced2* This,WORD wStreamNum,WINBOOL fReceiveStreamSamples) { return This->lpVtbl->SetReceiveStreamSamples(This,wStreamNum,fReceiveStreamSamples); } static FORCEINLINE HRESULT IWMReaderAdvanced2_GetReceiveStreamSamples(IWMReaderAdvanced2* This,WORD wStreamNum,WINBOOL *pfReceiveStreamSamples) { return This->lpVtbl->GetReceiveStreamSamples(This,wStreamNum,pfReceiveStreamSamples); } static FORCEINLINE HRESULT IWMReaderAdvanced2_SetAllocateForOutput(IWMReaderAdvanced2* This,DWORD dwOutputNum,WINBOOL fAllocate) { return This->lpVtbl->SetAllocateForOutput(This,dwOutputNum,fAllocate); } static FORCEINLINE HRESULT IWMReaderAdvanced2_GetAllocateForOutput(IWMReaderAdvanced2* This,DWORD dwOutputNum,WINBOOL *pfAllocate) { return This->lpVtbl->GetAllocateForOutput(This,dwOutputNum,pfAllocate); } static FORCEINLINE HRESULT IWMReaderAdvanced2_SetAllocateForStream(IWMReaderAdvanced2* This,WORD wStreamNum,WINBOOL fAllocate) { return This->lpVtbl->SetAllocateForStream(This,wStreamNum,fAllocate); } static FORCEINLINE HRESULT IWMReaderAdvanced2_GetAllocateForStream(IWMReaderAdvanced2* This,WORD dwSreamNum,WINBOOL *pfAllocate) { return This->lpVtbl->GetAllocateForStream(This,dwSreamNum,pfAllocate); } static FORCEINLINE HRESULT IWMReaderAdvanced2_GetStatistics(IWMReaderAdvanced2* This,WM_READER_STATISTICS *pStatistics) { return This->lpVtbl->GetStatistics(This,pStatistics); } static FORCEINLINE HRESULT IWMReaderAdvanced2_SetClientInfo(IWMReaderAdvanced2* This,WM_READER_CLIENTINFO *pClientInfo) { return This->lpVtbl->SetClientInfo(This,pClientInfo); } static FORCEINLINE HRESULT IWMReaderAdvanced2_GetMaxOutputSampleSize(IWMReaderAdvanced2* This,DWORD dwOutput,DWORD *pcbMax) { return This->lpVtbl->GetMaxOutputSampleSize(This,dwOutput,pcbMax); } static FORCEINLINE HRESULT IWMReaderAdvanced2_GetMaxStreamSampleSize(IWMReaderAdvanced2* This,WORD wStream,DWORD *pcbMax) { return This->lpVtbl->GetMaxStreamSampleSize(This,wStream,pcbMax); } static FORCEINLINE HRESULT IWMReaderAdvanced2_NotifyLateDelivery(IWMReaderAdvanced2* This,QWORD cnsLateness) { return This->lpVtbl->NotifyLateDelivery(This,cnsLateness); } /*** IWMReaderAdvanced2 methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced2_SetPlayMode(IWMReaderAdvanced2* This,WMT_PLAY_MODE Mode) { return This->lpVtbl->SetPlayMode(This,Mode); } static FORCEINLINE HRESULT IWMReaderAdvanced2_GetPlayMode(IWMReaderAdvanced2* This,WMT_PLAY_MODE *pMode) { return This->lpVtbl->GetPlayMode(This,pMode); } static FORCEINLINE HRESULT IWMReaderAdvanced2_GetBufferProgress(IWMReaderAdvanced2* This,DWORD *pdwPercent,QWORD *pcnsBuffering) { return This->lpVtbl->GetBufferProgress(This,pdwPercent,pcnsBuffering); } static FORCEINLINE HRESULT IWMReaderAdvanced2_GetDownloadProgress(IWMReaderAdvanced2* This,DWORD *pdwPercent,QWORD *pqwBytesDownloaded,QWORD *pcnsDownload) { return This->lpVtbl->GetDownloadProgress(This,pdwPercent,pqwBytesDownloaded,pcnsDownload); } static FORCEINLINE HRESULT IWMReaderAdvanced2_GetSaveAsProgress(IWMReaderAdvanced2* This,DWORD *pdwPercent) { return This->lpVtbl->GetSaveAsProgress(This,pdwPercent); } static FORCEINLINE HRESULT IWMReaderAdvanced2_SaveFileAs(IWMReaderAdvanced2* This,const WCHAR *pwszFilename) { return This->lpVtbl->SaveFileAs(This,pwszFilename); } static FORCEINLINE HRESULT IWMReaderAdvanced2_GetProtocolName(IWMReaderAdvanced2* This,WCHAR *pwszProtocol,DWORD *pcchProtocol) { return This->lpVtbl->GetProtocolName(This,pwszProtocol,pcchProtocol); } static FORCEINLINE HRESULT IWMReaderAdvanced2_StartAtMarker(IWMReaderAdvanced2* This,WORD wMarkerIndex,QWORD cnsDuration,float fRate,void *pvContext) { return This->lpVtbl->StartAtMarker(This,wMarkerIndex,cnsDuration,fRate,pvContext); } static FORCEINLINE HRESULT IWMReaderAdvanced2_GetOutputSetting(IWMReaderAdvanced2* This,DWORD dwOutputNum,LPCWSTR pszName,WMT_ATTR_DATATYPE *pType,BYTE *pValue,WORD *pcbLength) { return This->lpVtbl->GetOutputSetting(This,dwOutputNum,pszName,pType,pValue,pcbLength); } static FORCEINLINE HRESULT IWMReaderAdvanced2_SetOutputSetting(IWMReaderAdvanced2* This,DWORD dwOutputNum,LPCWSTR pszName,WMT_ATTR_DATATYPE Type,const BYTE *pValue,WORD cbLength) { return This->lpVtbl->SetOutputSetting(This,dwOutputNum,pszName,Type,pValue,cbLength); } static FORCEINLINE HRESULT IWMReaderAdvanced2_Preroll(IWMReaderAdvanced2* This,QWORD cnsStart,QWORD cnsDuration,float fRate) { return This->lpVtbl->Preroll(This,cnsStart,cnsDuration,fRate); } static FORCEINLINE HRESULT IWMReaderAdvanced2_SetLogClientID(IWMReaderAdvanced2* This,WINBOOL fLogClientID) { return This->lpVtbl->SetLogClientID(This,fLogClientID); } static FORCEINLINE HRESULT IWMReaderAdvanced2_GetLogClientID(IWMReaderAdvanced2* This,WINBOOL *pfLogClientID) { return This->lpVtbl->GetLogClientID(This,pfLogClientID); } static FORCEINLINE HRESULT IWMReaderAdvanced2_StopBuffering(IWMReaderAdvanced2* This) { return This->lpVtbl->StopBuffering(This); } static FORCEINLINE HRESULT IWMReaderAdvanced2_OpenStream(IWMReaderAdvanced2* This,IStream *pStream,IWMReaderCallback *pCallback,void *pvContext) { return This->lpVtbl->OpenStream(This,pStream,pCallback,pvContext); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMReaderAdvanced2_SetPlayMode_Proxy( IWMReaderAdvanced2* This, WMT_PLAY_MODE Mode); void __RPC_STUB IWMReaderAdvanced2_SetPlayMode_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced2_GetPlayMode_Proxy( IWMReaderAdvanced2* This, WMT_PLAY_MODE *pMode); void __RPC_STUB IWMReaderAdvanced2_GetPlayMode_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced2_GetBufferProgress_Proxy( IWMReaderAdvanced2* This, DWORD *pdwPercent, QWORD *pcnsBuffering); void __RPC_STUB IWMReaderAdvanced2_GetBufferProgress_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced2_GetDownloadProgress_Proxy( IWMReaderAdvanced2* This, DWORD *pdwPercent, QWORD *pqwBytesDownloaded, QWORD *pcnsDownload); void __RPC_STUB IWMReaderAdvanced2_GetDownloadProgress_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced2_GetSaveAsProgress_Proxy( IWMReaderAdvanced2* This, DWORD *pdwPercent); void __RPC_STUB IWMReaderAdvanced2_GetSaveAsProgress_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced2_SaveFileAs_Proxy( IWMReaderAdvanced2* This, const WCHAR *pwszFilename); void __RPC_STUB IWMReaderAdvanced2_SaveFileAs_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced2_GetProtocolName_Proxy( IWMReaderAdvanced2* This, WCHAR *pwszProtocol, DWORD *pcchProtocol); void __RPC_STUB IWMReaderAdvanced2_GetProtocolName_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced2_StartAtMarker_Proxy( IWMReaderAdvanced2* This, WORD wMarkerIndex, QWORD cnsDuration, float fRate, void *pvContext); void __RPC_STUB IWMReaderAdvanced2_StartAtMarker_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced2_GetOutputSetting_Proxy( IWMReaderAdvanced2* This, DWORD dwOutputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE *pType, BYTE *pValue, WORD *pcbLength); void __RPC_STUB IWMReaderAdvanced2_GetOutputSetting_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced2_SetOutputSetting_Proxy( IWMReaderAdvanced2* This, DWORD dwOutputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE Type, const BYTE *pValue, WORD cbLength); void __RPC_STUB IWMReaderAdvanced2_SetOutputSetting_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced2_Preroll_Proxy( IWMReaderAdvanced2* This, QWORD cnsStart, QWORD cnsDuration, float fRate); void __RPC_STUB IWMReaderAdvanced2_Preroll_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced2_SetLogClientID_Proxy( IWMReaderAdvanced2* This, WINBOOL fLogClientID); void __RPC_STUB IWMReaderAdvanced2_SetLogClientID_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced2_GetLogClientID_Proxy( IWMReaderAdvanced2* This, WINBOOL *pfLogClientID); void __RPC_STUB IWMReaderAdvanced2_GetLogClientID_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced2_StopBuffering_Proxy( IWMReaderAdvanced2* This); void __RPC_STUB IWMReaderAdvanced2_StopBuffering_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced2_OpenStream_Proxy( IWMReaderAdvanced2* This, IStream *pStream, IWMReaderCallback *pCallback, void *pvContext); void __RPC_STUB IWMReaderAdvanced2_OpenStream_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMReaderAdvanced2_INTERFACE_DEFINED__ */ /***************************************************************************** * IWMReaderAdvanced3 interface */ #ifndef __IWMReaderAdvanced3_INTERFACE_DEFINED__ #define __IWMReaderAdvanced3_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMReaderAdvanced3, 0x5dc0674b, 0xf04b, 0x4a4e, 0x9f,0x2a, 0xb1,0xaf,0xde,0x2c,0x81,0x00); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("5dc0674b-f04b-4a4e-9f2a-b1afde2c8100") IWMReaderAdvanced3 : public IWMReaderAdvanced2 { virtual HRESULT STDMETHODCALLTYPE StopNetStreaming( ) = 0; virtual HRESULT STDMETHODCALLTYPE StartAtPosition( WORD wStreamNum, void *pvOffsetStart, void *pvDuration, WMT_OFFSET_FORMAT dwOffsetFormat, float fRate, void *pvContext) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMReaderAdvanced3, 0x5dc0674b, 0xf04b, 0x4a4e, 0x9f,0x2a, 0xb1,0xaf,0xde,0x2c,0x81,0x00) #endif #else typedef struct IWMReaderAdvanced3Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMReaderAdvanced3* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMReaderAdvanced3* This); ULONG (STDMETHODCALLTYPE *Release)( IWMReaderAdvanced3* This); /*** IWMReaderAdvanced methods ***/ HRESULT (STDMETHODCALLTYPE *SetUserProvidedClock)( IWMReaderAdvanced3* This, WINBOOL fUserClock); HRESULT (STDMETHODCALLTYPE *GetUserProvidedClock)( IWMReaderAdvanced3* This, WINBOOL *pfUserClock); HRESULT (STDMETHODCALLTYPE *DeliverTime)( IWMReaderAdvanced3* This, QWORD cnsTime); HRESULT (STDMETHODCALLTYPE *SetManualStreamSelection)( IWMReaderAdvanced3* This, WINBOOL fSelection); HRESULT (STDMETHODCALLTYPE *GetManualStreamSelection)( IWMReaderAdvanced3* This, WINBOOL *pfSelection); HRESULT (STDMETHODCALLTYPE *SetStreamsSelected)( IWMReaderAdvanced3* This, WORD cStreamCount, WORD *pwStreamNumbers, WMT_STREAM_SELECTION *pSelections); HRESULT (STDMETHODCALLTYPE *GetStreamSelected)( IWMReaderAdvanced3* This, WORD wStreamNum, WMT_STREAM_SELECTION *pSelection); HRESULT (STDMETHODCALLTYPE *SetReceiveSelectionCallbacks)( IWMReaderAdvanced3* This, WINBOOL fGetCallbacks); HRESULT (STDMETHODCALLTYPE *GetReceiveSelectionCallbacks)( IWMReaderAdvanced3* This, WINBOOL *pfGetCallbacks); HRESULT (STDMETHODCALLTYPE *SetReceiveStreamSamples)( IWMReaderAdvanced3* This, WORD wStreamNum, WINBOOL fReceiveStreamSamples); HRESULT (STDMETHODCALLTYPE *GetReceiveStreamSamples)( IWMReaderAdvanced3* This, WORD wStreamNum, WINBOOL *pfReceiveStreamSamples); HRESULT (STDMETHODCALLTYPE *SetAllocateForOutput)( IWMReaderAdvanced3* This, DWORD dwOutputNum, WINBOOL fAllocate); HRESULT (STDMETHODCALLTYPE *GetAllocateForOutput)( IWMReaderAdvanced3* This, DWORD dwOutputNum, WINBOOL *pfAllocate); HRESULT (STDMETHODCALLTYPE *SetAllocateForStream)( IWMReaderAdvanced3* This, WORD wStreamNum, WINBOOL fAllocate); HRESULT (STDMETHODCALLTYPE *GetAllocateForStream)( IWMReaderAdvanced3* This, WORD dwSreamNum, WINBOOL *pfAllocate); HRESULT (STDMETHODCALLTYPE *GetStatistics)( IWMReaderAdvanced3* This, WM_READER_STATISTICS *pStatistics); HRESULT (STDMETHODCALLTYPE *SetClientInfo)( IWMReaderAdvanced3* This, WM_READER_CLIENTINFO *pClientInfo); HRESULT (STDMETHODCALLTYPE *GetMaxOutputSampleSize)( IWMReaderAdvanced3* This, DWORD dwOutput, DWORD *pcbMax); HRESULT (STDMETHODCALLTYPE *GetMaxStreamSampleSize)( IWMReaderAdvanced3* This, WORD wStream, DWORD *pcbMax); HRESULT (STDMETHODCALLTYPE *NotifyLateDelivery)( IWMReaderAdvanced3* This, QWORD cnsLateness); /*** IWMReaderAdvanced2 methods ***/ HRESULT (STDMETHODCALLTYPE *SetPlayMode)( IWMReaderAdvanced3* This, WMT_PLAY_MODE Mode); HRESULT (STDMETHODCALLTYPE *GetPlayMode)( IWMReaderAdvanced3* This, WMT_PLAY_MODE *pMode); HRESULT (STDMETHODCALLTYPE *GetBufferProgress)( IWMReaderAdvanced3* This, DWORD *pdwPercent, QWORD *pcnsBuffering); HRESULT (STDMETHODCALLTYPE *GetDownloadProgress)( IWMReaderAdvanced3* This, DWORD *pdwPercent, QWORD *pqwBytesDownloaded, QWORD *pcnsDownload); HRESULT (STDMETHODCALLTYPE *GetSaveAsProgress)( IWMReaderAdvanced3* This, DWORD *pdwPercent); HRESULT (STDMETHODCALLTYPE *SaveFileAs)( IWMReaderAdvanced3* This, const WCHAR *pwszFilename); HRESULT (STDMETHODCALLTYPE *GetProtocolName)( IWMReaderAdvanced3* This, WCHAR *pwszProtocol, DWORD *pcchProtocol); HRESULT (STDMETHODCALLTYPE *StartAtMarker)( IWMReaderAdvanced3* This, WORD wMarkerIndex, QWORD cnsDuration, float fRate, void *pvContext); HRESULT (STDMETHODCALLTYPE *GetOutputSetting)( IWMReaderAdvanced3* This, DWORD dwOutputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE *pType, BYTE *pValue, WORD *pcbLength); HRESULT (STDMETHODCALLTYPE *SetOutputSetting)( IWMReaderAdvanced3* This, DWORD dwOutputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE Type, const BYTE *pValue, WORD cbLength); HRESULT (STDMETHODCALLTYPE *Preroll)( IWMReaderAdvanced3* This, QWORD cnsStart, QWORD cnsDuration, float fRate); HRESULT (STDMETHODCALLTYPE *SetLogClientID)( IWMReaderAdvanced3* This, WINBOOL fLogClientID); HRESULT (STDMETHODCALLTYPE *GetLogClientID)( IWMReaderAdvanced3* This, WINBOOL *pfLogClientID); HRESULT (STDMETHODCALLTYPE *StopBuffering)( IWMReaderAdvanced3* This); HRESULT (STDMETHODCALLTYPE *OpenStream)( IWMReaderAdvanced3* This, IStream *pStream, IWMReaderCallback *pCallback, void *pvContext); /*** IWMReaderAdvanced3 methods ***/ HRESULT (STDMETHODCALLTYPE *StopNetStreaming)( IWMReaderAdvanced3* This); HRESULT (STDMETHODCALLTYPE *StartAtPosition)( IWMReaderAdvanced3* This, WORD wStreamNum, void *pvOffsetStart, void *pvDuration, WMT_OFFSET_FORMAT dwOffsetFormat, float fRate, void *pvContext); END_INTERFACE } IWMReaderAdvanced3Vtbl; interface IWMReaderAdvanced3 { CONST_VTBL IWMReaderAdvanced3Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMReaderAdvanced3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMReaderAdvanced3_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMReaderAdvanced3_Release(This) (This)->lpVtbl->Release(This) /*** IWMReaderAdvanced methods ***/ #define IWMReaderAdvanced3_SetUserProvidedClock(This,fUserClock) (This)->lpVtbl->SetUserProvidedClock(This,fUserClock) #define IWMReaderAdvanced3_GetUserProvidedClock(This,pfUserClock) (This)->lpVtbl->GetUserProvidedClock(This,pfUserClock) #define IWMReaderAdvanced3_DeliverTime(This,cnsTime) (This)->lpVtbl->DeliverTime(This,cnsTime) #define IWMReaderAdvanced3_SetManualStreamSelection(This,fSelection) (This)->lpVtbl->SetManualStreamSelection(This,fSelection) #define IWMReaderAdvanced3_GetManualStreamSelection(This,pfSelection) (This)->lpVtbl->GetManualStreamSelection(This,pfSelection) #define IWMReaderAdvanced3_SetStreamsSelected(This,cStreamCount,pwStreamNumbers,pSelections) (This)->lpVtbl->SetStreamsSelected(This,cStreamCount,pwStreamNumbers,pSelections) #define IWMReaderAdvanced3_GetStreamSelected(This,wStreamNum,pSelection) (This)->lpVtbl->GetStreamSelected(This,wStreamNum,pSelection) #define IWMReaderAdvanced3_SetReceiveSelectionCallbacks(This,fGetCallbacks) (This)->lpVtbl->SetReceiveSelectionCallbacks(This,fGetCallbacks) #define IWMReaderAdvanced3_GetReceiveSelectionCallbacks(This,pfGetCallbacks) (This)->lpVtbl->GetReceiveSelectionCallbacks(This,pfGetCallbacks) #define IWMReaderAdvanced3_SetReceiveStreamSamples(This,wStreamNum,fReceiveStreamSamples) (This)->lpVtbl->SetReceiveStreamSamples(This,wStreamNum,fReceiveStreamSamples) #define IWMReaderAdvanced3_GetReceiveStreamSamples(This,wStreamNum,pfReceiveStreamSamples) (This)->lpVtbl->GetReceiveStreamSamples(This,wStreamNum,pfReceiveStreamSamples) #define IWMReaderAdvanced3_SetAllocateForOutput(This,dwOutputNum,fAllocate) (This)->lpVtbl->SetAllocateForOutput(This,dwOutputNum,fAllocate) #define IWMReaderAdvanced3_GetAllocateForOutput(This,dwOutputNum,pfAllocate) (This)->lpVtbl->GetAllocateForOutput(This,dwOutputNum,pfAllocate) #define IWMReaderAdvanced3_SetAllocateForStream(This,wStreamNum,fAllocate) (This)->lpVtbl->SetAllocateForStream(This,wStreamNum,fAllocate) #define IWMReaderAdvanced3_GetAllocateForStream(This,dwSreamNum,pfAllocate) (This)->lpVtbl->GetAllocateForStream(This,dwSreamNum,pfAllocate) #define IWMReaderAdvanced3_GetStatistics(This,pStatistics) (This)->lpVtbl->GetStatistics(This,pStatistics) #define IWMReaderAdvanced3_SetClientInfo(This,pClientInfo) (This)->lpVtbl->SetClientInfo(This,pClientInfo) #define IWMReaderAdvanced3_GetMaxOutputSampleSize(This,dwOutput,pcbMax) (This)->lpVtbl->GetMaxOutputSampleSize(This,dwOutput,pcbMax) #define IWMReaderAdvanced3_GetMaxStreamSampleSize(This,wStream,pcbMax) (This)->lpVtbl->GetMaxStreamSampleSize(This,wStream,pcbMax) #define IWMReaderAdvanced3_NotifyLateDelivery(This,cnsLateness) (This)->lpVtbl->NotifyLateDelivery(This,cnsLateness) /*** IWMReaderAdvanced2 methods ***/ #define IWMReaderAdvanced3_SetPlayMode(This,Mode) (This)->lpVtbl->SetPlayMode(This,Mode) #define IWMReaderAdvanced3_GetPlayMode(This,pMode) (This)->lpVtbl->GetPlayMode(This,pMode) #define IWMReaderAdvanced3_GetBufferProgress(This,pdwPercent,pcnsBuffering) (This)->lpVtbl->GetBufferProgress(This,pdwPercent,pcnsBuffering) #define IWMReaderAdvanced3_GetDownloadProgress(This,pdwPercent,pqwBytesDownloaded,pcnsDownload) (This)->lpVtbl->GetDownloadProgress(This,pdwPercent,pqwBytesDownloaded,pcnsDownload) #define IWMReaderAdvanced3_GetSaveAsProgress(This,pdwPercent) (This)->lpVtbl->GetSaveAsProgress(This,pdwPercent) #define IWMReaderAdvanced3_SaveFileAs(This,pwszFilename) (This)->lpVtbl->SaveFileAs(This,pwszFilename) #define IWMReaderAdvanced3_GetProtocolName(This,pwszProtocol,pcchProtocol) (This)->lpVtbl->GetProtocolName(This,pwszProtocol,pcchProtocol) #define IWMReaderAdvanced3_StartAtMarker(This,wMarkerIndex,cnsDuration,fRate,pvContext) (This)->lpVtbl->StartAtMarker(This,wMarkerIndex,cnsDuration,fRate,pvContext) #define IWMReaderAdvanced3_GetOutputSetting(This,dwOutputNum,pszName,pType,pValue,pcbLength) (This)->lpVtbl->GetOutputSetting(This,dwOutputNum,pszName,pType,pValue,pcbLength) #define IWMReaderAdvanced3_SetOutputSetting(This,dwOutputNum,pszName,Type,pValue,cbLength) (This)->lpVtbl->SetOutputSetting(This,dwOutputNum,pszName,Type,pValue,cbLength) #define IWMReaderAdvanced3_Preroll(This,cnsStart,cnsDuration,fRate) (This)->lpVtbl->Preroll(This,cnsStart,cnsDuration,fRate) #define IWMReaderAdvanced3_SetLogClientID(This,fLogClientID) (This)->lpVtbl->SetLogClientID(This,fLogClientID) #define IWMReaderAdvanced3_GetLogClientID(This,pfLogClientID) (This)->lpVtbl->GetLogClientID(This,pfLogClientID) #define IWMReaderAdvanced3_StopBuffering(This) (This)->lpVtbl->StopBuffering(This) #define IWMReaderAdvanced3_OpenStream(This,pStream,pCallback,pvContext) (This)->lpVtbl->OpenStream(This,pStream,pCallback,pvContext) /*** IWMReaderAdvanced3 methods ***/ #define IWMReaderAdvanced3_StopNetStreaming(This) (This)->lpVtbl->StopNetStreaming(This) #define IWMReaderAdvanced3_StartAtPosition(This,wStreamNum,pvOffsetStart,pvDuration,dwOffsetFormat,fRate,pvContext) (This)->lpVtbl->StartAtPosition(This,wStreamNum,pvOffsetStart,pvDuration,dwOffsetFormat,fRate,pvContext) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced3_QueryInterface(IWMReaderAdvanced3* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMReaderAdvanced3_AddRef(IWMReaderAdvanced3* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMReaderAdvanced3_Release(IWMReaderAdvanced3* This) { return This->lpVtbl->Release(This); } /*** IWMReaderAdvanced methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced3_SetUserProvidedClock(IWMReaderAdvanced3* This,WINBOOL fUserClock) { return This->lpVtbl->SetUserProvidedClock(This,fUserClock); } static FORCEINLINE HRESULT IWMReaderAdvanced3_GetUserProvidedClock(IWMReaderAdvanced3* This,WINBOOL *pfUserClock) { return This->lpVtbl->GetUserProvidedClock(This,pfUserClock); } static FORCEINLINE HRESULT IWMReaderAdvanced3_DeliverTime(IWMReaderAdvanced3* This,QWORD cnsTime) { return This->lpVtbl->DeliverTime(This,cnsTime); } static FORCEINLINE HRESULT IWMReaderAdvanced3_SetManualStreamSelection(IWMReaderAdvanced3* This,WINBOOL fSelection) { return This->lpVtbl->SetManualStreamSelection(This,fSelection); } static FORCEINLINE HRESULT IWMReaderAdvanced3_GetManualStreamSelection(IWMReaderAdvanced3* This,WINBOOL *pfSelection) { return This->lpVtbl->GetManualStreamSelection(This,pfSelection); } static FORCEINLINE HRESULT IWMReaderAdvanced3_SetStreamsSelected(IWMReaderAdvanced3* This,WORD cStreamCount,WORD *pwStreamNumbers,WMT_STREAM_SELECTION *pSelections) { return This->lpVtbl->SetStreamsSelected(This,cStreamCount,pwStreamNumbers,pSelections); } static FORCEINLINE HRESULT IWMReaderAdvanced3_GetStreamSelected(IWMReaderAdvanced3* This,WORD wStreamNum,WMT_STREAM_SELECTION *pSelection) { return This->lpVtbl->GetStreamSelected(This,wStreamNum,pSelection); } static FORCEINLINE HRESULT IWMReaderAdvanced3_SetReceiveSelectionCallbacks(IWMReaderAdvanced3* This,WINBOOL fGetCallbacks) { return This->lpVtbl->SetReceiveSelectionCallbacks(This,fGetCallbacks); } static FORCEINLINE HRESULT IWMReaderAdvanced3_GetReceiveSelectionCallbacks(IWMReaderAdvanced3* This,WINBOOL *pfGetCallbacks) { return This->lpVtbl->GetReceiveSelectionCallbacks(This,pfGetCallbacks); } static FORCEINLINE HRESULT IWMReaderAdvanced3_SetReceiveStreamSamples(IWMReaderAdvanced3* This,WORD wStreamNum,WINBOOL fReceiveStreamSamples) { return This->lpVtbl->SetReceiveStreamSamples(This,wStreamNum,fReceiveStreamSamples); } static FORCEINLINE HRESULT IWMReaderAdvanced3_GetReceiveStreamSamples(IWMReaderAdvanced3* This,WORD wStreamNum,WINBOOL *pfReceiveStreamSamples) { return This->lpVtbl->GetReceiveStreamSamples(This,wStreamNum,pfReceiveStreamSamples); } static FORCEINLINE HRESULT IWMReaderAdvanced3_SetAllocateForOutput(IWMReaderAdvanced3* This,DWORD dwOutputNum,WINBOOL fAllocate) { return This->lpVtbl->SetAllocateForOutput(This,dwOutputNum,fAllocate); } static FORCEINLINE HRESULT IWMReaderAdvanced3_GetAllocateForOutput(IWMReaderAdvanced3* This,DWORD dwOutputNum,WINBOOL *pfAllocate) { return This->lpVtbl->GetAllocateForOutput(This,dwOutputNum,pfAllocate); } static FORCEINLINE HRESULT IWMReaderAdvanced3_SetAllocateForStream(IWMReaderAdvanced3* This,WORD wStreamNum,WINBOOL fAllocate) { return This->lpVtbl->SetAllocateForStream(This,wStreamNum,fAllocate); } static FORCEINLINE HRESULT IWMReaderAdvanced3_GetAllocateForStream(IWMReaderAdvanced3* This,WORD dwSreamNum,WINBOOL *pfAllocate) { return This->lpVtbl->GetAllocateForStream(This,dwSreamNum,pfAllocate); } static FORCEINLINE HRESULT IWMReaderAdvanced3_GetStatistics(IWMReaderAdvanced3* This,WM_READER_STATISTICS *pStatistics) { return This->lpVtbl->GetStatistics(This,pStatistics); } static FORCEINLINE HRESULT IWMReaderAdvanced3_SetClientInfo(IWMReaderAdvanced3* This,WM_READER_CLIENTINFO *pClientInfo) { return This->lpVtbl->SetClientInfo(This,pClientInfo); } static FORCEINLINE HRESULT IWMReaderAdvanced3_GetMaxOutputSampleSize(IWMReaderAdvanced3* This,DWORD dwOutput,DWORD *pcbMax) { return This->lpVtbl->GetMaxOutputSampleSize(This,dwOutput,pcbMax); } static FORCEINLINE HRESULT IWMReaderAdvanced3_GetMaxStreamSampleSize(IWMReaderAdvanced3* This,WORD wStream,DWORD *pcbMax) { return This->lpVtbl->GetMaxStreamSampleSize(This,wStream,pcbMax); } static FORCEINLINE HRESULT IWMReaderAdvanced3_NotifyLateDelivery(IWMReaderAdvanced3* This,QWORD cnsLateness) { return This->lpVtbl->NotifyLateDelivery(This,cnsLateness); } /*** IWMReaderAdvanced2 methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced3_SetPlayMode(IWMReaderAdvanced3* This,WMT_PLAY_MODE Mode) { return This->lpVtbl->SetPlayMode(This,Mode); } static FORCEINLINE HRESULT IWMReaderAdvanced3_GetPlayMode(IWMReaderAdvanced3* This,WMT_PLAY_MODE *pMode) { return This->lpVtbl->GetPlayMode(This,pMode); } static FORCEINLINE HRESULT IWMReaderAdvanced3_GetBufferProgress(IWMReaderAdvanced3* This,DWORD *pdwPercent,QWORD *pcnsBuffering) { return This->lpVtbl->GetBufferProgress(This,pdwPercent,pcnsBuffering); } static FORCEINLINE HRESULT IWMReaderAdvanced3_GetDownloadProgress(IWMReaderAdvanced3* This,DWORD *pdwPercent,QWORD *pqwBytesDownloaded,QWORD *pcnsDownload) { return This->lpVtbl->GetDownloadProgress(This,pdwPercent,pqwBytesDownloaded,pcnsDownload); } static FORCEINLINE HRESULT IWMReaderAdvanced3_GetSaveAsProgress(IWMReaderAdvanced3* This,DWORD *pdwPercent) { return This->lpVtbl->GetSaveAsProgress(This,pdwPercent); } static FORCEINLINE HRESULT IWMReaderAdvanced3_SaveFileAs(IWMReaderAdvanced3* This,const WCHAR *pwszFilename) { return This->lpVtbl->SaveFileAs(This,pwszFilename); } static FORCEINLINE HRESULT IWMReaderAdvanced3_GetProtocolName(IWMReaderAdvanced3* This,WCHAR *pwszProtocol,DWORD *pcchProtocol) { return This->lpVtbl->GetProtocolName(This,pwszProtocol,pcchProtocol); } static FORCEINLINE HRESULT IWMReaderAdvanced3_StartAtMarker(IWMReaderAdvanced3* This,WORD wMarkerIndex,QWORD cnsDuration,float fRate,void *pvContext) { return This->lpVtbl->StartAtMarker(This,wMarkerIndex,cnsDuration,fRate,pvContext); } static FORCEINLINE HRESULT IWMReaderAdvanced3_GetOutputSetting(IWMReaderAdvanced3* This,DWORD dwOutputNum,LPCWSTR pszName,WMT_ATTR_DATATYPE *pType,BYTE *pValue,WORD *pcbLength) { return This->lpVtbl->GetOutputSetting(This,dwOutputNum,pszName,pType,pValue,pcbLength); } static FORCEINLINE HRESULT IWMReaderAdvanced3_SetOutputSetting(IWMReaderAdvanced3* This,DWORD dwOutputNum,LPCWSTR pszName,WMT_ATTR_DATATYPE Type,const BYTE *pValue,WORD cbLength) { return This->lpVtbl->SetOutputSetting(This,dwOutputNum,pszName,Type,pValue,cbLength); } static FORCEINLINE HRESULT IWMReaderAdvanced3_Preroll(IWMReaderAdvanced3* This,QWORD cnsStart,QWORD cnsDuration,float fRate) { return This->lpVtbl->Preroll(This,cnsStart,cnsDuration,fRate); } static FORCEINLINE HRESULT IWMReaderAdvanced3_SetLogClientID(IWMReaderAdvanced3* This,WINBOOL fLogClientID) { return This->lpVtbl->SetLogClientID(This,fLogClientID); } static FORCEINLINE HRESULT IWMReaderAdvanced3_GetLogClientID(IWMReaderAdvanced3* This,WINBOOL *pfLogClientID) { return This->lpVtbl->GetLogClientID(This,pfLogClientID); } static FORCEINLINE HRESULT IWMReaderAdvanced3_StopBuffering(IWMReaderAdvanced3* This) { return This->lpVtbl->StopBuffering(This); } static FORCEINLINE HRESULT IWMReaderAdvanced3_OpenStream(IWMReaderAdvanced3* This,IStream *pStream,IWMReaderCallback *pCallback,void *pvContext) { return This->lpVtbl->OpenStream(This,pStream,pCallback,pvContext); } /*** IWMReaderAdvanced3 methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced3_StopNetStreaming(IWMReaderAdvanced3* This) { return This->lpVtbl->StopNetStreaming(This); } static FORCEINLINE HRESULT IWMReaderAdvanced3_StartAtPosition(IWMReaderAdvanced3* This,WORD wStreamNum,void *pvOffsetStart,void *pvDuration,WMT_OFFSET_FORMAT dwOffsetFormat,float fRate,void *pvContext) { return This->lpVtbl->StartAtPosition(This,wStreamNum,pvOffsetStart,pvDuration,dwOffsetFormat,fRate,pvContext); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMReaderAdvanced3_StopNetStreaming_Proxy( IWMReaderAdvanced3* This); void __RPC_STUB IWMReaderAdvanced3_StopNetStreaming_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced3_StartAtPosition_Proxy( IWMReaderAdvanced3* This, WORD wStreamNum, void *pvOffsetStart, void *pvDuration, WMT_OFFSET_FORMAT dwOffsetFormat, float fRate, void *pvContext); void __RPC_STUB IWMReaderAdvanced3_StartAtPosition_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMReaderAdvanced3_INTERFACE_DEFINED__ */ /***************************************************************************** * IWMReaderAdvanced4 interface */ #ifndef __IWMReaderAdvanced4_INTERFACE_DEFINED__ #define __IWMReaderAdvanced4_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMReaderAdvanced4, 0x945a76a2, 0x12ae, 0x4d48, 0xbd,0x3c, 0xcd,0x1d,0x90,0x39,0x9b,0x85); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("945a76a2-12ae-4d48-bd3c-cd1d90399b85") IWMReaderAdvanced4 : public IWMReaderAdvanced3 { virtual HRESULT STDMETHODCALLTYPE GetLanguageCount( DWORD dwOutputNum, WORD *pwLanguageCount) = 0; virtual HRESULT STDMETHODCALLTYPE GetLanguage( DWORD dwOutputNum, WORD wLanguage, WCHAR *pwszLanguageString, WORD *pcchLanguageStringLength) = 0; virtual HRESULT STDMETHODCALLTYPE GetMaxSpeedFactor( double *pdblFactor) = 0; virtual HRESULT STDMETHODCALLTYPE IsUsingFastCache( WINBOOL *pfUsingFastCache) = 0; virtual HRESULT STDMETHODCALLTYPE AddLogParam( LPCWSTR wszNameSpace, LPCWSTR wszName, LPCWSTR wszValue) = 0; virtual HRESULT STDMETHODCALLTYPE SendLogParams( ) = 0; virtual HRESULT STDMETHODCALLTYPE CanSaveFileAs( WINBOOL *pfCanSave) = 0; virtual HRESULT STDMETHODCALLTYPE CancelSaveFileAs( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetURL( WCHAR *pwszURL, DWORD *pcchURL) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMReaderAdvanced4, 0x945a76a2, 0x12ae, 0x4d48, 0xbd,0x3c, 0xcd,0x1d,0x90,0x39,0x9b,0x85) #endif #else typedef struct IWMReaderAdvanced4Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMReaderAdvanced4* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMReaderAdvanced4* This); ULONG (STDMETHODCALLTYPE *Release)( IWMReaderAdvanced4* This); /*** IWMReaderAdvanced methods ***/ HRESULT (STDMETHODCALLTYPE *SetUserProvidedClock)( IWMReaderAdvanced4* This, WINBOOL fUserClock); HRESULT (STDMETHODCALLTYPE *GetUserProvidedClock)( IWMReaderAdvanced4* This, WINBOOL *pfUserClock); HRESULT (STDMETHODCALLTYPE *DeliverTime)( IWMReaderAdvanced4* This, QWORD cnsTime); HRESULT (STDMETHODCALLTYPE *SetManualStreamSelection)( IWMReaderAdvanced4* This, WINBOOL fSelection); HRESULT (STDMETHODCALLTYPE *GetManualStreamSelection)( IWMReaderAdvanced4* This, WINBOOL *pfSelection); HRESULT (STDMETHODCALLTYPE *SetStreamsSelected)( IWMReaderAdvanced4* This, WORD cStreamCount, WORD *pwStreamNumbers, WMT_STREAM_SELECTION *pSelections); HRESULT (STDMETHODCALLTYPE *GetStreamSelected)( IWMReaderAdvanced4* This, WORD wStreamNum, WMT_STREAM_SELECTION *pSelection); HRESULT (STDMETHODCALLTYPE *SetReceiveSelectionCallbacks)( IWMReaderAdvanced4* This, WINBOOL fGetCallbacks); HRESULT (STDMETHODCALLTYPE *GetReceiveSelectionCallbacks)( IWMReaderAdvanced4* This, WINBOOL *pfGetCallbacks); HRESULT (STDMETHODCALLTYPE *SetReceiveStreamSamples)( IWMReaderAdvanced4* This, WORD wStreamNum, WINBOOL fReceiveStreamSamples); HRESULT (STDMETHODCALLTYPE *GetReceiveStreamSamples)( IWMReaderAdvanced4* This, WORD wStreamNum, WINBOOL *pfReceiveStreamSamples); HRESULT (STDMETHODCALLTYPE *SetAllocateForOutput)( IWMReaderAdvanced4* This, DWORD dwOutputNum, WINBOOL fAllocate); HRESULT (STDMETHODCALLTYPE *GetAllocateForOutput)( IWMReaderAdvanced4* This, DWORD dwOutputNum, WINBOOL *pfAllocate); HRESULT (STDMETHODCALLTYPE *SetAllocateForStream)( IWMReaderAdvanced4* This, WORD wStreamNum, WINBOOL fAllocate); HRESULT (STDMETHODCALLTYPE *GetAllocateForStream)( IWMReaderAdvanced4* This, WORD dwSreamNum, WINBOOL *pfAllocate); HRESULT (STDMETHODCALLTYPE *GetStatistics)( IWMReaderAdvanced4* This, WM_READER_STATISTICS *pStatistics); HRESULT (STDMETHODCALLTYPE *SetClientInfo)( IWMReaderAdvanced4* This, WM_READER_CLIENTINFO *pClientInfo); HRESULT (STDMETHODCALLTYPE *GetMaxOutputSampleSize)( IWMReaderAdvanced4* This, DWORD dwOutput, DWORD *pcbMax); HRESULT (STDMETHODCALLTYPE *GetMaxStreamSampleSize)( IWMReaderAdvanced4* This, WORD wStream, DWORD *pcbMax); HRESULT (STDMETHODCALLTYPE *NotifyLateDelivery)( IWMReaderAdvanced4* This, QWORD cnsLateness); /*** IWMReaderAdvanced2 methods ***/ HRESULT (STDMETHODCALLTYPE *SetPlayMode)( IWMReaderAdvanced4* This, WMT_PLAY_MODE Mode); HRESULT (STDMETHODCALLTYPE *GetPlayMode)( IWMReaderAdvanced4* This, WMT_PLAY_MODE *pMode); HRESULT (STDMETHODCALLTYPE *GetBufferProgress)( IWMReaderAdvanced4* This, DWORD *pdwPercent, QWORD *pcnsBuffering); HRESULT (STDMETHODCALLTYPE *GetDownloadProgress)( IWMReaderAdvanced4* This, DWORD *pdwPercent, QWORD *pqwBytesDownloaded, QWORD *pcnsDownload); HRESULT (STDMETHODCALLTYPE *GetSaveAsProgress)( IWMReaderAdvanced4* This, DWORD *pdwPercent); HRESULT (STDMETHODCALLTYPE *SaveFileAs)( IWMReaderAdvanced4* This, const WCHAR *pwszFilename); HRESULT (STDMETHODCALLTYPE *GetProtocolName)( IWMReaderAdvanced4* This, WCHAR *pwszProtocol, DWORD *pcchProtocol); HRESULT (STDMETHODCALLTYPE *StartAtMarker)( IWMReaderAdvanced4* This, WORD wMarkerIndex, QWORD cnsDuration, float fRate, void *pvContext); HRESULT (STDMETHODCALLTYPE *GetOutputSetting)( IWMReaderAdvanced4* This, DWORD dwOutputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE *pType, BYTE *pValue, WORD *pcbLength); HRESULT (STDMETHODCALLTYPE *SetOutputSetting)( IWMReaderAdvanced4* This, DWORD dwOutputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE Type, const BYTE *pValue, WORD cbLength); HRESULT (STDMETHODCALLTYPE *Preroll)( IWMReaderAdvanced4* This, QWORD cnsStart, QWORD cnsDuration, float fRate); HRESULT (STDMETHODCALLTYPE *SetLogClientID)( IWMReaderAdvanced4* This, WINBOOL fLogClientID); HRESULT (STDMETHODCALLTYPE *GetLogClientID)( IWMReaderAdvanced4* This, WINBOOL *pfLogClientID); HRESULT (STDMETHODCALLTYPE *StopBuffering)( IWMReaderAdvanced4* This); HRESULT (STDMETHODCALLTYPE *OpenStream)( IWMReaderAdvanced4* This, IStream *pStream, IWMReaderCallback *pCallback, void *pvContext); /*** IWMReaderAdvanced3 methods ***/ HRESULT (STDMETHODCALLTYPE *StopNetStreaming)( IWMReaderAdvanced4* This); HRESULT (STDMETHODCALLTYPE *StartAtPosition)( IWMReaderAdvanced4* This, WORD wStreamNum, void *pvOffsetStart, void *pvDuration, WMT_OFFSET_FORMAT dwOffsetFormat, float fRate, void *pvContext); /*** IWMReaderAdvanced4 methods ***/ HRESULT (STDMETHODCALLTYPE *GetLanguageCount)( IWMReaderAdvanced4* This, DWORD dwOutputNum, WORD *pwLanguageCount); HRESULT (STDMETHODCALLTYPE *GetLanguage)( IWMReaderAdvanced4* This, DWORD dwOutputNum, WORD wLanguage, WCHAR *pwszLanguageString, WORD *pcchLanguageStringLength); HRESULT (STDMETHODCALLTYPE *GetMaxSpeedFactor)( IWMReaderAdvanced4* This, double *pdblFactor); HRESULT (STDMETHODCALLTYPE *IsUsingFastCache)( IWMReaderAdvanced4* This, WINBOOL *pfUsingFastCache); HRESULT (STDMETHODCALLTYPE *AddLogParam)( IWMReaderAdvanced4* This, LPCWSTR wszNameSpace, LPCWSTR wszName, LPCWSTR wszValue); HRESULT (STDMETHODCALLTYPE *SendLogParams)( IWMReaderAdvanced4* This); HRESULT (STDMETHODCALLTYPE *CanSaveFileAs)( IWMReaderAdvanced4* This, WINBOOL *pfCanSave); HRESULT (STDMETHODCALLTYPE *CancelSaveFileAs)( IWMReaderAdvanced4* This); HRESULT (STDMETHODCALLTYPE *GetURL)( IWMReaderAdvanced4* This, WCHAR *pwszURL, DWORD *pcchURL); END_INTERFACE } IWMReaderAdvanced4Vtbl; interface IWMReaderAdvanced4 { CONST_VTBL IWMReaderAdvanced4Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMReaderAdvanced4_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMReaderAdvanced4_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMReaderAdvanced4_Release(This) (This)->lpVtbl->Release(This) /*** IWMReaderAdvanced methods ***/ #define IWMReaderAdvanced4_SetUserProvidedClock(This,fUserClock) (This)->lpVtbl->SetUserProvidedClock(This,fUserClock) #define IWMReaderAdvanced4_GetUserProvidedClock(This,pfUserClock) (This)->lpVtbl->GetUserProvidedClock(This,pfUserClock) #define IWMReaderAdvanced4_DeliverTime(This,cnsTime) (This)->lpVtbl->DeliverTime(This,cnsTime) #define IWMReaderAdvanced4_SetManualStreamSelection(This,fSelection) (This)->lpVtbl->SetManualStreamSelection(This,fSelection) #define IWMReaderAdvanced4_GetManualStreamSelection(This,pfSelection) (This)->lpVtbl->GetManualStreamSelection(This,pfSelection) #define IWMReaderAdvanced4_SetStreamsSelected(This,cStreamCount,pwStreamNumbers,pSelections) (This)->lpVtbl->SetStreamsSelected(This,cStreamCount,pwStreamNumbers,pSelections) #define IWMReaderAdvanced4_GetStreamSelected(This,wStreamNum,pSelection) (This)->lpVtbl->GetStreamSelected(This,wStreamNum,pSelection) #define IWMReaderAdvanced4_SetReceiveSelectionCallbacks(This,fGetCallbacks) (This)->lpVtbl->SetReceiveSelectionCallbacks(This,fGetCallbacks) #define IWMReaderAdvanced4_GetReceiveSelectionCallbacks(This,pfGetCallbacks) (This)->lpVtbl->GetReceiveSelectionCallbacks(This,pfGetCallbacks) #define IWMReaderAdvanced4_SetReceiveStreamSamples(This,wStreamNum,fReceiveStreamSamples) (This)->lpVtbl->SetReceiveStreamSamples(This,wStreamNum,fReceiveStreamSamples) #define IWMReaderAdvanced4_GetReceiveStreamSamples(This,wStreamNum,pfReceiveStreamSamples) (This)->lpVtbl->GetReceiveStreamSamples(This,wStreamNum,pfReceiveStreamSamples) #define IWMReaderAdvanced4_SetAllocateForOutput(This,dwOutputNum,fAllocate) (This)->lpVtbl->SetAllocateForOutput(This,dwOutputNum,fAllocate) #define IWMReaderAdvanced4_GetAllocateForOutput(This,dwOutputNum,pfAllocate) (This)->lpVtbl->GetAllocateForOutput(This,dwOutputNum,pfAllocate) #define IWMReaderAdvanced4_SetAllocateForStream(This,wStreamNum,fAllocate) (This)->lpVtbl->SetAllocateForStream(This,wStreamNum,fAllocate) #define IWMReaderAdvanced4_GetAllocateForStream(This,dwSreamNum,pfAllocate) (This)->lpVtbl->GetAllocateForStream(This,dwSreamNum,pfAllocate) #define IWMReaderAdvanced4_GetStatistics(This,pStatistics) (This)->lpVtbl->GetStatistics(This,pStatistics) #define IWMReaderAdvanced4_SetClientInfo(This,pClientInfo) (This)->lpVtbl->SetClientInfo(This,pClientInfo) #define IWMReaderAdvanced4_GetMaxOutputSampleSize(This,dwOutput,pcbMax) (This)->lpVtbl->GetMaxOutputSampleSize(This,dwOutput,pcbMax) #define IWMReaderAdvanced4_GetMaxStreamSampleSize(This,wStream,pcbMax) (This)->lpVtbl->GetMaxStreamSampleSize(This,wStream,pcbMax) #define IWMReaderAdvanced4_NotifyLateDelivery(This,cnsLateness) (This)->lpVtbl->NotifyLateDelivery(This,cnsLateness) /*** IWMReaderAdvanced2 methods ***/ #define IWMReaderAdvanced4_SetPlayMode(This,Mode) (This)->lpVtbl->SetPlayMode(This,Mode) #define IWMReaderAdvanced4_GetPlayMode(This,pMode) (This)->lpVtbl->GetPlayMode(This,pMode) #define IWMReaderAdvanced4_GetBufferProgress(This,pdwPercent,pcnsBuffering) (This)->lpVtbl->GetBufferProgress(This,pdwPercent,pcnsBuffering) #define IWMReaderAdvanced4_GetDownloadProgress(This,pdwPercent,pqwBytesDownloaded,pcnsDownload) (This)->lpVtbl->GetDownloadProgress(This,pdwPercent,pqwBytesDownloaded,pcnsDownload) #define IWMReaderAdvanced4_GetSaveAsProgress(This,pdwPercent) (This)->lpVtbl->GetSaveAsProgress(This,pdwPercent) #define IWMReaderAdvanced4_SaveFileAs(This,pwszFilename) (This)->lpVtbl->SaveFileAs(This,pwszFilename) #define IWMReaderAdvanced4_GetProtocolName(This,pwszProtocol,pcchProtocol) (This)->lpVtbl->GetProtocolName(This,pwszProtocol,pcchProtocol) #define IWMReaderAdvanced4_StartAtMarker(This,wMarkerIndex,cnsDuration,fRate,pvContext) (This)->lpVtbl->StartAtMarker(This,wMarkerIndex,cnsDuration,fRate,pvContext) #define IWMReaderAdvanced4_GetOutputSetting(This,dwOutputNum,pszName,pType,pValue,pcbLength) (This)->lpVtbl->GetOutputSetting(This,dwOutputNum,pszName,pType,pValue,pcbLength) #define IWMReaderAdvanced4_SetOutputSetting(This,dwOutputNum,pszName,Type,pValue,cbLength) (This)->lpVtbl->SetOutputSetting(This,dwOutputNum,pszName,Type,pValue,cbLength) #define IWMReaderAdvanced4_Preroll(This,cnsStart,cnsDuration,fRate) (This)->lpVtbl->Preroll(This,cnsStart,cnsDuration,fRate) #define IWMReaderAdvanced4_SetLogClientID(This,fLogClientID) (This)->lpVtbl->SetLogClientID(This,fLogClientID) #define IWMReaderAdvanced4_GetLogClientID(This,pfLogClientID) (This)->lpVtbl->GetLogClientID(This,pfLogClientID) #define IWMReaderAdvanced4_StopBuffering(This) (This)->lpVtbl->StopBuffering(This) #define IWMReaderAdvanced4_OpenStream(This,pStream,pCallback,pvContext) (This)->lpVtbl->OpenStream(This,pStream,pCallback,pvContext) /*** IWMReaderAdvanced3 methods ***/ #define IWMReaderAdvanced4_StopNetStreaming(This) (This)->lpVtbl->StopNetStreaming(This) #define IWMReaderAdvanced4_StartAtPosition(This,wStreamNum,pvOffsetStart,pvDuration,dwOffsetFormat,fRate,pvContext) (This)->lpVtbl->StartAtPosition(This,wStreamNum,pvOffsetStart,pvDuration,dwOffsetFormat,fRate,pvContext) /*** IWMReaderAdvanced4 methods ***/ #define IWMReaderAdvanced4_GetLanguageCount(This,dwOutputNum,pwLanguageCount) (This)->lpVtbl->GetLanguageCount(This,dwOutputNum,pwLanguageCount) #define IWMReaderAdvanced4_GetLanguage(This,dwOutputNum,wLanguage,pwszLanguageString,pcchLanguageStringLength) (This)->lpVtbl->GetLanguage(This,dwOutputNum,wLanguage,pwszLanguageString,pcchLanguageStringLength) #define IWMReaderAdvanced4_GetMaxSpeedFactor(This,pdblFactor) (This)->lpVtbl->GetMaxSpeedFactor(This,pdblFactor) #define IWMReaderAdvanced4_IsUsingFastCache(This,pfUsingFastCache) (This)->lpVtbl->IsUsingFastCache(This,pfUsingFastCache) #define IWMReaderAdvanced4_AddLogParam(This,wszNameSpace,wszName,wszValue) (This)->lpVtbl->AddLogParam(This,wszNameSpace,wszName,wszValue) #define IWMReaderAdvanced4_SendLogParams(This) (This)->lpVtbl->SendLogParams(This) #define IWMReaderAdvanced4_CanSaveFileAs(This,pfCanSave) (This)->lpVtbl->CanSaveFileAs(This,pfCanSave) #define IWMReaderAdvanced4_CancelSaveFileAs(This) (This)->lpVtbl->CancelSaveFileAs(This) #define IWMReaderAdvanced4_GetURL(This,pwszURL,pcchURL) (This)->lpVtbl->GetURL(This,pwszURL,pcchURL) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced4_QueryInterface(IWMReaderAdvanced4* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMReaderAdvanced4_AddRef(IWMReaderAdvanced4* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMReaderAdvanced4_Release(IWMReaderAdvanced4* This) { return This->lpVtbl->Release(This); } /*** IWMReaderAdvanced methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced4_SetUserProvidedClock(IWMReaderAdvanced4* This,WINBOOL fUserClock) { return This->lpVtbl->SetUserProvidedClock(This,fUserClock); } static FORCEINLINE HRESULT IWMReaderAdvanced4_GetUserProvidedClock(IWMReaderAdvanced4* This,WINBOOL *pfUserClock) { return This->lpVtbl->GetUserProvidedClock(This,pfUserClock); } static FORCEINLINE HRESULT IWMReaderAdvanced4_DeliverTime(IWMReaderAdvanced4* This,QWORD cnsTime) { return This->lpVtbl->DeliverTime(This,cnsTime); } static FORCEINLINE HRESULT IWMReaderAdvanced4_SetManualStreamSelection(IWMReaderAdvanced4* This,WINBOOL fSelection) { return This->lpVtbl->SetManualStreamSelection(This,fSelection); } static FORCEINLINE HRESULT IWMReaderAdvanced4_GetManualStreamSelection(IWMReaderAdvanced4* This,WINBOOL *pfSelection) { return This->lpVtbl->GetManualStreamSelection(This,pfSelection); } static FORCEINLINE HRESULT IWMReaderAdvanced4_SetStreamsSelected(IWMReaderAdvanced4* This,WORD cStreamCount,WORD *pwStreamNumbers,WMT_STREAM_SELECTION *pSelections) { return This->lpVtbl->SetStreamsSelected(This,cStreamCount,pwStreamNumbers,pSelections); } static FORCEINLINE HRESULT IWMReaderAdvanced4_GetStreamSelected(IWMReaderAdvanced4* This,WORD wStreamNum,WMT_STREAM_SELECTION *pSelection) { return This->lpVtbl->GetStreamSelected(This,wStreamNum,pSelection); } static FORCEINLINE HRESULT IWMReaderAdvanced4_SetReceiveSelectionCallbacks(IWMReaderAdvanced4* This,WINBOOL fGetCallbacks) { return This->lpVtbl->SetReceiveSelectionCallbacks(This,fGetCallbacks); } static FORCEINLINE HRESULT IWMReaderAdvanced4_GetReceiveSelectionCallbacks(IWMReaderAdvanced4* This,WINBOOL *pfGetCallbacks) { return This->lpVtbl->GetReceiveSelectionCallbacks(This,pfGetCallbacks); } static FORCEINLINE HRESULT IWMReaderAdvanced4_SetReceiveStreamSamples(IWMReaderAdvanced4* This,WORD wStreamNum,WINBOOL fReceiveStreamSamples) { return This->lpVtbl->SetReceiveStreamSamples(This,wStreamNum,fReceiveStreamSamples); } static FORCEINLINE HRESULT IWMReaderAdvanced4_GetReceiveStreamSamples(IWMReaderAdvanced4* This,WORD wStreamNum,WINBOOL *pfReceiveStreamSamples) { return This->lpVtbl->GetReceiveStreamSamples(This,wStreamNum,pfReceiveStreamSamples); } static FORCEINLINE HRESULT IWMReaderAdvanced4_SetAllocateForOutput(IWMReaderAdvanced4* This,DWORD dwOutputNum,WINBOOL fAllocate) { return This->lpVtbl->SetAllocateForOutput(This,dwOutputNum,fAllocate); } static FORCEINLINE HRESULT IWMReaderAdvanced4_GetAllocateForOutput(IWMReaderAdvanced4* This,DWORD dwOutputNum,WINBOOL *pfAllocate) { return This->lpVtbl->GetAllocateForOutput(This,dwOutputNum,pfAllocate); } static FORCEINLINE HRESULT IWMReaderAdvanced4_SetAllocateForStream(IWMReaderAdvanced4* This,WORD wStreamNum,WINBOOL fAllocate) { return This->lpVtbl->SetAllocateForStream(This,wStreamNum,fAllocate); } static FORCEINLINE HRESULT IWMReaderAdvanced4_GetAllocateForStream(IWMReaderAdvanced4* This,WORD dwSreamNum,WINBOOL *pfAllocate) { return This->lpVtbl->GetAllocateForStream(This,dwSreamNum,pfAllocate); } static FORCEINLINE HRESULT IWMReaderAdvanced4_GetStatistics(IWMReaderAdvanced4* This,WM_READER_STATISTICS *pStatistics) { return This->lpVtbl->GetStatistics(This,pStatistics); } static FORCEINLINE HRESULT IWMReaderAdvanced4_SetClientInfo(IWMReaderAdvanced4* This,WM_READER_CLIENTINFO *pClientInfo) { return This->lpVtbl->SetClientInfo(This,pClientInfo); } static FORCEINLINE HRESULT IWMReaderAdvanced4_GetMaxOutputSampleSize(IWMReaderAdvanced4* This,DWORD dwOutput,DWORD *pcbMax) { return This->lpVtbl->GetMaxOutputSampleSize(This,dwOutput,pcbMax); } static FORCEINLINE HRESULT IWMReaderAdvanced4_GetMaxStreamSampleSize(IWMReaderAdvanced4* This,WORD wStream,DWORD *pcbMax) { return This->lpVtbl->GetMaxStreamSampleSize(This,wStream,pcbMax); } static FORCEINLINE HRESULT IWMReaderAdvanced4_NotifyLateDelivery(IWMReaderAdvanced4* This,QWORD cnsLateness) { return This->lpVtbl->NotifyLateDelivery(This,cnsLateness); } /*** IWMReaderAdvanced2 methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced4_SetPlayMode(IWMReaderAdvanced4* This,WMT_PLAY_MODE Mode) { return This->lpVtbl->SetPlayMode(This,Mode); } static FORCEINLINE HRESULT IWMReaderAdvanced4_GetPlayMode(IWMReaderAdvanced4* This,WMT_PLAY_MODE *pMode) { return This->lpVtbl->GetPlayMode(This,pMode); } static FORCEINLINE HRESULT IWMReaderAdvanced4_GetBufferProgress(IWMReaderAdvanced4* This,DWORD *pdwPercent,QWORD *pcnsBuffering) { return This->lpVtbl->GetBufferProgress(This,pdwPercent,pcnsBuffering); } static FORCEINLINE HRESULT IWMReaderAdvanced4_GetDownloadProgress(IWMReaderAdvanced4* This,DWORD *pdwPercent,QWORD *pqwBytesDownloaded,QWORD *pcnsDownload) { return This->lpVtbl->GetDownloadProgress(This,pdwPercent,pqwBytesDownloaded,pcnsDownload); } static FORCEINLINE HRESULT IWMReaderAdvanced4_GetSaveAsProgress(IWMReaderAdvanced4* This,DWORD *pdwPercent) { return This->lpVtbl->GetSaveAsProgress(This,pdwPercent); } static FORCEINLINE HRESULT IWMReaderAdvanced4_SaveFileAs(IWMReaderAdvanced4* This,const WCHAR *pwszFilename) { return This->lpVtbl->SaveFileAs(This,pwszFilename); } static FORCEINLINE HRESULT IWMReaderAdvanced4_GetProtocolName(IWMReaderAdvanced4* This,WCHAR *pwszProtocol,DWORD *pcchProtocol) { return This->lpVtbl->GetProtocolName(This,pwszProtocol,pcchProtocol); } static FORCEINLINE HRESULT IWMReaderAdvanced4_StartAtMarker(IWMReaderAdvanced4* This,WORD wMarkerIndex,QWORD cnsDuration,float fRate,void *pvContext) { return This->lpVtbl->StartAtMarker(This,wMarkerIndex,cnsDuration,fRate,pvContext); } static FORCEINLINE HRESULT IWMReaderAdvanced4_GetOutputSetting(IWMReaderAdvanced4* This,DWORD dwOutputNum,LPCWSTR pszName,WMT_ATTR_DATATYPE *pType,BYTE *pValue,WORD *pcbLength) { return This->lpVtbl->GetOutputSetting(This,dwOutputNum,pszName,pType,pValue,pcbLength); } static FORCEINLINE HRESULT IWMReaderAdvanced4_SetOutputSetting(IWMReaderAdvanced4* This,DWORD dwOutputNum,LPCWSTR pszName,WMT_ATTR_DATATYPE Type,const BYTE *pValue,WORD cbLength) { return This->lpVtbl->SetOutputSetting(This,dwOutputNum,pszName,Type,pValue,cbLength); } static FORCEINLINE HRESULT IWMReaderAdvanced4_Preroll(IWMReaderAdvanced4* This,QWORD cnsStart,QWORD cnsDuration,float fRate) { return This->lpVtbl->Preroll(This,cnsStart,cnsDuration,fRate); } static FORCEINLINE HRESULT IWMReaderAdvanced4_SetLogClientID(IWMReaderAdvanced4* This,WINBOOL fLogClientID) { return This->lpVtbl->SetLogClientID(This,fLogClientID); } static FORCEINLINE HRESULT IWMReaderAdvanced4_GetLogClientID(IWMReaderAdvanced4* This,WINBOOL *pfLogClientID) { return This->lpVtbl->GetLogClientID(This,pfLogClientID); } static FORCEINLINE HRESULT IWMReaderAdvanced4_StopBuffering(IWMReaderAdvanced4* This) { return This->lpVtbl->StopBuffering(This); } static FORCEINLINE HRESULT IWMReaderAdvanced4_OpenStream(IWMReaderAdvanced4* This,IStream *pStream,IWMReaderCallback *pCallback,void *pvContext) { return This->lpVtbl->OpenStream(This,pStream,pCallback,pvContext); } /*** IWMReaderAdvanced3 methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced4_StopNetStreaming(IWMReaderAdvanced4* This) { return This->lpVtbl->StopNetStreaming(This); } static FORCEINLINE HRESULT IWMReaderAdvanced4_StartAtPosition(IWMReaderAdvanced4* This,WORD wStreamNum,void *pvOffsetStart,void *pvDuration,WMT_OFFSET_FORMAT dwOffsetFormat,float fRate,void *pvContext) { return This->lpVtbl->StartAtPosition(This,wStreamNum,pvOffsetStart,pvDuration,dwOffsetFormat,fRate,pvContext); } /*** IWMReaderAdvanced4 methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced4_GetLanguageCount(IWMReaderAdvanced4* This,DWORD dwOutputNum,WORD *pwLanguageCount) { return This->lpVtbl->GetLanguageCount(This,dwOutputNum,pwLanguageCount); } static FORCEINLINE HRESULT IWMReaderAdvanced4_GetLanguage(IWMReaderAdvanced4* This,DWORD dwOutputNum,WORD wLanguage,WCHAR *pwszLanguageString,WORD *pcchLanguageStringLength) { return This->lpVtbl->GetLanguage(This,dwOutputNum,wLanguage,pwszLanguageString,pcchLanguageStringLength); } static FORCEINLINE HRESULT IWMReaderAdvanced4_GetMaxSpeedFactor(IWMReaderAdvanced4* This,double *pdblFactor) { return This->lpVtbl->GetMaxSpeedFactor(This,pdblFactor); } static FORCEINLINE HRESULT IWMReaderAdvanced4_IsUsingFastCache(IWMReaderAdvanced4* This,WINBOOL *pfUsingFastCache) { return This->lpVtbl->IsUsingFastCache(This,pfUsingFastCache); } static FORCEINLINE HRESULT IWMReaderAdvanced4_AddLogParam(IWMReaderAdvanced4* This,LPCWSTR wszNameSpace,LPCWSTR wszName,LPCWSTR wszValue) { return This->lpVtbl->AddLogParam(This,wszNameSpace,wszName,wszValue); } static FORCEINLINE HRESULT IWMReaderAdvanced4_SendLogParams(IWMReaderAdvanced4* This) { return This->lpVtbl->SendLogParams(This); } static FORCEINLINE HRESULT IWMReaderAdvanced4_CanSaveFileAs(IWMReaderAdvanced4* This,WINBOOL *pfCanSave) { return This->lpVtbl->CanSaveFileAs(This,pfCanSave); } static FORCEINLINE HRESULT IWMReaderAdvanced4_CancelSaveFileAs(IWMReaderAdvanced4* This) { return This->lpVtbl->CancelSaveFileAs(This); } static FORCEINLINE HRESULT IWMReaderAdvanced4_GetURL(IWMReaderAdvanced4* This,WCHAR *pwszURL,DWORD *pcchURL) { return This->lpVtbl->GetURL(This,pwszURL,pcchURL); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMReaderAdvanced4_GetLanguageCount_Proxy( IWMReaderAdvanced4* This, DWORD dwOutputNum, WORD *pwLanguageCount); void __RPC_STUB IWMReaderAdvanced4_GetLanguageCount_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced4_GetLanguage_Proxy( IWMReaderAdvanced4* This, DWORD dwOutputNum, WORD wLanguage, WCHAR *pwszLanguageString, WORD *pcchLanguageStringLength); void __RPC_STUB IWMReaderAdvanced4_GetLanguage_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced4_GetMaxSpeedFactor_Proxy( IWMReaderAdvanced4* This, double *pdblFactor); void __RPC_STUB IWMReaderAdvanced4_GetMaxSpeedFactor_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced4_IsUsingFastCache_Proxy( IWMReaderAdvanced4* This, WINBOOL *pfUsingFastCache); void __RPC_STUB IWMReaderAdvanced4_IsUsingFastCache_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced4_AddLogParam_Proxy( IWMReaderAdvanced4* This, LPCWSTR wszNameSpace, LPCWSTR wszName, LPCWSTR wszValue); void __RPC_STUB IWMReaderAdvanced4_AddLogParam_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced4_SendLogParams_Proxy( IWMReaderAdvanced4* This); void __RPC_STUB IWMReaderAdvanced4_SendLogParams_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced4_CanSaveFileAs_Proxy( IWMReaderAdvanced4* This, WINBOOL *pfCanSave); void __RPC_STUB IWMReaderAdvanced4_CanSaveFileAs_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced4_CancelSaveFileAs_Proxy( IWMReaderAdvanced4* This); void __RPC_STUB IWMReaderAdvanced4_CancelSaveFileAs_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMReaderAdvanced4_GetURL_Proxy( IWMReaderAdvanced4* This, WCHAR *pwszURL, DWORD *pcchURL); void __RPC_STUB IWMReaderAdvanced4_GetURL_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMReaderAdvanced4_INTERFACE_DEFINED__ */ /***************************************************************************** * IWMReaderAdvanced5 interface */ #ifndef __IWMReaderAdvanced5_INTERFACE_DEFINED__ #define __IWMReaderAdvanced5_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMReaderAdvanced5, 0x24c44db0, 0x55d1, 0x49ae, 0xa5,0xcc, 0xf1,0x38,0x15,0xe3,0x63,0x63); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("24c44db0-55d1-49ae-a5cc-f13815e36363") IWMReaderAdvanced5 : public IWMReaderAdvanced4 { virtual HRESULT STDMETHODCALLTYPE SetPlayerHook( DWORD dwOutputNum, IWMPlayerHook *pHook) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMReaderAdvanced5, 0x24c44db0, 0x55d1, 0x49ae, 0xa5,0xcc, 0xf1,0x38,0x15,0xe3,0x63,0x63) #endif #else typedef struct IWMReaderAdvanced5Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMReaderAdvanced5* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMReaderAdvanced5* This); ULONG (STDMETHODCALLTYPE *Release)( IWMReaderAdvanced5* This); /*** IWMReaderAdvanced methods ***/ HRESULT (STDMETHODCALLTYPE *SetUserProvidedClock)( IWMReaderAdvanced5* This, WINBOOL fUserClock); HRESULT (STDMETHODCALLTYPE *GetUserProvidedClock)( IWMReaderAdvanced5* This, WINBOOL *pfUserClock); HRESULT (STDMETHODCALLTYPE *DeliverTime)( IWMReaderAdvanced5* This, QWORD cnsTime); HRESULT (STDMETHODCALLTYPE *SetManualStreamSelection)( IWMReaderAdvanced5* This, WINBOOL fSelection); HRESULT (STDMETHODCALLTYPE *GetManualStreamSelection)( IWMReaderAdvanced5* This, WINBOOL *pfSelection); HRESULT (STDMETHODCALLTYPE *SetStreamsSelected)( IWMReaderAdvanced5* This, WORD cStreamCount, WORD *pwStreamNumbers, WMT_STREAM_SELECTION *pSelections); HRESULT (STDMETHODCALLTYPE *GetStreamSelected)( IWMReaderAdvanced5* This, WORD wStreamNum, WMT_STREAM_SELECTION *pSelection); HRESULT (STDMETHODCALLTYPE *SetReceiveSelectionCallbacks)( IWMReaderAdvanced5* This, WINBOOL fGetCallbacks); HRESULT (STDMETHODCALLTYPE *GetReceiveSelectionCallbacks)( IWMReaderAdvanced5* This, WINBOOL *pfGetCallbacks); HRESULT (STDMETHODCALLTYPE *SetReceiveStreamSamples)( IWMReaderAdvanced5* This, WORD wStreamNum, WINBOOL fReceiveStreamSamples); HRESULT (STDMETHODCALLTYPE *GetReceiveStreamSamples)( IWMReaderAdvanced5* This, WORD wStreamNum, WINBOOL *pfReceiveStreamSamples); HRESULT (STDMETHODCALLTYPE *SetAllocateForOutput)( IWMReaderAdvanced5* This, DWORD dwOutputNum, WINBOOL fAllocate); HRESULT (STDMETHODCALLTYPE *GetAllocateForOutput)( IWMReaderAdvanced5* This, DWORD dwOutputNum, WINBOOL *pfAllocate); HRESULT (STDMETHODCALLTYPE *SetAllocateForStream)( IWMReaderAdvanced5* This, WORD wStreamNum, WINBOOL fAllocate); HRESULT (STDMETHODCALLTYPE *GetAllocateForStream)( IWMReaderAdvanced5* This, WORD dwSreamNum, WINBOOL *pfAllocate); HRESULT (STDMETHODCALLTYPE *GetStatistics)( IWMReaderAdvanced5* This, WM_READER_STATISTICS *pStatistics); HRESULT (STDMETHODCALLTYPE *SetClientInfo)( IWMReaderAdvanced5* This, WM_READER_CLIENTINFO *pClientInfo); HRESULT (STDMETHODCALLTYPE *GetMaxOutputSampleSize)( IWMReaderAdvanced5* This, DWORD dwOutput, DWORD *pcbMax); HRESULT (STDMETHODCALLTYPE *GetMaxStreamSampleSize)( IWMReaderAdvanced5* This, WORD wStream, DWORD *pcbMax); HRESULT (STDMETHODCALLTYPE *NotifyLateDelivery)( IWMReaderAdvanced5* This, QWORD cnsLateness); /*** IWMReaderAdvanced2 methods ***/ HRESULT (STDMETHODCALLTYPE *SetPlayMode)( IWMReaderAdvanced5* This, WMT_PLAY_MODE Mode); HRESULT (STDMETHODCALLTYPE *GetPlayMode)( IWMReaderAdvanced5* This, WMT_PLAY_MODE *pMode); HRESULT (STDMETHODCALLTYPE *GetBufferProgress)( IWMReaderAdvanced5* This, DWORD *pdwPercent, QWORD *pcnsBuffering); HRESULT (STDMETHODCALLTYPE *GetDownloadProgress)( IWMReaderAdvanced5* This, DWORD *pdwPercent, QWORD *pqwBytesDownloaded, QWORD *pcnsDownload); HRESULT (STDMETHODCALLTYPE *GetSaveAsProgress)( IWMReaderAdvanced5* This, DWORD *pdwPercent); HRESULT (STDMETHODCALLTYPE *SaveFileAs)( IWMReaderAdvanced5* This, const WCHAR *pwszFilename); HRESULT (STDMETHODCALLTYPE *GetProtocolName)( IWMReaderAdvanced5* This, WCHAR *pwszProtocol, DWORD *pcchProtocol); HRESULT (STDMETHODCALLTYPE *StartAtMarker)( IWMReaderAdvanced5* This, WORD wMarkerIndex, QWORD cnsDuration, float fRate, void *pvContext); HRESULT (STDMETHODCALLTYPE *GetOutputSetting)( IWMReaderAdvanced5* This, DWORD dwOutputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE *pType, BYTE *pValue, WORD *pcbLength); HRESULT (STDMETHODCALLTYPE *SetOutputSetting)( IWMReaderAdvanced5* This, DWORD dwOutputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE Type, const BYTE *pValue, WORD cbLength); HRESULT (STDMETHODCALLTYPE *Preroll)( IWMReaderAdvanced5* This, QWORD cnsStart, QWORD cnsDuration, float fRate); HRESULT (STDMETHODCALLTYPE *SetLogClientID)( IWMReaderAdvanced5* This, WINBOOL fLogClientID); HRESULT (STDMETHODCALLTYPE *GetLogClientID)( IWMReaderAdvanced5* This, WINBOOL *pfLogClientID); HRESULT (STDMETHODCALLTYPE *StopBuffering)( IWMReaderAdvanced5* This); HRESULT (STDMETHODCALLTYPE *OpenStream)( IWMReaderAdvanced5* This, IStream *pStream, IWMReaderCallback *pCallback, void *pvContext); /*** IWMReaderAdvanced3 methods ***/ HRESULT (STDMETHODCALLTYPE *StopNetStreaming)( IWMReaderAdvanced5* This); HRESULT (STDMETHODCALLTYPE *StartAtPosition)( IWMReaderAdvanced5* This, WORD wStreamNum, void *pvOffsetStart, void *pvDuration, WMT_OFFSET_FORMAT dwOffsetFormat, float fRate, void *pvContext); /*** IWMReaderAdvanced4 methods ***/ HRESULT (STDMETHODCALLTYPE *GetLanguageCount)( IWMReaderAdvanced5* This, DWORD dwOutputNum, WORD *pwLanguageCount); HRESULT (STDMETHODCALLTYPE *GetLanguage)( IWMReaderAdvanced5* This, DWORD dwOutputNum, WORD wLanguage, WCHAR *pwszLanguageString, WORD *pcchLanguageStringLength); HRESULT (STDMETHODCALLTYPE *GetMaxSpeedFactor)( IWMReaderAdvanced5* This, double *pdblFactor); HRESULT (STDMETHODCALLTYPE *IsUsingFastCache)( IWMReaderAdvanced5* This, WINBOOL *pfUsingFastCache); HRESULT (STDMETHODCALLTYPE *AddLogParam)( IWMReaderAdvanced5* This, LPCWSTR wszNameSpace, LPCWSTR wszName, LPCWSTR wszValue); HRESULT (STDMETHODCALLTYPE *SendLogParams)( IWMReaderAdvanced5* This); HRESULT (STDMETHODCALLTYPE *CanSaveFileAs)( IWMReaderAdvanced5* This, WINBOOL *pfCanSave); HRESULT (STDMETHODCALLTYPE *CancelSaveFileAs)( IWMReaderAdvanced5* This); HRESULT (STDMETHODCALLTYPE *GetURL)( IWMReaderAdvanced5* This, WCHAR *pwszURL, DWORD *pcchURL); /*** IWMReaderAdvanced5 methods ***/ HRESULT (STDMETHODCALLTYPE *SetPlayerHook)( IWMReaderAdvanced5* This, DWORD dwOutputNum, IWMPlayerHook *pHook); END_INTERFACE } IWMReaderAdvanced5Vtbl; interface IWMReaderAdvanced5 { CONST_VTBL IWMReaderAdvanced5Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMReaderAdvanced5_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMReaderAdvanced5_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMReaderAdvanced5_Release(This) (This)->lpVtbl->Release(This) /*** IWMReaderAdvanced methods ***/ #define IWMReaderAdvanced5_SetUserProvidedClock(This,fUserClock) (This)->lpVtbl->SetUserProvidedClock(This,fUserClock) #define IWMReaderAdvanced5_GetUserProvidedClock(This,pfUserClock) (This)->lpVtbl->GetUserProvidedClock(This,pfUserClock) #define IWMReaderAdvanced5_DeliverTime(This,cnsTime) (This)->lpVtbl->DeliverTime(This,cnsTime) #define IWMReaderAdvanced5_SetManualStreamSelection(This,fSelection) (This)->lpVtbl->SetManualStreamSelection(This,fSelection) #define IWMReaderAdvanced5_GetManualStreamSelection(This,pfSelection) (This)->lpVtbl->GetManualStreamSelection(This,pfSelection) #define IWMReaderAdvanced5_SetStreamsSelected(This,cStreamCount,pwStreamNumbers,pSelections) (This)->lpVtbl->SetStreamsSelected(This,cStreamCount,pwStreamNumbers,pSelections) #define IWMReaderAdvanced5_GetStreamSelected(This,wStreamNum,pSelection) (This)->lpVtbl->GetStreamSelected(This,wStreamNum,pSelection) #define IWMReaderAdvanced5_SetReceiveSelectionCallbacks(This,fGetCallbacks) (This)->lpVtbl->SetReceiveSelectionCallbacks(This,fGetCallbacks) #define IWMReaderAdvanced5_GetReceiveSelectionCallbacks(This,pfGetCallbacks) (This)->lpVtbl->GetReceiveSelectionCallbacks(This,pfGetCallbacks) #define IWMReaderAdvanced5_SetReceiveStreamSamples(This,wStreamNum,fReceiveStreamSamples) (This)->lpVtbl->SetReceiveStreamSamples(This,wStreamNum,fReceiveStreamSamples) #define IWMReaderAdvanced5_GetReceiveStreamSamples(This,wStreamNum,pfReceiveStreamSamples) (This)->lpVtbl->GetReceiveStreamSamples(This,wStreamNum,pfReceiveStreamSamples) #define IWMReaderAdvanced5_SetAllocateForOutput(This,dwOutputNum,fAllocate) (This)->lpVtbl->SetAllocateForOutput(This,dwOutputNum,fAllocate) #define IWMReaderAdvanced5_GetAllocateForOutput(This,dwOutputNum,pfAllocate) (This)->lpVtbl->GetAllocateForOutput(This,dwOutputNum,pfAllocate) #define IWMReaderAdvanced5_SetAllocateForStream(This,wStreamNum,fAllocate) (This)->lpVtbl->SetAllocateForStream(This,wStreamNum,fAllocate) #define IWMReaderAdvanced5_GetAllocateForStream(This,dwSreamNum,pfAllocate) (This)->lpVtbl->GetAllocateForStream(This,dwSreamNum,pfAllocate) #define IWMReaderAdvanced5_GetStatistics(This,pStatistics) (This)->lpVtbl->GetStatistics(This,pStatistics) #define IWMReaderAdvanced5_SetClientInfo(This,pClientInfo) (This)->lpVtbl->SetClientInfo(This,pClientInfo) #define IWMReaderAdvanced5_GetMaxOutputSampleSize(This,dwOutput,pcbMax) (This)->lpVtbl->GetMaxOutputSampleSize(This,dwOutput,pcbMax) #define IWMReaderAdvanced5_GetMaxStreamSampleSize(This,wStream,pcbMax) (This)->lpVtbl->GetMaxStreamSampleSize(This,wStream,pcbMax) #define IWMReaderAdvanced5_NotifyLateDelivery(This,cnsLateness) (This)->lpVtbl->NotifyLateDelivery(This,cnsLateness) /*** IWMReaderAdvanced2 methods ***/ #define IWMReaderAdvanced5_SetPlayMode(This,Mode) (This)->lpVtbl->SetPlayMode(This,Mode) #define IWMReaderAdvanced5_GetPlayMode(This,pMode) (This)->lpVtbl->GetPlayMode(This,pMode) #define IWMReaderAdvanced5_GetBufferProgress(This,pdwPercent,pcnsBuffering) (This)->lpVtbl->GetBufferProgress(This,pdwPercent,pcnsBuffering) #define IWMReaderAdvanced5_GetDownloadProgress(This,pdwPercent,pqwBytesDownloaded,pcnsDownload) (This)->lpVtbl->GetDownloadProgress(This,pdwPercent,pqwBytesDownloaded,pcnsDownload) #define IWMReaderAdvanced5_GetSaveAsProgress(This,pdwPercent) (This)->lpVtbl->GetSaveAsProgress(This,pdwPercent) #define IWMReaderAdvanced5_SaveFileAs(This,pwszFilename) (This)->lpVtbl->SaveFileAs(This,pwszFilename) #define IWMReaderAdvanced5_GetProtocolName(This,pwszProtocol,pcchProtocol) (This)->lpVtbl->GetProtocolName(This,pwszProtocol,pcchProtocol) #define IWMReaderAdvanced5_StartAtMarker(This,wMarkerIndex,cnsDuration,fRate,pvContext) (This)->lpVtbl->StartAtMarker(This,wMarkerIndex,cnsDuration,fRate,pvContext) #define IWMReaderAdvanced5_GetOutputSetting(This,dwOutputNum,pszName,pType,pValue,pcbLength) (This)->lpVtbl->GetOutputSetting(This,dwOutputNum,pszName,pType,pValue,pcbLength) #define IWMReaderAdvanced5_SetOutputSetting(This,dwOutputNum,pszName,Type,pValue,cbLength) (This)->lpVtbl->SetOutputSetting(This,dwOutputNum,pszName,Type,pValue,cbLength) #define IWMReaderAdvanced5_Preroll(This,cnsStart,cnsDuration,fRate) (This)->lpVtbl->Preroll(This,cnsStart,cnsDuration,fRate) #define IWMReaderAdvanced5_SetLogClientID(This,fLogClientID) (This)->lpVtbl->SetLogClientID(This,fLogClientID) #define IWMReaderAdvanced5_GetLogClientID(This,pfLogClientID) (This)->lpVtbl->GetLogClientID(This,pfLogClientID) #define IWMReaderAdvanced5_StopBuffering(This) (This)->lpVtbl->StopBuffering(This) #define IWMReaderAdvanced5_OpenStream(This,pStream,pCallback,pvContext) (This)->lpVtbl->OpenStream(This,pStream,pCallback,pvContext) /*** IWMReaderAdvanced3 methods ***/ #define IWMReaderAdvanced5_StopNetStreaming(This) (This)->lpVtbl->StopNetStreaming(This) #define IWMReaderAdvanced5_StartAtPosition(This,wStreamNum,pvOffsetStart,pvDuration,dwOffsetFormat,fRate,pvContext) (This)->lpVtbl->StartAtPosition(This,wStreamNum,pvOffsetStart,pvDuration,dwOffsetFormat,fRate,pvContext) /*** IWMReaderAdvanced4 methods ***/ #define IWMReaderAdvanced5_GetLanguageCount(This,dwOutputNum,pwLanguageCount) (This)->lpVtbl->GetLanguageCount(This,dwOutputNum,pwLanguageCount) #define IWMReaderAdvanced5_GetLanguage(This,dwOutputNum,wLanguage,pwszLanguageString,pcchLanguageStringLength) (This)->lpVtbl->GetLanguage(This,dwOutputNum,wLanguage,pwszLanguageString,pcchLanguageStringLength) #define IWMReaderAdvanced5_GetMaxSpeedFactor(This,pdblFactor) (This)->lpVtbl->GetMaxSpeedFactor(This,pdblFactor) #define IWMReaderAdvanced5_IsUsingFastCache(This,pfUsingFastCache) (This)->lpVtbl->IsUsingFastCache(This,pfUsingFastCache) #define IWMReaderAdvanced5_AddLogParam(This,wszNameSpace,wszName,wszValue) (This)->lpVtbl->AddLogParam(This,wszNameSpace,wszName,wszValue) #define IWMReaderAdvanced5_SendLogParams(This) (This)->lpVtbl->SendLogParams(This) #define IWMReaderAdvanced5_CanSaveFileAs(This,pfCanSave) (This)->lpVtbl->CanSaveFileAs(This,pfCanSave) #define IWMReaderAdvanced5_CancelSaveFileAs(This) (This)->lpVtbl->CancelSaveFileAs(This) #define IWMReaderAdvanced5_GetURL(This,pwszURL,pcchURL) (This)->lpVtbl->GetURL(This,pwszURL,pcchURL) /*** IWMReaderAdvanced5 methods ***/ #define IWMReaderAdvanced5_SetPlayerHook(This,dwOutputNum,pHook) (This)->lpVtbl->SetPlayerHook(This,dwOutputNum,pHook) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced5_QueryInterface(IWMReaderAdvanced5* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMReaderAdvanced5_AddRef(IWMReaderAdvanced5* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMReaderAdvanced5_Release(IWMReaderAdvanced5* This) { return This->lpVtbl->Release(This); } /*** IWMReaderAdvanced methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced5_SetUserProvidedClock(IWMReaderAdvanced5* This,WINBOOL fUserClock) { return This->lpVtbl->SetUserProvidedClock(This,fUserClock); } static FORCEINLINE HRESULT IWMReaderAdvanced5_GetUserProvidedClock(IWMReaderAdvanced5* This,WINBOOL *pfUserClock) { return This->lpVtbl->GetUserProvidedClock(This,pfUserClock); } static FORCEINLINE HRESULT IWMReaderAdvanced5_DeliverTime(IWMReaderAdvanced5* This,QWORD cnsTime) { return This->lpVtbl->DeliverTime(This,cnsTime); } static FORCEINLINE HRESULT IWMReaderAdvanced5_SetManualStreamSelection(IWMReaderAdvanced5* This,WINBOOL fSelection) { return This->lpVtbl->SetManualStreamSelection(This,fSelection); } static FORCEINLINE HRESULT IWMReaderAdvanced5_GetManualStreamSelection(IWMReaderAdvanced5* This,WINBOOL *pfSelection) { return This->lpVtbl->GetManualStreamSelection(This,pfSelection); } static FORCEINLINE HRESULT IWMReaderAdvanced5_SetStreamsSelected(IWMReaderAdvanced5* This,WORD cStreamCount,WORD *pwStreamNumbers,WMT_STREAM_SELECTION *pSelections) { return This->lpVtbl->SetStreamsSelected(This,cStreamCount,pwStreamNumbers,pSelections); } static FORCEINLINE HRESULT IWMReaderAdvanced5_GetStreamSelected(IWMReaderAdvanced5* This,WORD wStreamNum,WMT_STREAM_SELECTION *pSelection) { return This->lpVtbl->GetStreamSelected(This,wStreamNum,pSelection); } static FORCEINLINE HRESULT IWMReaderAdvanced5_SetReceiveSelectionCallbacks(IWMReaderAdvanced5* This,WINBOOL fGetCallbacks) { return This->lpVtbl->SetReceiveSelectionCallbacks(This,fGetCallbacks); } static FORCEINLINE HRESULT IWMReaderAdvanced5_GetReceiveSelectionCallbacks(IWMReaderAdvanced5* This,WINBOOL *pfGetCallbacks) { return This->lpVtbl->GetReceiveSelectionCallbacks(This,pfGetCallbacks); } static FORCEINLINE HRESULT IWMReaderAdvanced5_SetReceiveStreamSamples(IWMReaderAdvanced5* This,WORD wStreamNum,WINBOOL fReceiveStreamSamples) { return This->lpVtbl->SetReceiveStreamSamples(This,wStreamNum,fReceiveStreamSamples); } static FORCEINLINE HRESULT IWMReaderAdvanced5_GetReceiveStreamSamples(IWMReaderAdvanced5* This,WORD wStreamNum,WINBOOL *pfReceiveStreamSamples) { return This->lpVtbl->GetReceiveStreamSamples(This,wStreamNum,pfReceiveStreamSamples); } static FORCEINLINE HRESULT IWMReaderAdvanced5_SetAllocateForOutput(IWMReaderAdvanced5* This,DWORD dwOutputNum,WINBOOL fAllocate) { return This->lpVtbl->SetAllocateForOutput(This,dwOutputNum,fAllocate); } static FORCEINLINE HRESULT IWMReaderAdvanced5_GetAllocateForOutput(IWMReaderAdvanced5* This,DWORD dwOutputNum,WINBOOL *pfAllocate) { return This->lpVtbl->GetAllocateForOutput(This,dwOutputNum,pfAllocate); } static FORCEINLINE HRESULT IWMReaderAdvanced5_SetAllocateForStream(IWMReaderAdvanced5* This,WORD wStreamNum,WINBOOL fAllocate) { return This->lpVtbl->SetAllocateForStream(This,wStreamNum,fAllocate); } static FORCEINLINE HRESULT IWMReaderAdvanced5_GetAllocateForStream(IWMReaderAdvanced5* This,WORD dwSreamNum,WINBOOL *pfAllocate) { return This->lpVtbl->GetAllocateForStream(This,dwSreamNum,pfAllocate); } static FORCEINLINE HRESULT IWMReaderAdvanced5_GetStatistics(IWMReaderAdvanced5* This,WM_READER_STATISTICS *pStatistics) { return This->lpVtbl->GetStatistics(This,pStatistics); } static FORCEINLINE HRESULT IWMReaderAdvanced5_SetClientInfo(IWMReaderAdvanced5* This,WM_READER_CLIENTINFO *pClientInfo) { return This->lpVtbl->SetClientInfo(This,pClientInfo); } static FORCEINLINE HRESULT IWMReaderAdvanced5_GetMaxOutputSampleSize(IWMReaderAdvanced5* This,DWORD dwOutput,DWORD *pcbMax) { return This->lpVtbl->GetMaxOutputSampleSize(This,dwOutput,pcbMax); } static FORCEINLINE HRESULT IWMReaderAdvanced5_GetMaxStreamSampleSize(IWMReaderAdvanced5* This,WORD wStream,DWORD *pcbMax) { return This->lpVtbl->GetMaxStreamSampleSize(This,wStream,pcbMax); } static FORCEINLINE HRESULT IWMReaderAdvanced5_NotifyLateDelivery(IWMReaderAdvanced5* This,QWORD cnsLateness) { return This->lpVtbl->NotifyLateDelivery(This,cnsLateness); } /*** IWMReaderAdvanced2 methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced5_SetPlayMode(IWMReaderAdvanced5* This,WMT_PLAY_MODE Mode) { return This->lpVtbl->SetPlayMode(This,Mode); } static FORCEINLINE HRESULT IWMReaderAdvanced5_GetPlayMode(IWMReaderAdvanced5* This,WMT_PLAY_MODE *pMode) { return This->lpVtbl->GetPlayMode(This,pMode); } static FORCEINLINE HRESULT IWMReaderAdvanced5_GetBufferProgress(IWMReaderAdvanced5* This,DWORD *pdwPercent,QWORD *pcnsBuffering) { return This->lpVtbl->GetBufferProgress(This,pdwPercent,pcnsBuffering); } static FORCEINLINE HRESULT IWMReaderAdvanced5_GetDownloadProgress(IWMReaderAdvanced5* This,DWORD *pdwPercent,QWORD *pqwBytesDownloaded,QWORD *pcnsDownload) { return This->lpVtbl->GetDownloadProgress(This,pdwPercent,pqwBytesDownloaded,pcnsDownload); } static FORCEINLINE HRESULT IWMReaderAdvanced5_GetSaveAsProgress(IWMReaderAdvanced5* This,DWORD *pdwPercent) { return This->lpVtbl->GetSaveAsProgress(This,pdwPercent); } static FORCEINLINE HRESULT IWMReaderAdvanced5_SaveFileAs(IWMReaderAdvanced5* This,const WCHAR *pwszFilename) { return This->lpVtbl->SaveFileAs(This,pwszFilename); } static FORCEINLINE HRESULT IWMReaderAdvanced5_GetProtocolName(IWMReaderAdvanced5* This,WCHAR *pwszProtocol,DWORD *pcchProtocol) { return This->lpVtbl->GetProtocolName(This,pwszProtocol,pcchProtocol); } static FORCEINLINE HRESULT IWMReaderAdvanced5_StartAtMarker(IWMReaderAdvanced5* This,WORD wMarkerIndex,QWORD cnsDuration,float fRate,void *pvContext) { return This->lpVtbl->StartAtMarker(This,wMarkerIndex,cnsDuration,fRate,pvContext); } static FORCEINLINE HRESULT IWMReaderAdvanced5_GetOutputSetting(IWMReaderAdvanced5* This,DWORD dwOutputNum,LPCWSTR pszName,WMT_ATTR_DATATYPE *pType,BYTE *pValue,WORD *pcbLength) { return This->lpVtbl->GetOutputSetting(This,dwOutputNum,pszName,pType,pValue,pcbLength); } static FORCEINLINE HRESULT IWMReaderAdvanced5_SetOutputSetting(IWMReaderAdvanced5* This,DWORD dwOutputNum,LPCWSTR pszName,WMT_ATTR_DATATYPE Type,const BYTE *pValue,WORD cbLength) { return This->lpVtbl->SetOutputSetting(This,dwOutputNum,pszName,Type,pValue,cbLength); } static FORCEINLINE HRESULT IWMReaderAdvanced5_Preroll(IWMReaderAdvanced5* This,QWORD cnsStart,QWORD cnsDuration,float fRate) { return This->lpVtbl->Preroll(This,cnsStart,cnsDuration,fRate); } static FORCEINLINE HRESULT IWMReaderAdvanced5_SetLogClientID(IWMReaderAdvanced5* This,WINBOOL fLogClientID) { return This->lpVtbl->SetLogClientID(This,fLogClientID); } static FORCEINLINE HRESULT IWMReaderAdvanced5_GetLogClientID(IWMReaderAdvanced5* This,WINBOOL *pfLogClientID) { return This->lpVtbl->GetLogClientID(This,pfLogClientID); } static FORCEINLINE HRESULT IWMReaderAdvanced5_StopBuffering(IWMReaderAdvanced5* This) { return This->lpVtbl->StopBuffering(This); } static FORCEINLINE HRESULT IWMReaderAdvanced5_OpenStream(IWMReaderAdvanced5* This,IStream *pStream,IWMReaderCallback *pCallback,void *pvContext) { return This->lpVtbl->OpenStream(This,pStream,pCallback,pvContext); } /*** IWMReaderAdvanced3 methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced5_StopNetStreaming(IWMReaderAdvanced5* This) { return This->lpVtbl->StopNetStreaming(This); } static FORCEINLINE HRESULT IWMReaderAdvanced5_StartAtPosition(IWMReaderAdvanced5* This,WORD wStreamNum,void *pvOffsetStart,void *pvDuration,WMT_OFFSET_FORMAT dwOffsetFormat,float fRate,void *pvContext) { return This->lpVtbl->StartAtPosition(This,wStreamNum,pvOffsetStart,pvDuration,dwOffsetFormat,fRate,pvContext); } /*** IWMReaderAdvanced4 methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced5_GetLanguageCount(IWMReaderAdvanced5* This,DWORD dwOutputNum,WORD *pwLanguageCount) { return This->lpVtbl->GetLanguageCount(This,dwOutputNum,pwLanguageCount); } static FORCEINLINE HRESULT IWMReaderAdvanced5_GetLanguage(IWMReaderAdvanced5* This,DWORD dwOutputNum,WORD wLanguage,WCHAR *pwszLanguageString,WORD *pcchLanguageStringLength) { return This->lpVtbl->GetLanguage(This,dwOutputNum,wLanguage,pwszLanguageString,pcchLanguageStringLength); } static FORCEINLINE HRESULT IWMReaderAdvanced5_GetMaxSpeedFactor(IWMReaderAdvanced5* This,double *pdblFactor) { return This->lpVtbl->GetMaxSpeedFactor(This,pdblFactor); } static FORCEINLINE HRESULT IWMReaderAdvanced5_IsUsingFastCache(IWMReaderAdvanced5* This,WINBOOL *pfUsingFastCache) { return This->lpVtbl->IsUsingFastCache(This,pfUsingFastCache); } static FORCEINLINE HRESULT IWMReaderAdvanced5_AddLogParam(IWMReaderAdvanced5* This,LPCWSTR wszNameSpace,LPCWSTR wszName,LPCWSTR wszValue) { return This->lpVtbl->AddLogParam(This,wszNameSpace,wszName,wszValue); } static FORCEINLINE HRESULT IWMReaderAdvanced5_SendLogParams(IWMReaderAdvanced5* This) { return This->lpVtbl->SendLogParams(This); } static FORCEINLINE HRESULT IWMReaderAdvanced5_CanSaveFileAs(IWMReaderAdvanced5* This,WINBOOL *pfCanSave) { return This->lpVtbl->CanSaveFileAs(This,pfCanSave); } static FORCEINLINE HRESULT IWMReaderAdvanced5_CancelSaveFileAs(IWMReaderAdvanced5* This) { return This->lpVtbl->CancelSaveFileAs(This); } static FORCEINLINE HRESULT IWMReaderAdvanced5_GetURL(IWMReaderAdvanced5* This,WCHAR *pwszURL,DWORD *pcchURL) { return This->lpVtbl->GetURL(This,pwszURL,pcchURL); } /*** IWMReaderAdvanced5 methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced5_SetPlayerHook(IWMReaderAdvanced5* This,DWORD dwOutputNum,IWMPlayerHook *pHook) { return This->lpVtbl->SetPlayerHook(This,dwOutputNum,pHook); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMReaderAdvanced5_SetPlayerHook_Proxy( IWMReaderAdvanced5* This, DWORD dwOutputNum, IWMPlayerHook *pHook); void __RPC_STUB IWMReaderAdvanced5_SetPlayerHook_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMReaderAdvanced5_INTERFACE_DEFINED__ */ /***************************************************************************** * IWMReaderAdvanced6 interface */ #ifndef __IWMReaderAdvanced6_INTERFACE_DEFINED__ #define __IWMReaderAdvanced6_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMReaderAdvanced6, 0x18a2e7f8, 0x428f, 0x4acd, 0x8a,0x00, 0xe6,0x46,0x39,0xbc,0x93,0xde); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("18a2e7f8-428f-4acd-8a00-e64639bc93de") IWMReaderAdvanced6 : public IWMReaderAdvanced5 { virtual HRESULT STDMETHODCALLTYPE SetProtectStreamSamples( BYTE *pbCertificate, DWORD cbCertificate, DWORD dwCertificateType, DWORD dwFlags, BYTE *pbInitializationVector, DWORD *pcbInitializationVector) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMReaderAdvanced6, 0x18a2e7f8, 0x428f, 0x4acd, 0x8a,0x00, 0xe6,0x46,0x39,0xbc,0x93,0xde) #endif #else typedef struct IWMReaderAdvanced6Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMReaderAdvanced6* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMReaderAdvanced6* This); ULONG (STDMETHODCALLTYPE *Release)( IWMReaderAdvanced6* This); /*** IWMReaderAdvanced methods ***/ HRESULT (STDMETHODCALLTYPE *SetUserProvidedClock)( IWMReaderAdvanced6* This, WINBOOL fUserClock); HRESULT (STDMETHODCALLTYPE *GetUserProvidedClock)( IWMReaderAdvanced6* This, WINBOOL *pfUserClock); HRESULT (STDMETHODCALLTYPE *DeliverTime)( IWMReaderAdvanced6* This, QWORD cnsTime); HRESULT (STDMETHODCALLTYPE *SetManualStreamSelection)( IWMReaderAdvanced6* This, WINBOOL fSelection); HRESULT (STDMETHODCALLTYPE *GetManualStreamSelection)( IWMReaderAdvanced6* This, WINBOOL *pfSelection); HRESULT (STDMETHODCALLTYPE *SetStreamsSelected)( IWMReaderAdvanced6* This, WORD cStreamCount, WORD *pwStreamNumbers, WMT_STREAM_SELECTION *pSelections); HRESULT (STDMETHODCALLTYPE *GetStreamSelected)( IWMReaderAdvanced6* This, WORD wStreamNum, WMT_STREAM_SELECTION *pSelection); HRESULT (STDMETHODCALLTYPE *SetReceiveSelectionCallbacks)( IWMReaderAdvanced6* This, WINBOOL fGetCallbacks); HRESULT (STDMETHODCALLTYPE *GetReceiveSelectionCallbacks)( IWMReaderAdvanced6* This, WINBOOL *pfGetCallbacks); HRESULT (STDMETHODCALLTYPE *SetReceiveStreamSamples)( IWMReaderAdvanced6* This, WORD wStreamNum, WINBOOL fReceiveStreamSamples); HRESULT (STDMETHODCALLTYPE *GetReceiveStreamSamples)( IWMReaderAdvanced6* This, WORD wStreamNum, WINBOOL *pfReceiveStreamSamples); HRESULT (STDMETHODCALLTYPE *SetAllocateForOutput)( IWMReaderAdvanced6* This, DWORD dwOutputNum, WINBOOL fAllocate); HRESULT (STDMETHODCALLTYPE *GetAllocateForOutput)( IWMReaderAdvanced6* This, DWORD dwOutputNum, WINBOOL *pfAllocate); HRESULT (STDMETHODCALLTYPE *SetAllocateForStream)( IWMReaderAdvanced6* This, WORD wStreamNum, WINBOOL fAllocate); HRESULT (STDMETHODCALLTYPE *GetAllocateForStream)( IWMReaderAdvanced6* This, WORD dwSreamNum, WINBOOL *pfAllocate); HRESULT (STDMETHODCALLTYPE *GetStatistics)( IWMReaderAdvanced6* This, WM_READER_STATISTICS *pStatistics); HRESULT (STDMETHODCALLTYPE *SetClientInfo)( IWMReaderAdvanced6* This, WM_READER_CLIENTINFO *pClientInfo); HRESULT (STDMETHODCALLTYPE *GetMaxOutputSampleSize)( IWMReaderAdvanced6* This, DWORD dwOutput, DWORD *pcbMax); HRESULT (STDMETHODCALLTYPE *GetMaxStreamSampleSize)( IWMReaderAdvanced6* This, WORD wStream, DWORD *pcbMax); HRESULT (STDMETHODCALLTYPE *NotifyLateDelivery)( IWMReaderAdvanced6* This, QWORD cnsLateness); /*** IWMReaderAdvanced2 methods ***/ HRESULT (STDMETHODCALLTYPE *SetPlayMode)( IWMReaderAdvanced6* This, WMT_PLAY_MODE Mode); HRESULT (STDMETHODCALLTYPE *GetPlayMode)( IWMReaderAdvanced6* This, WMT_PLAY_MODE *pMode); HRESULT (STDMETHODCALLTYPE *GetBufferProgress)( IWMReaderAdvanced6* This, DWORD *pdwPercent, QWORD *pcnsBuffering); HRESULT (STDMETHODCALLTYPE *GetDownloadProgress)( IWMReaderAdvanced6* This, DWORD *pdwPercent, QWORD *pqwBytesDownloaded, QWORD *pcnsDownload); HRESULT (STDMETHODCALLTYPE *GetSaveAsProgress)( IWMReaderAdvanced6* This, DWORD *pdwPercent); HRESULT (STDMETHODCALLTYPE *SaveFileAs)( IWMReaderAdvanced6* This, const WCHAR *pwszFilename); HRESULT (STDMETHODCALLTYPE *GetProtocolName)( IWMReaderAdvanced6* This, WCHAR *pwszProtocol, DWORD *pcchProtocol); HRESULT (STDMETHODCALLTYPE *StartAtMarker)( IWMReaderAdvanced6* This, WORD wMarkerIndex, QWORD cnsDuration, float fRate, void *pvContext); HRESULT (STDMETHODCALLTYPE *GetOutputSetting)( IWMReaderAdvanced6* This, DWORD dwOutputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE *pType, BYTE *pValue, WORD *pcbLength); HRESULT (STDMETHODCALLTYPE *SetOutputSetting)( IWMReaderAdvanced6* This, DWORD dwOutputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE Type, const BYTE *pValue, WORD cbLength); HRESULT (STDMETHODCALLTYPE *Preroll)( IWMReaderAdvanced6* This, QWORD cnsStart, QWORD cnsDuration, float fRate); HRESULT (STDMETHODCALLTYPE *SetLogClientID)( IWMReaderAdvanced6* This, WINBOOL fLogClientID); HRESULT (STDMETHODCALLTYPE *GetLogClientID)( IWMReaderAdvanced6* This, WINBOOL *pfLogClientID); HRESULT (STDMETHODCALLTYPE *StopBuffering)( IWMReaderAdvanced6* This); HRESULT (STDMETHODCALLTYPE *OpenStream)( IWMReaderAdvanced6* This, IStream *pStream, IWMReaderCallback *pCallback, void *pvContext); /*** IWMReaderAdvanced3 methods ***/ HRESULT (STDMETHODCALLTYPE *StopNetStreaming)( IWMReaderAdvanced6* This); HRESULT (STDMETHODCALLTYPE *StartAtPosition)( IWMReaderAdvanced6* This, WORD wStreamNum, void *pvOffsetStart, void *pvDuration, WMT_OFFSET_FORMAT dwOffsetFormat, float fRate, void *pvContext); /*** IWMReaderAdvanced4 methods ***/ HRESULT (STDMETHODCALLTYPE *GetLanguageCount)( IWMReaderAdvanced6* This, DWORD dwOutputNum, WORD *pwLanguageCount); HRESULT (STDMETHODCALLTYPE *GetLanguage)( IWMReaderAdvanced6* This, DWORD dwOutputNum, WORD wLanguage, WCHAR *pwszLanguageString, WORD *pcchLanguageStringLength); HRESULT (STDMETHODCALLTYPE *GetMaxSpeedFactor)( IWMReaderAdvanced6* This, double *pdblFactor); HRESULT (STDMETHODCALLTYPE *IsUsingFastCache)( IWMReaderAdvanced6* This, WINBOOL *pfUsingFastCache); HRESULT (STDMETHODCALLTYPE *AddLogParam)( IWMReaderAdvanced6* This, LPCWSTR wszNameSpace, LPCWSTR wszName, LPCWSTR wszValue); HRESULT (STDMETHODCALLTYPE *SendLogParams)( IWMReaderAdvanced6* This); HRESULT (STDMETHODCALLTYPE *CanSaveFileAs)( IWMReaderAdvanced6* This, WINBOOL *pfCanSave); HRESULT (STDMETHODCALLTYPE *CancelSaveFileAs)( IWMReaderAdvanced6* This); HRESULT (STDMETHODCALLTYPE *GetURL)( IWMReaderAdvanced6* This, WCHAR *pwszURL, DWORD *pcchURL); /*** IWMReaderAdvanced5 methods ***/ HRESULT (STDMETHODCALLTYPE *SetPlayerHook)( IWMReaderAdvanced6* This, DWORD dwOutputNum, IWMPlayerHook *pHook); /*** IWMReaderAdvanced6 methods ***/ HRESULT (STDMETHODCALLTYPE *SetProtectStreamSamples)( IWMReaderAdvanced6* This, BYTE *pbCertificate, DWORD cbCertificate, DWORD dwCertificateType, DWORD dwFlags, BYTE *pbInitializationVector, DWORD *pcbInitializationVector); END_INTERFACE } IWMReaderAdvanced6Vtbl; interface IWMReaderAdvanced6 { CONST_VTBL IWMReaderAdvanced6Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMReaderAdvanced6_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMReaderAdvanced6_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMReaderAdvanced6_Release(This) (This)->lpVtbl->Release(This) /*** IWMReaderAdvanced methods ***/ #define IWMReaderAdvanced6_SetUserProvidedClock(This,fUserClock) (This)->lpVtbl->SetUserProvidedClock(This,fUserClock) #define IWMReaderAdvanced6_GetUserProvidedClock(This,pfUserClock) (This)->lpVtbl->GetUserProvidedClock(This,pfUserClock) #define IWMReaderAdvanced6_DeliverTime(This,cnsTime) (This)->lpVtbl->DeliverTime(This,cnsTime) #define IWMReaderAdvanced6_SetManualStreamSelection(This,fSelection) (This)->lpVtbl->SetManualStreamSelection(This,fSelection) #define IWMReaderAdvanced6_GetManualStreamSelection(This,pfSelection) (This)->lpVtbl->GetManualStreamSelection(This,pfSelection) #define IWMReaderAdvanced6_SetStreamsSelected(This,cStreamCount,pwStreamNumbers,pSelections) (This)->lpVtbl->SetStreamsSelected(This,cStreamCount,pwStreamNumbers,pSelections) #define IWMReaderAdvanced6_GetStreamSelected(This,wStreamNum,pSelection) (This)->lpVtbl->GetStreamSelected(This,wStreamNum,pSelection) #define IWMReaderAdvanced6_SetReceiveSelectionCallbacks(This,fGetCallbacks) (This)->lpVtbl->SetReceiveSelectionCallbacks(This,fGetCallbacks) #define IWMReaderAdvanced6_GetReceiveSelectionCallbacks(This,pfGetCallbacks) (This)->lpVtbl->GetReceiveSelectionCallbacks(This,pfGetCallbacks) #define IWMReaderAdvanced6_SetReceiveStreamSamples(This,wStreamNum,fReceiveStreamSamples) (This)->lpVtbl->SetReceiveStreamSamples(This,wStreamNum,fReceiveStreamSamples) #define IWMReaderAdvanced6_GetReceiveStreamSamples(This,wStreamNum,pfReceiveStreamSamples) (This)->lpVtbl->GetReceiveStreamSamples(This,wStreamNum,pfReceiveStreamSamples) #define IWMReaderAdvanced6_SetAllocateForOutput(This,dwOutputNum,fAllocate) (This)->lpVtbl->SetAllocateForOutput(This,dwOutputNum,fAllocate) #define IWMReaderAdvanced6_GetAllocateForOutput(This,dwOutputNum,pfAllocate) (This)->lpVtbl->GetAllocateForOutput(This,dwOutputNum,pfAllocate) #define IWMReaderAdvanced6_SetAllocateForStream(This,wStreamNum,fAllocate) (This)->lpVtbl->SetAllocateForStream(This,wStreamNum,fAllocate) #define IWMReaderAdvanced6_GetAllocateForStream(This,dwSreamNum,pfAllocate) (This)->lpVtbl->GetAllocateForStream(This,dwSreamNum,pfAllocate) #define IWMReaderAdvanced6_GetStatistics(This,pStatistics) (This)->lpVtbl->GetStatistics(This,pStatistics) #define IWMReaderAdvanced6_SetClientInfo(This,pClientInfo) (This)->lpVtbl->SetClientInfo(This,pClientInfo) #define IWMReaderAdvanced6_GetMaxOutputSampleSize(This,dwOutput,pcbMax) (This)->lpVtbl->GetMaxOutputSampleSize(This,dwOutput,pcbMax) #define IWMReaderAdvanced6_GetMaxStreamSampleSize(This,wStream,pcbMax) (This)->lpVtbl->GetMaxStreamSampleSize(This,wStream,pcbMax) #define IWMReaderAdvanced6_NotifyLateDelivery(This,cnsLateness) (This)->lpVtbl->NotifyLateDelivery(This,cnsLateness) /*** IWMReaderAdvanced2 methods ***/ #define IWMReaderAdvanced6_SetPlayMode(This,Mode) (This)->lpVtbl->SetPlayMode(This,Mode) #define IWMReaderAdvanced6_GetPlayMode(This,pMode) (This)->lpVtbl->GetPlayMode(This,pMode) #define IWMReaderAdvanced6_GetBufferProgress(This,pdwPercent,pcnsBuffering) (This)->lpVtbl->GetBufferProgress(This,pdwPercent,pcnsBuffering) #define IWMReaderAdvanced6_GetDownloadProgress(This,pdwPercent,pqwBytesDownloaded,pcnsDownload) (This)->lpVtbl->GetDownloadProgress(This,pdwPercent,pqwBytesDownloaded,pcnsDownload) #define IWMReaderAdvanced6_GetSaveAsProgress(This,pdwPercent) (This)->lpVtbl->GetSaveAsProgress(This,pdwPercent) #define IWMReaderAdvanced6_SaveFileAs(This,pwszFilename) (This)->lpVtbl->SaveFileAs(This,pwszFilename) #define IWMReaderAdvanced6_GetProtocolName(This,pwszProtocol,pcchProtocol) (This)->lpVtbl->GetProtocolName(This,pwszProtocol,pcchProtocol) #define IWMReaderAdvanced6_StartAtMarker(This,wMarkerIndex,cnsDuration,fRate,pvContext) (This)->lpVtbl->StartAtMarker(This,wMarkerIndex,cnsDuration,fRate,pvContext) #define IWMReaderAdvanced6_GetOutputSetting(This,dwOutputNum,pszName,pType,pValue,pcbLength) (This)->lpVtbl->GetOutputSetting(This,dwOutputNum,pszName,pType,pValue,pcbLength) #define IWMReaderAdvanced6_SetOutputSetting(This,dwOutputNum,pszName,Type,pValue,cbLength) (This)->lpVtbl->SetOutputSetting(This,dwOutputNum,pszName,Type,pValue,cbLength) #define IWMReaderAdvanced6_Preroll(This,cnsStart,cnsDuration,fRate) (This)->lpVtbl->Preroll(This,cnsStart,cnsDuration,fRate) #define IWMReaderAdvanced6_SetLogClientID(This,fLogClientID) (This)->lpVtbl->SetLogClientID(This,fLogClientID) #define IWMReaderAdvanced6_GetLogClientID(This,pfLogClientID) (This)->lpVtbl->GetLogClientID(This,pfLogClientID) #define IWMReaderAdvanced6_StopBuffering(This) (This)->lpVtbl->StopBuffering(This) #define IWMReaderAdvanced6_OpenStream(This,pStream,pCallback,pvContext) (This)->lpVtbl->OpenStream(This,pStream,pCallback,pvContext) /*** IWMReaderAdvanced3 methods ***/ #define IWMReaderAdvanced6_StopNetStreaming(This) (This)->lpVtbl->StopNetStreaming(This) #define IWMReaderAdvanced6_StartAtPosition(This,wStreamNum,pvOffsetStart,pvDuration,dwOffsetFormat,fRate,pvContext) (This)->lpVtbl->StartAtPosition(This,wStreamNum,pvOffsetStart,pvDuration,dwOffsetFormat,fRate,pvContext) /*** IWMReaderAdvanced4 methods ***/ #define IWMReaderAdvanced6_GetLanguageCount(This,dwOutputNum,pwLanguageCount) (This)->lpVtbl->GetLanguageCount(This,dwOutputNum,pwLanguageCount) #define IWMReaderAdvanced6_GetLanguage(This,dwOutputNum,wLanguage,pwszLanguageString,pcchLanguageStringLength) (This)->lpVtbl->GetLanguage(This,dwOutputNum,wLanguage,pwszLanguageString,pcchLanguageStringLength) #define IWMReaderAdvanced6_GetMaxSpeedFactor(This,pdblFactor) (This)->lpVtbl->GetMaxSpeedFactor(This,pdblFactor) #define IWMReaderAdvanced6_IsUsingFastCache(This,pfUsingFastCache) (This)->lpVtbl->IsUsingFastCache(This,pfUsingFastCache) #define IWMReaderAdvanced6_AddLogParam(This,wszNameSpace,wszName,wszValue) (This)->lpVtbl->AddLogParam(This,wszNameSpace,wszName,wszValue) #define IWMReaderAdvanced6_SendLogParams(This) (This)->lpVtbl->SendLogParams(This) #define IWMReaderAdvanced6_CanSaveFileAs(This,pfCanSave) (This)->lpVtbl->CanSaveFileAs(This,pfCanSave) #define IWMReaderAdvanced6_CancelSaveFileAs(This) (This)->lpVtbl->CancelSaveFileAs(This) #define IWMReaderAdvanced6_GetURL(This,pwszURL,pcchURL) (This)->lpVtbl->GetURL(This,pwszURL,pcchURL) /*** IWMReaderAdvanced5 methods ***/ #define IWMReaderAdvanced6_SetPlayerHook(This,dwOutputNum,pHook) (This)->lpVtbl->SetPlayerHook(This,dwOutputNum,pHook) /*** IWMReaderAdvanced6 methods ***/ #define IWMReaderAdvanced6_SetProtectStreamSamples(This,pbCertificate,cbCertificate,dwCertificateType,dwFlags,pbInitializationVector,pcbInitializationVector) (This)->lpVtbl->SetProtectStreamSamples(This,pbCertificate,cbCertificate,dwCertificateType,dwFlags,pbInitializationVector,pcbInitializationVector) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced6_QueryInterface(IWMReaderAdvanced6* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMReaderAdvanced6_AddRef(IWMReaderAdvanced6* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMReaderAdvanced6_Release(IWMReaderAdvanced6* This) { return This->lpVtbl->Release(This); } /*** IWMReaderAdvanced methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced6_SetUserProvidedClock(IWMReaderAdvanced6* This,WINBOOL fUserClock) { return This->lpVtbl->SetUserProvidedClock(This,fUserClock); } static FORCEINLINE HRESULT IWMReaderAdvanced6_GetUserProvidedClock(IWMReaderAdvanced6* This,WINBOOL *pfUserClock) { return This->lpVtbl->GetUserProvidedClock(This,pfUserClock); } static FORCEINLINE HRESULT IWMReaderAdvanced6_DeliverTime(IWMReaderAdvanced6* This,QWORD cnsTime) { return This->lpVtbl->DeliverTime(This,cnsTime); } static FORCEINLINE HRESULT IWMReaderAdvanced6_SetManualStreamSelection(IWMReaderAdvanced6* This,WINBOOL fSelection) { return This->lpVtbl->SetManualStreamSelection(This,fSelection); } static FORCEINLINE HRESULT IWMReaderAdvanced6_GetManualStreamSelection(IWMReaderAdvanced6* This,WINBOOL *pfSelection) { return This->lpVtbl->GetManualStreamSelection(This,pfSelection); } static FORCEINLINE HRESULT IWMReaderAdvanced6_SetStreamsSelected(IWMReaderAdvanced6* This,WORD cStreamCount,WORD *pwStreamNumbers,WMT_STREAM_SELECTION *pSelections) { return This->lpVtbl->SetStreamsSelected(This,cStreamCount,pwStreamNumbers,pSelections); } static FORCEINLINE HRESULT IWMReaderAdvanced6_GetStreamSelected(IWMReaderAdvanced6* This,WORD wStreamNum,WMT_STREAM_SELECTION *pSelection) { return This->lpVtbl->GetStreamSelected(This,wStreamNum,pSelection); } static FORCEINLINE HRESULT IWMReaderAdvanced6_SetReceiveSelectionCallbacks(IWMReaderAdvanced6* This,WINBOOL fGetCallbacks) { return This->lpVtbl->SetReceiveSelectionCallbacks(This,fGetCallbacks); } static FORCEINLINE HRESULT IWMReaderAdvanced6_GetReceiveSelectionCallbacks(IWMReaderAdvanced6* This,WINBOOL *pfGetCallbacks) { return This->lpVtbl->GetReceiveSelectionCallbacks(This,pfGetCallbacks); } static FORCEINLINE HRESULT IWMReaderAdvanced6_SetReceiveStreamSamples(IWMReaderAdvanced6* This,WORD wStreamNum,WINBOOL fReceiveStreamSamples) { return This->lpVtbl->SetReceiveStreamSamples(This,wStreamNum,fReceiveStreamSamples); } static FORCEINLINE HRESULT IWMReaderAdvanced6_GetReceiveStreamSamples(IWMReaderAdvanced6* This,WORD wStreamNum,WINBOOL *pfReceiveStreamSamples) { return This->lpVtbl->GetReceiveStreamSamples(This,wStreamNum,pfReceiveStreamSamples); } static FORCEINLINE HRESULT IWMReaderAdvanced6_SetAllocateForOutput(IWMReaderAdvanced6* This,DWORD dwOutputNum,WINBOOL fAllocate) { return This->lpVtbl->SetAllocateForOutput(This,dwOutputNum,fAllocate); } static FORCEINLINE HRESULT IWMReaderAdvanced6_GetAllocateForOutput(IWMReaderAdvanced6* This,DWORD dwOutputNum,WINBOOL *pfAllocate) { return This->lpVtbl->GetAllocateForOutput(This,dwOutputNum,pfAllocate); } static FORCEINLINE HRESULT IWMReaderAdvanced6_SetAllocateForStream(IWMReaderAdvanced6* This,WORD wStreamNum,WINBOOL fAllocate) { return This->lpVtbl->SetAllocateForStream(This,wStreamNum,fAllocate); } static FORCEINLINE HRESULT IWMReaderAdvanced6_GetAllocateForStream(IWMReaderAdvanced6* This,WORD dwSreamNum,WINBOOL *pfAllocate) { return This->lpVtbl->GetAllocateForStream(This,dwSreamNum,pfAllocate); } static FORCEINLINE HRESULT IWMReaderAdvanced6_GetStatistics(IWMReaderAdvanced6* This,WM_READER_STATISTICS *pStatistics) { return This->lpVtbl->GetStatistics(This,pStatistics); } static FORCEINLINE HRESULT IWMReaderAdvanced6_SetClientInfo(IWMReaderAdvanced6* This,WM_READER_CLIENTINFO *pClientInfo) { return This->lpVtbl->SetClientInfo(This,pClientInfo); } static FORCEINLINE HRESULT IWMReaderAdvanced6_GetMaxOutputSampleSize(IWMReaderAdvanced6* This,DWORD dwOutput,DWORD *pcbMax) { return This->lpVtbl->GetMaxOutputSampleSize(This,dwOutput,pcbMax); } static FORCEINLINE HRESULT IWMReaderAdvanced6_GetMaxStreamSampleSize(IWMReaderAdvanced6* This,WORD wStream,DWORD *pcbMax) { return This->lpVtbl->GetMaxStreamSampleSize(This,wStream,pcbMax); } static FORCEINLINE HRESULT IWMReaderAdvanced6_NotifyLateDelivery(IWMReaderAdvanced6* This,QWORD cnsLateness) { return This->lpVtbl->NotifyLateDelivery(This,cnsLateness); } /*** IWMReaderAdvanced2 methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced6_SetPlayMode(IWMReaderAdvanced6* This,WMT_PLAY_MODE Mode) { return This->lpVtbl->SetPlayMode(This,Mode); } static FORCEINLINE HRESULT IWMReaderAdvanced6_GetPlayMode(IWMReaderAdvanced6* This,WMT_PLAY_MODE *pMode) { return This->lpVtbl->GetPlayMode(This,pMode); } static FORCEINLINE HRESULT IWMReaderAdvanced6_GetBufferProgress(IWMReaderAdvanced6* This,DWORD *pdwPercent,QWORD *pcnsBuffering) { return This->lpVtbl->GetBufferProgress(This,pdwPercent,pcnsBuffering); } static FORCEINLINE HRESULT IWMReaderAdvanced6_GetDownloadProgress(IWMReaderAdvanced6* This,DWORD *pdwPercent,QWORD *pqwBytesDownloaded,QWORD *pcnsDownload) { return This->lpVtbl->GetDownloadProgress(This,pdwPercent,pqwBytesDownloaded,pcnsDownload); } static FORCEINLINE HRESULT IWMReaderAdvanced6_GetSaveAsProgress(IWMReaderAdvanced6* This,DWORD *pdwPercent) { return This->lpVtbl->GetSaveAsProgress(This,pdwPercent); } static FORCEINLINE HRESULT IWMReaderAdvanced6_SaveFileAs(IWMReaderAdvanced6* This,const WCHAR *pwszFilename) { return This->lpVtbl->SaveFileAs(This,pwszFilename); } static FORCEINLINE HRESULT IWMReaderAdvanced6_GetProtocolName(IWMReaderAdvanced6* This,WCHAR *pwszProtocol,DWORD *pcchProtocol) { return This->lpVtbl->GetProtocolName(This,pwszProtocol,pcchProtocol); } static FORCEINLINE HRESULT IWMReaderAdvanced6_StartAtMarker(IWMReaderAdvanced6* This,WORD wMarkerIndex,QWORD cnsDuration,float fRate,void *pvContext) { return This->lpVtbl->StartAtMarker(This,wMarkerIndex,cnsDuration,fRate,pvContext); } static FORCEINLINE HRESULT IWMReaderAdvanced6_GetOutputSetting(IWMReaderAdvanced6* This,DWORD dwOutputNum,LPCWSTR pszName,WMT_ATTR_DATATYPE *pType,BYTE *pValue,WORD *pcbLength) { return This->lpVtbl->GetOutputSetting(This,dwOutputNum,pszName,pType,pValue,pcbLength); } static FORCEINLINE HRESULT IWMReaderAdvanced6_SetOutputSetting(IWMReaderAdvanced6* This,DWORD dwOutputNum,LPCWSTR pszName,WMT_ATTR_DATATYPE Type,const BYTE *pValue,WORD cbLength) { return This->lpVtbl->SetOutputSetting(This,dwOutputNum,pszName,Type,pValue,cbLength); } static FORCEINLINE HRESULT IWMReaderAdvanced6_Preroll(IWMReaderAdvanced6* This,QWORD cnsStart,QWORD cnsDuration,float fRate) { return This->lpVtbl->Preroll(This,cnsStart,cnsDuration,fRate); } static FORCEINLINE HRESULT IWMReaderAdvanced6_SetLogClientID(IWMReaderAdvanced6* This,WINBOOL fLogClientID) { return This->lpVtbl->SetLogClientID(This,fLogClientID); } static FORCEINLINE HRESULT IWMReaderAdvanced6_GetLogClientID(IWMReaderAdvanced6* This,WINBOOL *pfLogClientID) { return This->lpVtbl->GetLogClientID(This,pfLogClientID); } static FORCEINLINE HRESULT IWMReaderAdvanced6_StopBuffering(IWMReaderAdvanced6* This) { return This->lpVtbl->StopBuffering(This); } static FORCEINLINE HRESULT IWMReaderAdvanced6_OpenStream(IWMReaderAdvanced6* This,IStream *pStream,IWMReaderCallback *pCallback,void *pvContext) { return This->lpVtbl->OpenStream(This,pStream,pCallback,pvContext); } /*** IWMReaderAdvanced3 methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced6_StopNetStreaming(IWMReaderAdvanced6* This) { return This->lpVtbl->StopNetStreaming(This); } static FORCEINLINE HRESULT IWMReaderAdvanced6_StartAtPosition(IWMReaderAdvanced6* This,WORD wStreamNum,void *pvOffsetStart,void *pvDuration,WMT_OFFSET_FORMAT dwOffsetFormat,float fRate,void *pvContext) { return This->lpVtbl->StartAtPosition(This,wStreamNum,pvOffsetStart,pvDuration,dwOffsetFormat,fRate,pvContext); } /*** IWMReaderAdvanced4 methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced6_GetLanguageCount(IWMReaderAdvanced6* This,DWORD dwOutputNum,WORD *pwLanguageCount) { return This->lpVtbl->GetLanguageCount(This,dwOutputNum,pwLanguageCount); } static FORCEINLINE HRESULT IWMReaderAdvanced6_GetLanguage(IWMReaderAdvanced6* This,DWORD dwOutputNum,WORD wLanguage,WCHAR *pwszLanguageString,WORD *pcchLanguageStringLength) { return This->lpVtbl->GetLanguage(This,dwOutputNum,wLanguage,pwszLanguageString,pcchLanguageStringLength); } static FORCEINLINE HRESULT IWMReaderAdvanced6_GetMaxSpeedFactor(IWMReaderAdvanced6* This,double *pdblFactor) { return This->lpVtbl->GetMaxSpeedFactor(This,pdblFactor); } static FORCEINLINE HRESULT IWMReaderAdvanced6_IsUsingFastCache(IWMReaderAdvanced6* This,WINBOOL *pfUsingFastCache) { return This->lpVtbl->IsUsingFastCache(This,pfUsingFastCache); } static FORCEINLINE HRESULT IWMReaderAdvanced6_AddLogParam(IWMReaderAdvanced6* This,LPCWSTR wszNameSpace,LPCWSTR wszName,LPCWSTR wszValue) { return This->lpVtbl->AddLogParam(This,wszNameSpace,wszName,wszValue); } static FORCEINLINE HRESULT IWMReaderAdvanced6_SendLogParams(IWMReaderAdvanced6* This) { return This->lpVtbl->SendLogParams(This); } static FORCEINLINE HRESULT IWMReaderAdvanced6_CanSaveFileAs(IWMReaderAdvanced6* This,WINBOOL *pfCanSave) { return This->lpVtbl->CanSaveFileAs(This,pfCanSave); } static FORCEINLINE HRESULT IWMReaderAdvanced6_CancelSaveFileAs(IWMReaderAdvanced6* This) { return This->lpVtbl->CancelSaveFileAs(This); } static FORCEINLINE HRESULT IWMReaderAdvanced6_GetURL(IWMReaderAdvanced6* This,WCHAR *pwszURL,DWORD *pcchURL) { return This->lpVtbl->GetURL(This,pwszURL,pcchURL); } /*** IWMReaderAdvanced5 methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced6_SetPlayerHook(IWMReaderAdvanced6* This,DWORD dwOutputNum,IWMPlayerHook *pHook) { return This->lpVtbl->SetPlayerHook(This,dwOutputNum,pHook); } /*** IWMReaderAdvanced6 methods ***/ static FORCEINLINE HRESULT IWMReaderAdvanced6_SetProtectStreamSamples(IWMReaderAdvanced6* This,BYTE *pbCertificate,DWORD cbCertificate,DWORD dwCertificateType,DWORD dwFlags,BYTE *pbInitializationVector,DWORD *pcbInitializationVector) { return This->lpVtbl->SetProtectStreamSamples(This,pbCertificate,cbCertificate,dwCertificateType,dwFlags,pbInitializationVector,pcbInitializationVector); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMReaderAdvanced6_SetProtectStreamSamples_Proxy( IWMReaderAdvanced6* This, BYTE *pbCertificate, DWORD cbCertificate, DWORD dwCertificateType, DWORD dwFlags, BYTE *pbInitializationVector, DWORD *pcbInitializationVector); void __RPC_STUB IWMReaderAdvanced6_SetProtectStreamSamples_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMReaderAdvanced6_INTERFACE_DEFINED__ */ /***************************************************************************** * IWMSyncReader interface */ #ifndef __IWMSyncReader_INTERFACE_DEFINED__ #define __IWMSyncReader_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMSyncReader, 0x9397f121, 0x7705, 0x4dc9, 0xb0,0x49, 0x98,0xb6,0x98,0x18,0x84,0x14); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9397f121-7705-4dc9-b049-98b698188414") IWMSyncReader : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Open( const WCHAR *pwszFilename) = 0; virtual HRESULT STDMETHODCALLTYPE Close( ) = 0; virtual HRESULT STDMETHODCALLTYPE SetRange( QWORD cnsStartTime, LONGLONG cnsDuration) = 0; virtual HRESULT STDMETHODCALLTYPE SetRangeByFrame( WORD wStreamNum, QWORD qwFrameNumber, LONGLONG cFramesToRead) = 0; virtual HRESULT STDMETHODCALLTYPE GetNextSample( WORD wStreamNum, INSSBuffer **ppSample, QWORD *pcnsSampleTime, QWORD *pcnsDuration, DWORD *pdwFlags, DWORD *pdwOutputNum, WORD *pwStreamNum) = 0; virtual HRESULT STDMETHODCALLTYPE SetStreamsSelected( WORD cStreamCount, WORD *pwStreamNumbers, WMT_STREAM_SELECTION *pSelections) = 0; virtual HRESULT STDMETHODCALLTYPE GetStreamSelected( WORD wStreamNum, WMT_STREAM_SELECTION *pSelection) = 0; virtual HRESULT STDMETHODCALLTYPE SetReadStreamSamples( WORD wStreamNum, WINBOOL fCompressed) = 0; virtual HRESULT STDMETHODCALLTYPE GetReadStreamSamples( WORD wStreamNum, WINBOOL *pfCompressed) = 0; virtual HRESULT STDMETHODCALLTYPE GetOutputSetting( DWORD dwOutputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE *pType, BYTE *pValue, WORD *pcbLength) = 0; virtual HRESULT STDMETHODCALLTYPE SetOutputSetting( DWORD dwOutputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE Type, const BYTE *pValue, WORD cbLength) = 0; virtual HRESULT STDMETHODCALLTYPE GetOutputCount( DWORD *pcOutputs) = 0; virtual HRESULT STDMETHODCALLTYPE GetOutputProps( DWORD dwOutputNum, IWMOutputMediaProps **ppOutput) = 0; virtual HRESULT STDMETHODCALLTYPE SetOutputProps( DWORD dwOutputNum, IWMOutputMediaProps *pOutput) = 0; virtual HRESULT STDMETHODCALLTYPE GetOutputFormatCount( DWORD dwOutputNum, DWORD *pcFormats) = 0; virtual HRESULT STDMETHODCALLTYPE GetOutputFormat( DWORD dwOutputNum, DWORD dwFormatNum, IWMOutputMediaProps **ppProps) = 0; virtual HRESULT STDMETHODCALLTYPE GetOutputNumberForStream( WORD wStreamNum, DWORD *pdwOutputNum) = 0; virtual HRESULT STDMETHODCALLTYPE GetStreamNumberForOutput( DWORD dwOutputNum, WORD *pwStreamNum) = 0; virtual HRESULT STDMETHODCALLTYPE GetMaxOutputSampleSize( DWORD dwOutput, DWORD *pcbMax) = 0; virtual HRESULT STDMETHODCALLTYPE GetMaxStreamSampleSize( WORD wStream, DWORD *pcbMax) = 0; virtual HRESULT STDMETHODCALLTYPE OpenStream( IStream *pStream) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMSyncReader, 0x9397f121, 0x7705, 0x4dc9, 0xb0,0x49, 0x98,0xb6,0x98,0x18,0x84,0x14) #endif #else typedef struct IWMSyncReaderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMSyncReader* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMSyncReader* This); ULONG (STDMETHODCALLTYPE *Release)( IWMSyncReader* This); /*** IWMSyncReader methods ***/ HRESULT (STDMETHODCALLTYPE *Open)( IWMSyncReader* This, const WCHAR *pwszFilename); HRESULT (STDMETHODCALLTYPE *Close)( IWMSyncReader* This); HRESULT (STDMETHODCALLTYPE *SetRange)( IWMSyncReader* This, QWORD cnsStartTime, LONGLONG cnsDuration); HRESULT (STDMETHODCALLTYPE *SetRangeByFrame)( IWMSyncReader* This, WORD wStreamNum, QWORD qwFrameNumber, LONGLONG cFramesToRead); HRESULT (STDMETHODCALLTYPE *GetNextSample)( IWMSyncReader* This, WORD wStreamNum, INSSBuffer **ppSample, QWORD *pcnsSampleTime, QWORD *pcnsDuration, DWORD *pdwFlags, DWORD *pdwOutputNum, WORD *pwStreamNum); HRESULT (STDMETHODCALLTYPE *SetStreamsSelected)( IWMSyncReader* This, WORD cStreamCount, WORD *pwStreamNumbers, WMT_STREAM_SELECTION *pSelections); HRESULT (STDMETHODCALLTYPE *GetStreamSelected)( IWMSyncReader* This, WORD wStreamNum, WMT_STREAM_SELECTION *pSelection); HRESULT (STDMETHODCALLTYPE *SetReadStreamSamples)( IWMSyncReader* This, WORD wStreamNum, WINBOOL fCompressed); HRESULT (STDMETHODCALLTYPE *GetReadStreamSamples)( IWMSyncReader* This, WORD wStreamNum, WINBOOL *pfCompressed); HRESULT (STDMETHODCALLTYPE *GetOutputSetting)( IWMSyncReader* This, DWORD dwOutputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE *pType, BYTE *pValue, WORD *pcbLength); HRESULT (STDMETHODCALLTYPE *SetOutputSetting)( IWMSyncReader* This, DWORD dwOutputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE Type, const BYTE *pValue, WORD cbLength); HRESULT (STDMETHODCALLTYPE *GetOutputCount)( IWMSyncReader* This, DWORD *pcOutputs); HRESULT (STDMETHODCALLTYPE *GetOutputProps)( IWMSyncReader* This, DWORD dwOutputNum, IWMOutputMediaProps **ppOutput); HRESULT (STDMETHODCALLTYPE *SetOutputProps)( IWMSyncReader* This, DWORD dwOutputNum, IWMOutputMediaProps *pOutput); HRESULT (STDMETHODCALLTYPE *GetOutputFormatCount)( IWMSyncReader* This, DWORD dwOutputNum, DWORD *pcFormats); HRESULT (STDMETHODCALLTYPE *GetOutputFormat)( IWMSyncReader* This, DWORD dwOutputNum, DWORD dwFormatNum, IWMOutputMediaProps **ppProps); HRESULT (STDMETHODCALLTYPE *GetOutputNumberForStream)( IWMSyncReader* This, WORD wStreamNum, DWORD *pdwOutputNum); HRESULT (STDMETHODCALLTYPE *GetStreamNumberForOutput)( IWMSyncReader* This, DWORD dwOutputNum, WORD *pwStreamNum); HRESULT (STDMETHODCALLTYPE *GetMaxOutputSampleSize)( IWMSyncReader* This, DWORD dwOutput, DWORD *pcbMax); HRESULT (STDMETHODCALLTYPE *GetMaxStreamSampleSize)( IWMSyncReader* This, WORD wStream, DWORD *pcbMax); HRESULT (STDMETHODCALLTYPE *OpenStream)( IWMSyncReader* This, IStream *pStream); END_INTERFACE } IWMSyncReaderVtbl; interface IWMSyncReader { CONST_VTBL IWMSyncReaderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMSyncReader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMSyncReader_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMSyncReader_Release(This) (This)->lpVtbl->Release(This) /*** IWMSyncReader methods ***/ #define IWMSyncReader_Open(This,pwszFilename) (This)->lpVtbl->Open(This,pwszFilename) #define IWMSyncReader_Close(This) (This)->lpVtbl->Close(This) #define IWMSyncReader_SetRange(This,cnsStartTime,cnsDuration) (This)->lpVtbl->SetRange(This,cnsStartTime,cnsDuration) #define IWMSyncReader_SetRangeByFrame(This,wStreamNum,qwFrameNumber,cFramesToRead) (This)->lpVtbl->SetRangeByFrame(This,wStreamNum,qwFrameNumber,cFramesToRead) #define IWMSyncReader_GetNextSample(This,wStreamNum,ppSample,pcnsSampleTime,pcnsDuration,pdwFlags,pdwOutputNum,pwStreamNum) (This)->lpVtbl->GetNextSample(This,wStreamNum,ppSample,pcnsSampleTime,pcnsDuration,pdwFlags,pdwOutputNum,pwStreamNum) #define IWMSyncReader_SetStreamsSelected(This,cStreamCount,pwStreamNumbers,pSelections) (This)->lpVtbl->SetStreamsSelected(This,cStreamCount,pwStreamNumbers,pSelections) #define IWMSyncReader_GetStreamSelected(This,wStreamNum,pSelection) (This)->lpVtbl->GetStreamSelected(This,wStreamNum,pSelection) #define IWMSyncReader_SetReadStreamSamples(This,wStreamNum,fCompressed) (This)->lpVtbl->SetReadStreamSamples(This,wStreamNum,fCompressed) #define IWMSyncReader_GetReadStreamSamples(This,wStreamNum,pfCompressed) (This)->lpVtbl->GetReadStreamSamples(This,wStreamNum,pfCompressed) #define IWMSyncReader_GetOutputSetting(This,dwOutputNum,pszName,pType,pValue,pcbLength) (This)->lpVtbl->GetOutputSetting(This,dwOutputNum,pszName,pType,pValue,pcbLength) #define IWMSyncReader_SetOutputSetting(This,dwOutputNum,pszName,Type,pValue,cbLength) (This)->lpVtbl->SetOutputSetting(This,dwOutputNum,pszName,Type,pValue,cbLength) #define IWMSyncReader_GetOutputCount(This,pcOutputs) (This)->lpVtbl->GetOutputCount(This,pcOutputs) #define IWMSyncReader_GetOutputProps(This,dwOutputNum,ppOutput) (This)->lpVtbl->GetOutputProps(This,dwOutputNum,ppOutput) #define IWMSyncReader_SetOutputProps(This,dwOutputNum,pOutput) (This)->lpVtbl->SetOutputProps(This,dwOutputNum,pOutput) #define IWMSyncReader_GetOutputFormatCount(This,dwOutputNum,pcFormats) (This)->lpVtbl->GetOutputFormatCount(This,dwOutputNum,pcFormats) #define IWMSyncReader_GetOutputFormat(This,dwOutputNum,dwFormatNum,ppProps) (This)->lpVtbl->GetOutputFormat(This,dwOutputNum,dwFormatNum,ppProps) #define IWMSyncReader_GetOutputNumberForStream(This,wStreamNum,pdwOutputNum) (This)->lpVtbl->GetOutputNumberForStream(This,wStreamNum,pdwOutputNum) #define IWMSyncReader_GetStreamNumberForOutput(This,dwOutputNum,pwStreamNum) (This)->lpVtbl->GetStreamNumberForOutput(This,dwOutputNum,pwStreamNum) #define IWMSyncReader_GetMaxOutputSampleSize(This,dwOutput,pcbMax) (This)->lpVtbl->GetMaxOutputSampleSize(This,dwOutput,pcbMax) #define IWMSyncReader_GetMaxStreamSampleSize(This,wStream,pcbMax) (This)->lpVtbl->GetMaxStreamSampleSize(This,wStream,pcbMax) #define IWMSyncReader_OpenStream(This,pStream) (This)->lpVtbl->OpenStream(This,pStream) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMSyncReader_QueryInterface(IWMSyncReader* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMSyncReader_AddRef(IWMSyncReader* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMSyncReader_Release(IWMSyncReader* This) { return This->lpVtbl->Release(This); } /*** IWMSyncReader methods ***/ static FORCEINLINE HRESULT IWMSyncReader_Open(IWMSyncReader* This,const WCHAR *pwszFilename) { return This->lpVtbl->Open(This,pwszFilename); } static FORCEINLINE HRESULT IWMSyncReader_Close(IWMSyncReader* This) { return This->lpVtbl->Close(This); } static FORCEINLINE HRESULT IWMSyncReader_SetRange(IWMSyncReader* This,QWORD cnsStartTime,LONGLONG cnsDuration) { return This->lpVtbl->SetRange(This,cnsStartTime,cnsDuration); } static FORCEINLINE HRESULT IWMSyncReader_SetRangeByFrame(IWMSyncReader* This,WORD wStreamNum,QWORD qwFrameNumber,LONGLONG cFramesToRead) { return This->lpVtbl->SetRangeByFrame(This,wStreamNum,qwFrameNumber,cFramesToRead); } static FORCEINLINE HRESULT IWMSyncReader_GetNextSample(IWMSyncReader* This,WORD wStreamNum,INSSBuffer **ppSample,QWORD *pcnsSampleTime,QWORD *pcnsDuration,DWORD *pdwFlags,DWORD *pdwOutputNum,WORD *pwStreamNum) { return This->lpVtbl->GetNextSample(This,wStreamNum,ppSample,pcnsSampleTime,pcnsDuration,pdwFlags,pdwOutputNum,pwStreamNum); } static FORCEINLINE HRESULT IWMSyncReader_SetStreamsSelected(IWMSyncReader* This,WORD cStreamCount,WORD *pwStreamNumbers,WMT_STREAM_SELECTION *pSelections) { return This->lpVtbl->SetStreamsSelected(This,cStreamCount,pwStreamNumbers,pSelections); } static FORCEINLINE HRESULT IWMSyncReader_GetStreamSelected(IWMSyncReader* This,WORD wStreamNum,WMT_STREAM_SELECTION *pSelection) { return This->lpVtbl->GetStreamSelected(This,wStreamNum,pSelection); } static FORCEINLINE HRESULT IWMSyncReader_SetReadStreamSamples(IWMSyncReader* This,WORD wStreamNum,WINBOOL fCompressed) { return This->lpVtbl->SetReadStreamSamples(This,wStreamNum,fCompressed); } static FORCEINLINE HRESULT IWMSyncReader_GetReadStreamSamples(IWMSyncReader* This,WORD wStreamNum,WINBOOL *pfCompressed) { return This->lpVtbl->GetReadStreamSamples(This,wStreamNum,pfCompressed); } static FORCEINLINE HRESULT IWMSyncReader_GetOutputSetting(IWMSyncReader* This,DWORD dwOutputNum,LPCWSTR pszName,WMT_ATTR_DATATYPE *pType,BYTE *pValue,WORD *pcbLength) { return This->lpVtbl->GetOutputSetting(This,dwOutputNum,pszName,pType,pValue,pcbLength); } static FORCEINLINE HRESULT IWMSyncReader_SetOutputSetting(IWMSyncReader* This,DWORD dwOutputNum,LPCWSTR pszName,WMT_ATTR_DATATYPE Type,const BYTE *pValue,WORD cbLength) { return This->lpVtbl->SetOutputSetting(This,dwOutputNum,pszName,Type,pValue,cbLength); } static FORCEINLINE HRESULT IWMSyncReader_GetOutputCount(IWMSyncReader* This,DWORD *pcOutputs) { return This->lpVtbl->GetOutputCount(This,pcOutputs); } static FORCEINLINE HRESULT IWMSyncReader_GetOutputProps(IWMSyncReader* This,DWORD dwOutputNum,IWMOutputMediaProps **ppOutput) { return This->lpVtbl->GetOutputProps(This,dwOutputNum,ppOutput); } static FORCEINLINE HRESULT IWMSyncReader_SetOutputProps(IWMSyncReader* This,DWORD dwOutputNum,IWMOutputMediaProps *pOutput) { return This->lpVtbl->SetOutputProps(This,dwOutputNum,pOutput); } static FORCEINLINE HRESULT IWMSyncReader_GetOutputFormatCount(IWMSyncReader* This,DWORD dwOutputNum,DWORD *pcFormats) { return This->lpVtbl->GetOutputFormatCount(This,dwOutputNum,pcFormats); } static FORCEINLINE HRESULT IWMSyncReader_GetOutputFormat(IWMSyncReader* This,DWORD dwOutputNum,DWORD dwFormatNum,IWMOutputMediaProps **ppProps) { return This->lpVtbl->GetOutputFormat(This,dwOutputNum,dwFormatNum,ppProps); } static FORCEINLINE HRESULT IWMSyncReader_GetOutputNumberForStream(IWMSyncReader* This,WORD wStreamNum,DWORD *pdwOutputNum) { return This->lpVtbl->GetOutputNumberForStream(This,wStreamNum,pdwOutputNum); } static FORCEINLINE HRESULT IWMSyncReader_GetStreamNumberForOutput(IWMSyncReader* This,DWORD dwOutputNum,WORD *pwStreamNum) { return This->lpVtbl->GetStreamNumberForOutput(This,dwOutputNum,pwStreamNum); } static FORCEINLINE HRESULT IWMSyncReader_GetMaxOutputSampleSize(IWMSyncReader* This,DWORD dwOutput,DWORD *pcbMax) { return This->lpVtbl->GetMaxOutputSampleSize(This,dwOutput,pcbMax); } static FORCEINLINE HRESULT IWMSyncReader_GetMaxStreamSampleSize(IWMSyncReader* This,WORD wStream,DWORD *pcbMax) { return This->lpVtbl->GetMaxStreamSampleSize(This,wStream,pcbMax); } static FORCEINLINE HRESULT IWMSyncReader_OpenStream(IWMSyncReader* This,IStream *pStream) { return This->lpVtbl->OpenStream(This,pStream); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMSyncReader_Open_Proxy( IWMSyncReader* This, const WCHAR *pwszFilename); void __RPC_STUB IWMSyncReader_Open_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMSyncReader_Close_Proxy( IWMSyncReader* This); void __RPC_STUB IWMSyncReader_Close_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMSyncReader_SetRange_Proxy( IWMSyncReader* This, QWORD cnsStartTime, LONGLONG cnsDuration); void __RPC_STUB IWMSyncReader_SetRange_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMSyncReader_SetRangeByFrame_Proxy( IWMSyncReader* This, WORD wStreamNum, QWORD qwFrameNumber, LONGLONG cFramesToRead); void __RPC_STUB IWMSyncReader_SetRangeByFrame_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMSyncReader_GetNextSample_Proxy( IWMSyncReader* This, WORD wStreamNum, INSSBuffer **ppSample, QWORD *pcnsSampleTime, QWORD *pcnsDuration, DWORD *pdwFlags, DWORD *pdwOutputNum, WORD *pwStreamNum); void __RPC_STUB IWMSyncReader_GetNextSample_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMSyncReader_SetStreamsSelected_Proxy( IWMSyncReader* This, WORD cStreamCount, WORD *pwStreamNumbers, WMT_STREAM_SELECTION *pSelections); void __RPC_STUB IWMSyncReader_SetStreamsSelected_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMSyncReader_GetStreamSelected_Proxy( IWMSyncReader* This, WORD wStreamNum, WMT_STREAM_SELECTION *pSelection); void __RPC_STUB IWMSyncReader_GetStreamSelected_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMSyncReader_SetReadStreamSamples_Proxy( IWMSyncReader* This, WORD wStreamNum, WINBOOL fCompressed); void __RPC_STUB IWMSyncReader_SetReadStreamSamples_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMSyncReader_GetReadStreamSamples_Proxy( IWMSyncReader* This, WORD wStreamNum, WINBOOL *pfCompressed); void __RPC_STUB IWMSyncReader_GetReadStreamSamples_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMSyncReader_GetOutputSetting_Proxy( IWMSyncReader* This, DWORD dwOutputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE *pType, BYTE *pValue, WORD *pcbLength); void __RPC_STUB IWMSyncReader_GetOutputSetting_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMSyncReader_SetOutputSetting_Proxy( IWMSyncReader* This, DWORD dwOutputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE Type, const BYTE *pValue, WORD cbLength); void __RPC_STUB IWMSyncReader_SetOutputSetting_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMSyncReader_GetOutputCount_Proxy( IWMSyncReader* This, DWORD *pcOutputs); void __RPC_STUB IWMSyncReader_GetOutputCount_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMSyncReader_GetOutputProps_Proxy( IWMSyncReader* This, DWORD dwOutputNum, IWMOutputMediaProps **ppOutput); void __RPC_STUB IWMSyncReader_GetOutputProps_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMSyncReader_SetOutputProps_Proxy( IWMSyncReader* This, DWORD dwOutputNum, IWMOutputMediaProps *pOutput); void __RPC_STUB IWMSyncReader_SetOutputProps_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMSyncReader_GetOutputFormatCount_Proxy( IWMSyncReader* This, DWORD dwOutputNum, DWORD *pcFormats); void __RPC_STUB IWMSyncReader_GetOutputFormatCount_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMSyncReader_GetOutputFormat_Proxy( IWMSyncReader* This, DWORD dwOutputNum, DWORD dwFormatNum, IWMOutputMediaProps **ppProps); void __RPC_STUB IWMSyncReader_GetOutputFormat_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMSyncReader_GetOutputNumberForStream_Proxy( IWMSyncReader* This, WORD wStreamNum, DWORD *pdwOutputNum); void __RPC_STUB IWMSyncReader_GetOutputNumberForStream_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMSyncReader_GetStreamNumberForOutput_Proxy( IWMSyncReader* This, DWORD dwOutputNum, WORD *pwStreamNum); void __RPC_STUB IWMSyncReader_GetStreamNumberForOutput_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMSyncReader_GetMaxOutputSampleSize_Proxy( IWMSyncReader* This, DWORD dwOutput, DWORD *pcbMax); void __RPC_STUB IWMSyncReader_GetMaxOutputSampleSize_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMSyncReader_GetMaxStreamSampleSize_Proxy( IWMSyncReader* This, WORD wStream, DWORD *pcbMax); void __RPC_STUB IWMSyncReader_GetMaxStreamSampleSize_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMSyncReader_OpenStream_Proxy( IWMSyncReader* This, IStream *pStream); void __RPC_STUB IWMSyncReader_OpenStream_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMSyncReader_INTERFACE_DEFINED__ */ /***************************************************************************** * IWMInputMediaProps interface */ #ifndef __IWMInputMediaProps_INTERFACE_DEFINED__ #define __IWMInputMediaProps_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMInputMediaProps, 0x96406bd5, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("96406bd5-2b2b-11d3-b36b-00c04f6108ff") IWMInputMediaProps : public IWMMediaProps { virtual HRESULT STDMETHODCALLTYPE GetConnectionName( WCHAR *pwszName, WORD *pcchName) = 0; virtual HRESULT STDMETHODCALLTYPE GetGroupName( WCHAR *pwszName, WORD *pcchName) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMInputMediaProps, 0x96406bd5, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff) #endif #else typedef struct IWMInputMediaPropsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMInputMediaProps* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMInputMediaProps* This); ULONG (STDMETHODCALLTYPE *Release)( IWMInputMediaProps* This); /*** IWMMediaProps methods ***/ HRESULT (STDMETHODCALLTYPE *GetType)( IWMInputMediaProps* This, GUID *pguidType); HRESULT (STDMETHODCALLTYPE *GetMediaType)( IWMInputMediaProps* This, WM_MEDIA_TYPE *pType, DWORD *pcbType); HRESULT (STDMETHODCALLTYPE *SetMediaType)( IWMInputMediaProps* This, WM_MEDIA_TYPE *pType); /*** IWMInputMediaProps methods ***/ HRESULT (STDMETHODCALLTYPE *GetConnectionName)( IWMInputMediaProps* This, WCHAR *pwszName, WORD *pcchName); HRESULT (STDMETHODCALLTYPE *GetGroupName)( IWMInputMediaProps* This, WCHAR *pwszName, WORD *pcchName); END_INTERFACE } IWMInputMediaPropsVtbl; interface IWMInputMediaProps { CONST_VTBL IWMInputMediaPropsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMInputMediaProps_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMInputMediaProps_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMInputMediaProps_Release(This) (This)->lpVtbl->Release(This) /*** IWMMediaProps methods ***/ #define IWMInputMediaProps_GetType(This,pguidType) (This)->lpVtbl->GetType(This,pguidType) #define IWMInputMediaProps_GetMediaType(This,pType,pcbType) (This)->lpVtbl->GetMediaType(This,pType,pcbType) #define IWMInputMediaProps_SetMediaType(This,pType) (This)->lpVtbl->SetMediaType(This,pType) /*** IWMInputMediaProps methods ***/ #define IWMInputMediaProps_GetConnectionName(This,pwszName,pcchName) (This)->lpVtbl->GetConnectionName(This,pwszName,pcchName) #define IWMInputMediaProps_GetGroupName(This,pwszName,pcchName) (This)->lpVtbl->GetGroupName(This,pwszName,pcchName) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMInputMediaProps_QueryInterface(IWMInputMediaProps* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMInputMediaProps_AddRef(IWMInputMediaProps* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMInputMediaProps_Release(IWMInputMediaProps* This) { return This->lpVtbl->Release(This); } /*** IWMMediaProps methods ***/ static FORCEINLINE HRESULT IWMInputMediaProps_GetType(IWMInputMediaProps* This,GUID *pguidType) { return This->lpVtbl->GetType(This,pguidType); } static FORCEINLINE HRESULT IWMInputMediaProps_GetMediaType(IWMInputMediaProps* This,WM_MEDIA_TYPE *pType,DWORD *pcbType) { return This->lpVtbl->GetMediaType(This,pType,pcbType); } static FORCEINLINE HRESULT IWMInputMediaProps_SetMediaType(IWMInputMediaProps* This,WM_MEDIA_TYPE *pType) { return This->lpVtbl->SetMediaType(This,pType); } /*** IWMInputMediaProps methods ***/ static FORCEINLINE HRESULT IWMInputMediaProps_GetConnectionName(IWMInputMediaProps* This,WCHAR *pwszName,WORD *pcchName) { return This->lpVtbl->GetConnectionName(This,pwszName,pcchName); } static FORCEINLINE HRESULT IWMInputMediaProps_GetGroupName(IWMInputMediaProps* This,WCHAR *pwszName,WORD *pcchName) { return This->lpVtbl->GetGroupName(This,pwszName,pcchName); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMInputMediaProps_GetConnectionName_Proxy( IWMInputMediaProps* This, WCHAR *pwszName, WORD *pcchName); void __RPC_STUB IWMInputMediaProps_GetConnectionName_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMInputMediaProps_GetGroupName_Proxy( IWMInputMediaProps* This, WCHAR *pwszName, WORD *pcchName); void __RPC_STUB IWMInputMediaProps_GetGroupName_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMInputMediaProps_INTERFACE_DEFINED__ */ /***************************************************************************** * IWMWriterSink interface */ #ifndef __IWMWriterSink_INTERFACE_DEFINED__ #define __IWMWriterSink_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMWriterSink, 0x96406be4, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("96406be4-2b2b-11d3-b36b-00c04f6108ff") IWMWriterSink : public IUnknown { virtual HRESULT STDMETHODCALLTYPE OnHeader( INSSBuffer *pHeader) = 0; virtual HRESULT STDMETHODCALLTYPE IsRealTime( WINBOOL *pfRealTime) = 0; virtual HRESULT STDMETHODCALLTYPE AllocateDataUnit( DWORD cbDataUnit, INSSBuffer **ppDataUnit) = 0; virtual HRESULT STDMETHODCALLTYPE OnDataUnit( INSSBuffer *pDataUnit) = 0; virtual HRESULT STDMETHODCALLTYPE OnEndWriting( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMWriterSink, 0x96406be4, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff) #endif #else typedef struct IWMWriterSinkVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMWriterSink* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMWriterSink* This); ULONG (STDMETHODCALLTYPE *Release)( IWMWriterSink* This); /*** IWMWriterSink methods ***/ HRESULT (STDMETHODCALLTYPE *OnHeader)( IWMWriterSink* This, INSSBuffer *pHeader); HRESULT (STDMETHODCALLTYPE *IsRealTime)( IWMWriterSink* This, WINBOOL *pfRealTime); HRESULT (STDMETHODCALLTYPE *AllocateDataUnit)( IWMWriterSink* This, DWORD cbDataUnit, INSSBuffer **ppDataUnit); HRESULT (STDMETHODCALLTYPE *OnDataUnit)( IWMWriterSink* This, INSSBuffer *pDataUnit); HRESULT (STDMETHODCALLTYPE *OnEndWriting)( IWMWriterSink* This); END_INTERFACE } IWMWriterSinkVtbl; interface IWMWriterSink { CONST_VTBL IWMWriterSinkVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMWriterSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMWriterSink_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMWriterSink_Release(This) (This)->lpVtbl->Release(This) /*** IWMWriterSink methods ***/ #define IWMWriterSink_OnHeader(This,pHeader) (This)->lpVtbl->OnHeader(This,pHeader) #define IWMWriterSink_IsRealTime(This,pfRealTime) (This)->lpVtbl->IsRealTime(This,pfRealTime) #define IWMWriterSink_AllocateDataUnit(This,cbDataUnit,ppDataUnit) (This)->lpVtbl->AllocateDataUnit(This,cbDataUnit,ppDataUnit) #define IWMWriterSink_OnDataUnit(This,pDataUnit) (This)->lpVtbl->OnDataUnit(This,pDataUnit) #define IWMWriterSink_OnEndWriting(This) (This)->lpVtbl->OnEndWriting(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMWriterSink_QueryInterface(IWMWriterSink* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMWriterSink_AddRef(IWMWriterSink* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMWriterSink_Release(IWMWriterSink* This) { return This->lpVtbl->Release(This); } /*** IWMWriterSink methods ***/ static FORCEINLINE HRESULT IWMWriterSink_OnHeader(IWMWriterSink* This,INSSBuffer *pHeader) { return This->lpVtbl->OnHeader(This,pHeader); } static FORCEINLINE HRESULT IWMWriterSink_IsRealTime(IWMWriterSink* This,WINBOOL *pfRealTime) { return This->lpVtbl->IsRealTime(This,pfRealTime); } static FORCEINLINE HRESULT IWMWriterSink_AllocateDataUnit(IWMWriterSink* This,DWORD cbDataUnit,INSSBuffer **ppDataUnit) { return This->lpVtbl->AllocateDataUnit(This,cbDataUnit,ppDataUnit); } static FORCEINLINE HRESULT IWMWriterSink_OnDataUnit(IWMWriterSink* This,INSSBuffer *pDataUnit) { return This->lpVtbl->OnDataUnit(This,pDataUnit); } static FORCEINLINE HRESULT IWMWriterSink_OnEndWriting(IWMWriterSink* This) { return This->lpVtbl->OnEndWriting(This); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMWriterSink_OnHeader_Proxy( IWMWriterSink* This, INSSBuffer *pHeader); void __RPC_STUB IWMWriterSink_OnHeader_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriterSink_IsRealTime_Proxy( IWMWriterSink* This, WINBOOL *pfRealTime); void __RPC_STUB IWMWriterSink_IsRealTime_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriterSink_AllocateDataUnit_Proxy( IWMWriterSink* This, DWORD cbDataUnit, INSSBuffer **ppDataUnit); void __RPC_STUB IWMWriterSink_AllocateDataUnit_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriterSink_OnDataUnit_Proxy( IWMWriterSink* This, INSSBuffer *pDataUnit); void __RPC_STUB IWMWriterSink_OnDataUnit_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriterSink_OnEndWriting_Proxy( IWMWriterSink* This); void __RPC_STUB IWMWriterSink_OnEndWriting_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMWriterSink_INTERFACE_DEFINED__ */ /***************************************************************************** * IWMWriter interface */ #ifndef __IWMWriter_INTERFACE_DEFINED__ #define __IWMWriter_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMWriter, 0x96406bd4, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("96406bd4-2b2b-11d3-b36b-00c04f6108ff") IWMWriter : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetProfileByID( REFGUID guidProfile) = 0; virtual HRESULT STDMETHODCALLTYPE SetProfile( IWMProfile *pProfile) = 0; virtual HRESULT STDMETHODCALLTYPE SetOutputFilename( const WCHAR *pwszFilename) = 0; virtual HRESULT STDMETHODCALLTYPE GetInputCount( DWORD *pcInputs) = 0; virtual HRESULT STDMETHODCALLTYPE GetInputProps( DWORD dwInputNum, IWMInputMediaProps **ppInput) = 0; virtual HRESULT STDMETHODCALLTYPE SetInputProps( DWORD dwInputNum, IWMInputMediaProps *pInput) = 0; virtual HRESULT STDMETHODCALLTYPE GetInputFormatCount( DWORD dwInputNumber, DWORD *pcFormats) = 0; virtual HRESULT STDMETHODCALLTYPE GetInputFormat( DWORD dwInputNumber, DWORD dwFormatNumber, IWMInputMediaProps **pProps) = 0; virtual HRESULT STDMETHODCALLTYPE BeginWriting( ) = 0; virtual HRESULT STDMETHODCALLTYPE EndWriting( ) = 0; virtual HRESULT STDMETHODCALLTYPE AllocateSample( DWORD dwSampleSize, INSSBuffer **ppSample) = 0; virtual HRESULT STDMETHODCALLTYPE WriteSample( DWORD dwInputNum, QWORD cnsSampleTime, DWORD dwFlags, INSSBuffer *pSample) = 0; virtual HRESULT STDMETHODCALLTYPE Flush( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMWriter, 0x96406bd4, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff) #endif #else typedef struct IWMWriterVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMWriter* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMWriter* This); ULONG (STDMETHODCALLTYPE *Release)( IWMWriter* This); /*** IWMWriter methods ***/ HRESULT (STDMETHODCALLTYPE *SetProfileByID)( IWMWriter* This, REFGUID guidProfile); HRESULT (STDMETHODCALLTYPE *SetProfile)( IWMWriter* This, IWMProfile *pProfile); HRESULT (STDMETHODCALLTYPE *SetOutputFilename)( IWMWriter* This, const WCHAR *pwszFilename); HRESULT (STDMETHODCALLTYPE *GetInputCount)( IWMWriter* This, DWORD *pcInputs); HRESULT (STDMETHODCALLTYPE *GetInputProps)( IWMWriter* This, DWORD dwInputNum, IWMInputMediaProps **ppInput); HRESULT (STDMETHODCALLTYPE *SetInputProps)( IWMWriter* This, DWORD dwInputNum, IWMInputMediaProps *pInput); HRESULT (STDMETHODCALLTYPE *GetInputFormatCount)( IWMWriter* This, DWORD dwInputNumber, DWORD *pcFormats); HRESULT (STDMETHODCALLTYPE *GetInputFormat)( IWMWriter* This, DWORD dwInputNumber, DWORD dwFormatNumber, IWMInputMediaProps **pProps); HRESULT (STDMETHODCALLTYPE *BeginWriting)( IWMWriter* This); HRESULT (STDMETHODCALLTYPE *EndWriting)( IWMWriter* This); HRESULT (STDMETHODCALLTYPE *AllocateSample)( IWMWriter* This, DWORD dwSampleSize, INSSBuffer **ppSample); HRESULT (STDMETHODCALLTYPE *WriteSample)( IWMWriter* This, DWORD dwInputNum, QWORD cnsSampleTime, DWORD dwFlags, INSSBuffer *pSample); HRESULT (STDMETHODCALLTYPE *Flush)( IWMWriter* This); END_INTERFACE } IWMWriterVtbl; interface IWMWriter { CONST_VTBL IWMWriterVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMWriter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMWriter_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMWriter_Release(This) (This)->lpVtbl->Release(This) /*** IWMWriter methods ***/ #define IWMWriter_SetProfileByID(This,guidProfile) (This)->lpVtbl->SetProfileByID(This,guidProfile) #define IWMWriter_SetProfile(This,pProfile) (This)->lpVtbl->SetProfile(This,pProfile) #define IWMWriter_SetOutputFilename(This,pwszFilename) (This)->lpVtbl->SetOutputFilename(This,pwszFilename) #define IWMWriter_GetInputCount(This,pcInputs) (This)->lpVtbl->GetInputCount(This,pcInputs) #define IWMWriter_GetInputProps(This,dwInputNum,ppInput) (This)->lpVtbl->GetInputProps(This,dwInputNum,ppInput) #define IWMWriter_SetInputProps(This,dwInputNum,pInput) (This)->lpVtbl->SetInputProps(This,dwInputNum,pInput) #define IWMWriter_GetInputFormatCount(This,dwInputNumber,pcFormats) (This)->lpVtbl->GetInputFormatCount(This,dwInputNumber,pcFormats) #define IWMWriter_GetInputFormat(This,dwInputNumber,dwFormatNumber,pProps) (This)->lpVtbl->GetInputFormat(This,dwInputNumber,dwFormatNumber,pProps) #define IWMWriter_BeginWriting(This) (This)->lpVtbl->BeginWriting(This) #define IWMWriter_EndWriting(This) (This)->lpVtbl->EndWriting(This) #define IWMWriter_AllocateSample(This,dwSampleSize,ppSample) (This)->lpVtbl->AllocateSample(This,dwSampleSize,ppSample) #define IWMWriter_WriteSample(This,dwInputNum,cnsSampleTime,dwFlags,pSample) (This)->lpVtbl->WriteSample(This,dwInputNum,cnsSampleTime,dwFlags,pSample) #define IWMWriter_Flush(This) (This)->lpVtbl->Flush(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMWriter_QueryInterface(IWMWriter* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMWriter_AddRef(IWMWriter* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMWriter_Release(IWMWriter* This) { return This->lpVtbl->Release(This); } /*** IWMWriter methods ***/ static FORCEINLINE HRESULT IWMWriter_SetProfileByID(IWMWriter* This,REFGUID guidProfile) { return This->lpVtbl->SetProfileByID(This,guidProfile); } static FORCEINLINE HRESULT IWMWriter_SetProfile(IWMWriter* This,IWMProfile *pProfile) { return This->lpVtbl->SetProfile(This,pProfile); } static FORCEINLINE HRESULT IWMWriter_SetOutputFilename(IWMWriter* This,const WCHAR *pwszFilename) { return This->lpVtbl->SetOutputFilename(This,pwszFilename); } static FORCEINLINE HRESULT IWMWriter_GetInputCount(IWMWriter* This,DWORD *pcInputs) { return This->lpVtbl->GetInputCount(This,pcInputs); } static FORCEINLINE HRESULT IWMWriter_GetInputProps(IWMWriter* This,DWORD dwInputNum,IWMInputMediaProps **ppInput) { return This->lpVtbl->GetInputProps(This,dwInputNum,ppInput); } static FORCEINLINE HRESULT IWMWriter_SetInputProps(IWMWriter* This,DWORD dwInputNum,IWMInputMediaProps *pInput) { return This->lpVtbl->SetInputProps(This,dwInputNum,pInput); } static FORCEINLINE HRESULT IWMWriter_GetInputFormatCount(IWMWriter* This,DWORD dwInputNumber,DWORD *pcFormats) { return This->lpVtbl->GetInputFormatCount(This,dwInputNumber,pcFormats); } static FORCEINLINE HRESULT IWMWriter_GetInputFormat(IWMWriter* This,DWORD dwInputNumber,DWORD dwFormatNumber,IWMInputMediaProps **pProps) { return This->lpVtbl->GetInputFormat(This,dwInputNumber,dwFormatNumber,pProps); } static FORCEINLINE HRESULT IWMWriter_BeginWriting(IWMWriter* This) { return This->lpVtbl->BeginWriting(This); } static FORCEINLINE HRESULT IWMWriter_EndWriting(IWMWriter* This) { return This->lpVtbl->EndWriting(This); } static FORCEINLINE HRESULT IWMWriter_AllocateSample(IWMWriter* This,DWORD dwSampleSize,INSSBuffer **ppSample) { return This->lpVtbl->AllocateSample(This,dwSampleSize,ppSample); } static FORCEINLINE HRESULT IWMWriter_WriteSample(IWMWriter* This,DWORD dwInputNum,QWORD cnsSampleTime,DWORD dwFlags,INSSBuffer *pSample) { return This->lpVtbl->WriteSample(This,dwInputNum,cnsSampleTime,dwFlags,pSample); } static FORCEINLINE HRESULT IWMWriter_Flush(IWMWriter* This) { return This->lpVtbl->Flush(This); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMWriter_SetProfileByID_Proxy( IWMWriter* This, REFGUID guidProfile); void __RPC_STUB IWMWriter_SetProfileByID_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriter_SetProfile_Proxy( IWMWriter* This, IWMProfile *pProfile); void __RPC_STUB IWMWriter_SetProfile_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriter_SetOutputFilename_Proxy( IWMWriter* This, const WCHAR *pwszFilename); void __RPC_STUB IWMWriter_SetOutputFilename_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriter_GetInputCount_Proxy( IWMWriter* This, DWORD *pcInputs); void __RPC_STUB IWMWriter_GetInputCount_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriter_GetInputProps_Proxy( IWMWriter* This, DWORD dwInputNum, IWMInputMediaProps **ppInput); void __RPC_STUB IWMWriter_GetInputProps_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriter_SetInputProps_Proxy( IWMWriter* This, DWORD dwInputNum, IWMInputMediaProps *pInput); void __RPC_STUB IWMWriter_SetInputProps_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriter_GetInputFormatCount_Proxy( IWMWriter* This, DWORD dwInputNumber, DWORD *pcFormats); void __RPC_STUB IWMWriter_GetInputFormatCount_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriter_GetInputFormat_Proxy( IWMWriter* This, DWORD dwInputNumber, DWORD dwFormatNumber, IWMInputMediaProps **pProps); void __RPC_STUB IWMWriter_GetInputFormat_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriter_BeginWriting_Proxy( IWMWriter* This); void __RPC_STUB IWMWriter_BeginWriting_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriter_EndWriting_Proxy( IWMWriter* This); void __RPC_STUB IWMWriter_EndWriting_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriter_AllocateSample_Proxy( IWMWriter* This, DWORD dwSampleSize, INSSBuffer **ppSample); void __RPC_STUB IWMWriter_AllocateSample_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriter_WriteSample_Proxy( IWMWriter* This, DWORD dwInputNum, QWORD cnsSampleTime, DWORD dwFlags, INSSBuffer *pSample); void __RPC_STUB IWMWriter_WriteSample_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriter_Flush_Proxy( IWMWriter* This); void __RPC_STUB IWMWriter_Flush_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMWriter_INTERFACE_DEFINED__ */ /***************************************************************************** * IWMWriterAdvanced interface */ #ifndef __IWMWriterAdvanced_INTERFACE_DEFINED__ #define __IWMWriterAdvanced_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMWriterAdvanced, 0x96406be3, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("96406be3-2b2b-11d3-b36b-00c04f6108ff") IWMWriterAdvanced : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetSinkCount( DWORD *pcSinks) = 0; virtual HRESULT STDMETHODCALLTYPE GetSink( DWORD dwSinkNum, IWMWriterSink **ppSink) = 0; virtual HRESULT STDMETHODCALLTYPE AddSink( IWMWriterSink *pSink) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveSink( IWMWriterSink *pSink) = 0; virtual HRESULT STDMETHODCALLTYPE WriteStreamSample( WORD wStreamNum, QWORD cnsSampleTime, DWORD msSampleSendTime, QWORD cnsSampleDuration, DWORD dwFlags, INSSBuffer *pSample) = 0; virtual HRESULT STDMETHODCALLTYPE SetLiveSource( WINBOOL fIsLiveSource) = 0; virtual HRESULT STDMETHODCALLTYPE IsRealTime( WINBOOL *pfRealTime) = 0; virtual HRESULT STDMETHODCALLTYPE GetWriterTime( QWORD *pCurrentTime) = 0; virtual HRESULT STDMETHODCALLTYPE GetStatistics( WORD wStreamNum, WM_WRITER_STATISTICS *pStats) = 0; virtual HRESULT STDMETHODCALLTYPE SetSyncTolerance( DWORD msWindow) = 0; virtual HRESULT STDMETHODCALLTYPE GetSyncTolerance( DWORD *pmsWindow) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMWriterAdvanced, 0x96406be3, 0x2b2b, 0x11d3, 0xb3,0x6b, 0x00,0xc0,0x4f,0x61,0x08,0xff) #endif #else typedef struct IWMWriterAdvancedVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMWriterAdvanced* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMWriterAdvanced* This); ULONG (STDMETHODCALLTYPE *Release)( IWMWriterAdvanced* This); /*** IWMWriterAdvanced methods ***/ HRESULT (STDMETHODCALLTYPE *GetSinkCount)( IWMWriterAdvanced* This, DWORD *pcSinks); HRESULT (STDMETHODCALLTYPE *GetSink)( IWMWriterAdvanced* This, DWORD dwSinkNum, IWMWriterSink **ppSink); HRESULT (STDMETHODCALLTYPE *AddSink)( IWMWriterAdvanced* This, IWMWriterSink *pSink); HRESULT (STDMETHODCALLTYPE *RemoveSink)( IWMWriterAdvanced* This, IWMWriterSink *pSink); HRESULT (STDMETHODCALLTYPE *WriteStreamSample)( IWMWriterAdvanced* This, WORD wStreamNum, QWORD cnsSampleTime, DWORD msSampleSendTime, QWORD cnsSampleDuration, DWORD dwFlags, INSSBuffer *pSample); HRESULT (STDMETHODCALLTYPE *SetLiveSource)( IWMWriterAdvanced* This, WINBOOL fIsLiveSource); HRESULT (STDMETHODCALLTYPE *IsRealTime)( IWMWriterAdvanced* This, WINBOOL *pfRealTime); HRESULT (STDMETHODCALLTYPE *GetWriterTime)( IWMWriterAdvanced* This, QWORD *pCurrentTime); HRESULT (STDMETHODCALLTYPE *GetStatistics)( IWMWriterAdvanced* This, WORD wStreamNum, WM_WRITER_STATISTICS *pStats); HRESULT (STDMETHODCALLTYPE *SetSyncTolerance)( IWMWriterAdvanced* This, DWORD msWindow); HRESULT (STDMETHODCALLTYPE *GetSyncTolerance)( IWMWriterAdvanced* This, DWORD *pmsWindow); END_INTERFACE } IWMWriterAdvancedVtbl; interface IWMWriterAdvanced { CONST_VTBL IWMWriterAdvancedVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMWriterAdvanced_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMWriterAdvanced_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMWriterAdvanced_Release(This) (This)->lpVtbl->Release(This) /*** IWMWriterAdvanced methods ***/ #define IWMWriterAdvanced_GetSinkCount(This,pcSinks) (This)->lpVtbl->GetSinkCount(This,pcSinks) #define IWMWriterAdvanced_GetSink(This,dwSinkNum,ppSink) (This)->lpVtbl->GetSink(This,dwSinkNum,ppSink) #define IWMWriterAdvanced_AddSink(This,pSink) (This)->lpVtbl->AddSink(This,pSink) #define IWMWriterAdvanced_RemoveSink(This,pSink) (This)->lpVtbl->RemoveSink(This,pSink) #define IWMWriterAdvanced_WriteStreamSample(This,wStreamNum,cnsSampleTime,msSampleSendTime,cnsSampleDuration,dwFlags,pSample) (This)->lpVtbl->WriteStreamSample(This,wStreamNum,cnsSampleTime,msSampleSendTime,cnsSampleDuration,dwFlags,pSample) #define IWMWriterAdvanced_SetLiveSource(This,fIsLiveSource) (This)->lpVtbl->SetLiveSource(This,fIsLiveSource) #define IWMWriterAdvanced_IsRealTime(This,pfRealTime) (This)->lpVtbl->IsRealTime(This,pfRealTime) #define IWMWriterAdvanced_GetWriterTime(This,pCurrentTime) (This)->lpVtbl->GetWriterTime(This,pCurrentTime) #define IWMWriterAdvanced_GetStatistics(This,wStreamNum,pStats) (This)->lpVtbl->GetStatistics(This,wStreamNum,pStats) #define IWMWriterAdvanced_SetSyncTolerance(This,msWindow) (This)->lpVtbl->SetSyncTolerance(This,msWindow) #define IWMWriterAdvanced_GetSyncTolerance(This,pmsWindow) (This)->lpVtbl->GetSyncTolerance(This,pmsWindow) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMWriterAdvanced_QueryInterface(IWMWriterAdvanced* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMWriterAdvanced_AddRef(IWMWriterAdvanced* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMWriterAdvanced_Release(IWMWriterAdvanced* This) { return This->lpVtbl->Release(This); } /*** IWMWriterAdvanced methods ***/ static FORCEINLINE HRESULT IWMWriterAdvanced_GetSinkCount(IWMWriterAdvanced* This,DWORD *pcSinks) { return This->lpVtbl->GetSinkCount(This,pcSinks); } static FORCEINLINE HRESULT IWMWriterAdvanced_GetSink(IWMWriterAdvanced* This,DWORD dwSinkNum,IWMWriterSink **ppSink) { return This->lpVtbl->GetSink(This,dwSinkNum,ppSink); } static FORCEINLINE HRESULT IWMWriterAdvanced_AddSink(IWMWriterAdvanced* This,IWMWriterSink *pSink) { return This->lpVtbl->AddSink(This,pSink); } static FORCEINLINE HRESULT IWMWriterAdvanced_RemoveSink(IWMWriterAdvanced* This,IWMWriterSink *pSink) { return This->lpVtbl->RemoveSink(This,pSink); } static FORCEINLINE HRESULT IWMWriterAdvanced_WriteStreamSample(IWMWriterAdvanced* This,WORD wStreamNum,QWORD cnsSampleTime,DWORD msSampleSendTime,QWORD cnsSampleDuration,DWORD dwFlags,INSSBuffer *pSample) { return This->lpVtbl->WriteStreamSample(This,wStreamNum,cnsSampleTime,msSampleSendTime,cnsSampleDuration,dwFlags,pSample); } static FORCEINLINE HRESULT IWMWriterAdvanced_SetLiveSource(IWMWriterAdvanced* This,WINBOOL fIsLiveSource) { return This->lpVtbl->SetLiveSource(This,fIsLiveSource); } static FORCEINLINE HRESULT IWMWriterAdvanced_IsRealTime(IWMWriterAdvanced* This,WINBOOL *pfRealTime) { return This->lpVtbl->IsRealTime(This,pfRealTime); } static FORCEINLINE HRESULT IWMWriterAdvanced_GetWriterTime(IWMWriterAdvanced* This,QWORD *pCurrentTime) { return This->lpVtbl->GetWriterTime(This,pCurrentTime); } static FORCEINLINE HRESULT IWMWriterAdvanced_GetStatistics(IWMWriterAdvanced* This,WORD wStreamNum,WM_WRITER_STATISTICS *pStats) { return This->lpVtbl->GetStatistics(This,wStreamNum,pStats); } static FORCEINLINE HRESULT IWMWriterAdvanced_SetSyncTolerance(IWMWriterAdvanced* This,DWORD msWindow) { return This->lpVtbl->SetSyncTolerance(This,msWindow); } static FORCEINLINE HRESULT IWMWriterAdvanced_GetSyncTolerance(IWMWriterAdvanced* This,DWORD *pmsWindow) { return This->lpVtbl->GetSyncTolerance(This,pmsWindow); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMWriterAdvanced_GetSinkCount_Proxy( IWMWriterAdvanced* This, DWORD *pcSinks); void __RPC_STUB IWMWriterAdvanced_GetSinkCount_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriterAdvanced_GetSink_Proxy( IWMWriterAdvanced* This, DWORD dwSinkNum, IWMWriterSink **ppSink); void __RPC_STUB IWMWriterAdvanced_GetSink_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriterAdvanced_AddSink_Proxy( IWMWriterAdvanced* This, IWMWriterSink *pSink); void __RPC_STUB IWMWriterAdvanced_AddSink_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriterAdvanced_RemoveSink_Proxy( IWMWriterAdvanced* This, IWMWriterSink *pSink); void __RPC_STUB IWMWriterAdvanced_RemoveSink_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriterAdvanced_WriteStreamSample_Proxy( IWMWriterAdvanced* This, WORD wStreamNum, QWORD cnsSampleTime, DWORD msSampleSendTime, QWORD cnsSampleDuration, DWORD dwFlags, INSSBuffer *pSample); void __RPC_STUB IWMWriterAdvanced_WriteStreamSample_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriterAdvanced_SetLiveSource_Proxy( IWMWriterAdvanced* This, WINBOOL fIsLiveSource); void __RPC_STUB IWMWriterAdvanced_SetLiveSource_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriterAdvanced_IsRealTime_Proxy( IWMWriterAdvanced* This, WINBOOL *pfRealTime); void __RPC_STUB IWMWriterAdvanced_IsRealTime_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriterAdvanced_GetWriterTime_Proxy( IWMWriterAdvanced* This, QWORD *pCurrentTime); void __RPC_STUB IWMWriterAdvanced_GetWriterTime_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriterAdvanced_GetStatistics_Proxy( IWMWriterAdvanced* This, WORD wStreamNum, WM_WRITER_STATISTICS *pStats); void __RPC_STUB IWMWriterAdvanced_GetStatistics_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriterAdvanced_SetSyncTolerance_Proxy( IWMWriterAdvanced* This, DWORD msWindow); void __RPC_STUB IWMWriterAdvanced_SetSyncTolerance_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriterAdvanced_GetSyncTolerance_Proxy( IWMWriterAdvanced* This, DWORD *pmsWindow); void __RPC_STUB IWMWriterAdvanced_GetSyncTolerance_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMWriterAdvanced_INTERFACE_DEFINED__ */ /***************************************************************************** * IWMWriterAdvanced2 interface */ #ifndef __IWMWriterAdvanced2_INTERFACE_DEFINED__ #define __IWMWriterAdvanced2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMWriterAdvanced2, 0x962dc1ec, 0xc046, 0x4db8, 0x9c,0xc7, 0x26,0xce,0xae,0x50,0x08,0x17); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("962dc1ec-c046-4db8-9cc7-26ceae500817") IWMWriterAdvanced2 : public IWMWriterAdvanced { virtual HRESULT STDMETHODCALLTYPE GetInputSetting( DWORD dwInputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE *pType, BYTE *pValue, WORD *pcbLength) = 0; virtual HRESULT STDMETHODCALLTYPE SetInputSetting( DWORD dwInputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE Type, const BYTE *pValue, WORD cbLength) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMWriterAdvanced2, 0x962dc1ec, 0xc046, 0x4db8, 0x9c,0xc7, 0x26,0xce,0xae,0x50,0x08,0x17) #endif #else typedef struct IWMWriterAdvanced2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMWriterAdvanced2* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMWriterAdvanced2* This); ULONG (STDMETHODCALLTYPE *Release)( IWMWriterAdvanced2* This); /*** IWMWriterAdvanced methods ***/ HRESULT (STDMETHODCALLTYPE *GetSinkCount)( IWMWriterAdvanced2* This, DWORD *pcSinks); HRESULT (STDMETHODCALLTYPE *GetSink)( IWMWriterAdvanced2* This, DWORD dwSinkNum, IWMWriterSink **ppSink); HRESULT (STDMETHODCALLTYPE *AddSink)( IWMWriterAdvanced2* This, IWMWriterSink *pSink); HRESULT (STDMETHODCALLTYPE *RemoveSink)( IWMWriterAdvanced2* This, IWMWriterSink *pSink); HRESULT (STDMETHODCALLTYPE *WriteStreamSample)( IWMWriterAdvanced2* This, WORD wStreamNum, QWORD cnsSampleTime, DWORD msSampleSendTime, QWORD cnsSampleDuration, DWORD dwFlags, INSSBuffer *pSample); HRESULT (STDMETHODCALLTYPE *SetLiveSource)( IWMWriterAdvanced2* This, WINBOOL fIsLiveSource); HRESULT (STDMETHODCALLTYPE *IsRealTime)( IWMWriterAdvanced2* This, WINBOOL *pfRealTime); HRESULT (STDMETHODCALLTYPE *GetWriterTime)( IWMWriterAdvanced2* This, QWORD *pCurrentTime); HRESULT (STDMETHODCALLTYPE *GetStatistics)( IWMWriterAdvanced2* This, WORD wStreamNum, WM_WRITER_STATISTICS *pStats); HRESULT (STDMETHODCALLTYPE *SetSyncTolerance)( IWMWriterAdvanced2* This, DWORD msWindow); HRESULT (STDMETHODCALLTYPE *GetSyncTolerance)( IWMWriterAdvanced2* This, DWORD *pmsWindow); /*** IWMWriterAdvanced2 methods ***/ HRESULT (STDMETHODCALLTYPE *GetInputSetting)( IWMWriterAdvanced2* This, DWORD dwInputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE *pType, BYTE *pValue, WORD *pcbLength); HRESULT (STDMETHODCALLTYPE *SetInputSetting)( IWMWriterAdvanced2* This, DWORD dwInputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE Type, const BYTE *pValue, WORD cbLength); END_INTERFACE } IWMWriterAdvanced2Vtbl; interface IWMWriterAdvanced2 { CONST_VTBL IWMWriterAdvanced2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMWriterAdvanced2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMWriterAdvanced2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMWriterAdvanced2_Release(This) (This)->lpVtbl->Release(This) /*** IWMWriterAdvanced methods ***/ #define IWMWriterAdvanced2_GetSinkCount(This,pcSinks) (This)->lpVtbl->GetSinkCount(This,pcSinks) #define IWMWriterAdvanced2_GetSink(This,dwSinkNum,ppSink) (This)->lpVtbl->GetSink(This,dwSinkNum,ppSink) #define IWMWriterAdvanced2_AddSink(This,pSink) (This)->lpVtbl->AddSink(This,pSink) #define IWMWriterAdvanced2_RemoveSink(This,pSink) (This)->lpVtbl->RemoveSink(This,pSink) #define IWMWriterAdvanced2_WriteStreamSample(This,wStreamNum,cnsSampleTime,msSampleSendTime,cnsSampleDuration,dwFlags,pSample) (This)->lpVtbl->WriteStreamSample(This,wStreamNum,cnsSampleTime,msSampleSendTime,cnsSampleDuration,dwFlags,pSample) #define IWMWriterAdvanced2_SetLiveSource(This,fIsLiveSource) (This)->lpVtbl->SetLiveSource(This,fIsLiveSource) #define IWMWriterAdvanced2_IsRealTime(This,pfRealTime) (This)->lpVtbl->IsRealTime(This,pfRealTime) #define IWMWriterAdvanced2_GetWriterTime(This,pCurrentTime) (This)->lpVtbl->GetWriterTime(This,pCurrentTime) #define IWMWriterAdvanced2_GetStatistics(This,wStreamNum,pStats) (This)->lpVtbl->GetStatistics(This,wStreamNum,pStats) #define IWMWriterAdvanced2_SetSyncTolerance(This,msWindow) (This)->lpVtbl->SetSyncTolerance(This,msWindow) #define IWMWriterAdvanced2_GetSyncTolerance(This,pmsWindow) (This)->lpVtbl->GetSyncTolerance(This,pmsWindow) /*** IWMWriterAdvanced2 methods ***/ #define IWMWriterAdvanced2_GetInputSetting(This,dwInputNum,pszName,pType,pValue,pcbLength) (This)->lpVtbl->GetInputSetting(This,dwInputNum,pszName,pType,pValue,pcbLength) #define IWMWriterAdvanced2_SetInputSetting(This,dwInputNum,pszName,Type,pValue,cbLength) (This)->lpVtbl->SetInputSetting(This,dwInputNum,pszName,Type,pValue,cbLength) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMWriterAdvanced2_QueryInterface(IWMWriterAdvanced2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMWriterAdvanced2_AddRef(IWMWriterAdvanced2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMWriterAdvanced2_Release(IWMWriterAdvanced2* This) { return This->lpVtbl->Release(This); } /*** IWMWriterAdvanced methods ***/ static FORCEINLINE HRESULT IWMWriterAdvanced2_GetSinkCount(IWMWriterAdvanced2* This,DWORD *pcSinks) { return This->lpVtbl->GetSinkCount(This,pcSinks); } static FORCEINLINE HRESULT IWMWriterAdvanced2_GetSink(IWMWriterAdvanced2* This,DWORD dwSinkNum,IWMWriterSink **ppSink) { return This->lpVtbl->GetSink(This,dwSinkNum,ppSink); } static FORCEINLINE HRESULT IWMWriterAdvanced2_AddSink(IWMWriterAdvanced2* This,IWMWriterSink *pSink) { return This->lpVtbl->AddSink(This,pSink); } static FORCEINLINE HRESULT IWMWriterAdvanced2_RemoveSink(IWMWriterAdvanced2* This,IWMWriterSink *pSink) { return This->lpVtbl->RemoveSink(This,pSink); } static FORCEINLINE HRESULT IWMWriterAdvanced2_WriteStreamSample(IWMWriterAdvanced2* This,WORD wStreamNum,QWORD cnsSampleTime,DWORD msSampleSendTime,QWORD cnsSampleDuration,DWORD dwFlags,INSSBuffer *pSample) { return This->lpVtbl->WriteStreamSample(This,wStreamNum,cnsSampleTime,msSampleSendTime,cnsSampleDuration,dwFlags,pSample); } static FORCEINLINE HRESULT IWMWriterAdvanced2_SetLiveSource(IWMWriterAdvanced2* This,WINBOOL fIsLiveSource) { return This->lpVtbl->SetLiveSource(This,fIsLiveSource); } static FORCEINLINE HRESULT IWMWriterAdvanced2_IsRealTime(IWMWriterAdvanced2* This,WINBOOL *pfRealTime) { return This->lpVtbl->IsRealTime(This,pfRealTime); } static FORCEINLINE HRESULT IWMWriterAdvanced2_GetWriterTime(IWMWriterAdvanced2* This,QWORD *pCurrentTime) { return This->lpVtbl->GetWriterTime(This,pCurrentTime); } static FORCEINLINE HRESULT IWMWriterAdvanced2_GetStatistics(IWMWriterAdvanced2* This,WORD wStreamNum,WM_WRITER_STATISTICS *pStats) { return This->lpVtbl->GetStatistics(This,wStreamNum,pStats); } static FORCEINLINE HRESULT IWMWriterAdvanced2_SetSyncTolerance(IWMWriterAdvanced2* This,DWORD msWindow) { return This->lpVtbl->SetSyncTolerance(This,msWindow); } static FORCEINLINE HRESULT IWMWriterAdvanced2_GetSyncTolerance(IWMWriterAdvanced2* This,DWORD *pmsWindow) { return This->lpVtbl->GetSyncTolerance(This,pmsWindow); } /*** IWMWriterAdvanced2 methods ***/ static FORCEINLINE HRESULT IWMWriterAdvanced2_GetInputSetting(IWMWriterAdvanced2* This,DWORD dwInputNum,LPCWSTR pszName,WMT_ATTR_DATATYPE *pType,BYTE *pValue,WORD *pcbLength) { return This->lpVtbl->GetInputSetting(This,dwInputNum,pszName,pType,pValue,pcbLength); } static FORCEINLINE HRESULT IWMWriterAdvanced2_SetInputSetting(IWMWriterAdvanced2* This,DWORD dwInputNum,LPCWSTR pszName,WMT_ATTR_DATATYPE Type,const BYTE *pValue,WORD cbLength) { return This->lpVtbl->SetInputSetting(This,dwInputNum,pszName,Type,pValue,cbLength); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMWriterAdvanced2_GetInputSetting_Proxy( IWMWriterAdvanced2* This, DWORD dwInputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE *pType, BYTE *pValue, WORD *pcbLength); void __RPC_STUB IWMWriterAdvanced2_GetInputSetting_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriterAdvanced2_SetInputSetting_Proxy( IWMWriterAdvanced2* This, DWORD dwInputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE Type, const BYTE *pValue, WORD cbLength); void __RPC_STUB IWMWriterAdvanced2_SetInputSetting_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMWriterAdvanced2_INTERFACE_DEFINED__ */ /***************************************************************************** * IWMWriterAdvanced3 interface */ #ifndef __IWMWriterAdvanced3_INTERFACE_DEFINED__ #define __IWMWriterAdvanced3_INTERFACE_DEFINED__ DEFINE_GUID(IID_IWMWriterAdvanced3, 0x2cd6492d, 0x7c37, 0x4e76, 0x9d,0x3b, 0x59,0x26,0x11,0x83,0xa2,0x2e); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("2cd6492d-7c37-4e76-9d3b-59261183a22e") IWMWriterAdvanced3 : public IWMWriterAdvanced2 { virtual HRESULT STDMETHODCALLTYPE GetStatisticsEx( WORD wStreamNum, WM_WRITER_STATISTICS_EX *pStats) = 0; virtual HRESULT STDMETHODCALLTYPE SetNonBlocking( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IWMWriterAdvanced3, 0x2cd6492d, 0x7c37, 0x4e76, 0x9d,0x3b, 0x59,0x26,0x11,0x83,0xa2,0x2e) #endif #else typedef struct IWMWriterAdvanced3Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IWMWriterAdvanced3* This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IWMWriterAdvanced3* This); ULONG (STDMETHODCALLTYPE *Release)( IWMWriterAdvanced3* This); /*** IWMWriterAdvanced methods ***/ HRESULT (STDMETHODCALLTYPE *GetSinkCount)( IWMWriterAdvanced3* This, DWORD *pcSinks); HRESULT (STDMETHODCALLTYPE *GetSink)( IWMWriterAdvanced3* This, DWORD dwSinkNum, IWMWriterSink **ppSink); HRESULT (STDMETHODCALLTYPE *AddSink)( IWMWriterAdvanced3* This, IWMWriterSink *pSink); HRESULT (STDMETHODCALLTYPE *RemoveSink)( IWMWriterAdvanced3* This, IWMWriterSink *pSink); HRESULT (STDMETHODCALLTYPE *WriteStreamSample)( IWMWriterAdvanced3* This, WORD wStreamNum, QWORD cnsSampleTime, DWORD msSampleSendTime, QWORD cnsSampleDuration, DWORD dwFlags, INSSBuffer *pSample); HRESULT (STDMETHODCALLTYPE *SetLiveSource)( IWMWriterAdvanced3* This, WINBOOL fIsLiveSource); HRESULT (STDMETHODCALLTYPE *IsRealTime)( IWMWriterAdvanced3* This, WINBOOL *pfRealTime); HRESULT (STDMETHODCALLTYPE *GetWriterTime)( IWMWriterAdvanced3* This, QWORD *pCurrentTime); HRESULT (STDMETHODCALLTYPE *GetStatistics)( IWMWriterAdvanced3* This, WORD wStreamNum, WM_WRITER_STATISTICS *pStats); HRESULT (STDMETHODCALLTYPE *SetSyncTolerance)( IWMWriterAdvanced3* This, DWORD msWindow); HRESULT (STDMETHODCALLTYPE *GetSyncTolerance)( IWMWriterAdvanced3* This, DWORD *pmsWindow); /*** IWMWriterAdvanced2 methods ***/ HRESULT (STDMETHODCALLTYPE *GetInputSetting)( IWMWriterAdvanced3* This, DWORD dwInputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE *pType, BYTE *pValue, WORD *pcbLength); HRESULT (STDMETHODCALLTYPE *SetInputSetting)( IWMWriterAdvanced3* This, DWORD dwInputNum, LPCWSTR pszName, WMT_ATTR_DATATYPE Type, const BYTE *pValue, WORD cbLength); /*** IWMWriterAdvanced3 methods ***/ HRESULT (STDMETHODCALLTYPE *GetStatisticsEx)( IWMWriterAdvanced3* This, WORD wStreamNum, WM_WRITER_STATISTICS_EX *pStats); HRESULT (STDMETHODCALLTYPE *SetNonBlocking)( IWMWriterAdvanced3* This); END_INTERFACE } IWMWriterAdvanced3Vtbl; interface IWMWriterAdvanced3 { CONST_VTBL IWMWriterAdvanced3Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IWMWriterAdvanced3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IWMWriterAdvanced3_AddRef(This) (This)->lpVtbl->AddRef(This) #define IWMWriterAdvanced3_Release(This) (This)->lpVtbl->Release(This) /*** IWMWriterAdvanced methods ***/ #define IWMWriterAdvanced3_GetSinkCount(This,pcSinks) (This)->lpVtbl->GetSinkCount(This,pcSinks) #define IWMWriterAdvanced3_GetSink(This,dwSinkNum,ppSink) (This)->lpVtbl->GetSink(This,dwSinkNum,ppSink) #define IWMWriterAdvanced3_AddSink(This,pSink) (This)->lpVtbl->AddSink(This,pSink) #define IWMWriterAdvanced3_RemoveSink(This,pSink) (This)->lpVtbl->RemoveSink(This,pSink) #define IWMWriterAdvanced3_WriteStreamSample(This,wStreamNum,cnsSampleTime,msSampleSendTime,cnsSampleDuration,dwFlags,pSample) (This)->lpVtbl->WriteStreamSample(This,wStreamNum,cnsSampleTime,msSampleSendTime,cnsSampleDuration,dwFlags,pSample) #define IWMWriterAdvanced3_SetLiveSource(This,fIsLiveSource) (This)->lpVtbl->SetLiveSource(This,fIsLiveSource) #define IWMWriterAdvanced3_IsRealTime(This,pfRealTime) (This)->lpVtbl->IsRealTime(This,pfRealTime) #define IWMWriterAdvanced3_GetWriterTime(This,pCurrentTime) (This)->lpVtbl->GetWriterTime(This,pCurrentTime) #define IWMWriterAdvanced3_GetStatistics(This,wStreamNum,pStats) (This)->lpVtbl->GetStatistics(This,wStreamNum,pStats) #define IWMWriterAdvanced3_SetSyncTolerance(This,msWindow) (This)->lpVtbl->SetSyncTolerance(This,msWindow) #define IWMWriterAdvanced3_GetSyncTolerance(This,pmsWindow) (This)->lpVtbl->GetSyncTolerance(This,pmsWindow) /*** IWMWriterAdvanced2 methods ***/ #define IWMWriterAdvanced3_GetInputSetting(This,dwInputNum,pszName,pType,pValue,pcbLength) (This)->lpVtbl->GetInputSetting(This,dwInputNum,pszName,pType,pValue,pcbLength) #define IWMWriterAdvanced3_SetInputSetting(This,dwInputNum,pszName,Type,pValue,cbLength) (This)->lpVtbl->SetInputSetting(This,dwInputNum,pszName,Type,pValue,cbLength) /*** IWMWriterAdvanced3 methods ***/ #define IWMWriterAdvanced3_GetStatisticsEx(This,wStreamNum,pStats) (This)->lpVtbl->GetStatisticsEx(This,wStreamNum,pStats) #define IWMWriterAdvanced3_SetNonBlocking(This) (This)->lpVtbl->SetNonBlocking(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IWMWriterAdvanced3_QueryInterface(IWMWriterAdvanced3* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IWMWriterAdvanced3_AddRef(IWMWriterAdvanced3* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IWMWriterAdvanced3_Release(IWMWriterAdvanced3* This) { return This->lpVtbl->Release(This); } /*** IWMWriterAdvanced methods ***/ static FORCEINLINE HRESULT IWMWriterAdvanced3_GetSinkCount(IWMWriterAdvanced3* This,DWORD *pcSinks) { return This->lpVtbl->GetSinkCount(This,pcSinks); } static FORCEINLINE HRESULT IWMWriterAdvanced3_GetSink(IWMWriterAdvanced3* This,DWORD dwSinkNum,IWMWriterSink **ppSink) { return This->lpVtbl->GetSink(This,dwSinkNum,ppSink); } static FORCEINLINE HRESULT IWMWriterAdvanced3_AddSink(IWMWriterAdvanced3* This,IWMWriterSink *pSink) { return This->lpVtbl->AddSink(This,pSink); } static FORCEINLINE HRESULT IWMWriterAdvanced3_RemoveSink(IWMWriterAdvanced3* This,IWMWriterSink *pSink) { return This->lpVtbl->RemoveSink(This,pSink); } static FORCEINLINE HRESULT IWMWriterAdvanced3_WriteStreamSample(IWMWriterAdvanced3* This,WORD wStreamNum,QWORD cnsSampleTime,DWORD msSampleSendTime,QWORD cnsSampleDuration,DWORD dwFlags,INSSBuffer *pSample) { return This->lpVtbl->WriteStreamSample(This,wStreamNum,cnsSampleTime,msSampleSendTime,cnsSampleDuration,dwFlags,pSample); } static FORCEINLINE HRESULT IWMWriterAdvanced3_SetLiveSource(IWMWriterAdvanced3* This,WINBOOL fIsLiveSource) { return This->lpVtbl->SetLiveSource(This,fIsLiveSource); } static FORCEINLINE HRESULT IWMWriterAdvanced3_IsRealTime(IWMWriterAdvanced3* This,WINBOOL *pfRealTime) { return This->lpVtbl->IsRealTime(This,pfRealTime); } static FORCEINLINE HRESULT IWMWriterAdvanced3_GetWriterTime(IWMWriterAdvanced3* This,QWORD *pCurrentTime) { return This->lpVtbl->GetWriterTime(This,pCurrentTime); } static FORCEINLINE HRESULT IWMWriterAdvanced3_GetStatistics(IWMWriterAdvanced3* This,WORD wStreamNum,WM_WRITER_STATISTICS *pStats) { return This->lpVtbl->GetStatistics(This,wStreamNum,pStats); } static FORCEINLINE HRESULT IWMWriterAdvanced3_SetSyncTolerance(IWMWriterAdvanced3* This,DWORD msWindow) { return This->lpVtbl->SetSyncTolerance(This,msWindow); } static FORCEINLINE HRESULT IWMWriterAdvanced3_GetSyncTolerance(IWMWriterAdvanced3* This,DWORD *pmsWindow) { return This->lpVtbl->GetSyncTolerance(This,pmsWindow); } /*** IWMWriterAdvanced2 methods ***/ static FORCEINLINE HRESULT IWMWriterAdvanced3_GetInputSetting(IWMWriterAdvanced3* This,DWORD dwInputNum,LPCWSTR pszName,WMT_ATTR_DATATYPE *pType,BYTE *pValue,WORD *pcbLength) { return This->lpVtbl->GetInputSetting(This,dwInputNum,pszName,pType,pValue,pcbLength); } static FORCEINLINE HRESULT IWMWriterAdvanced3_SetInputSetting(IWMWriterAdvanced3* This,DWORD dwInputNum,LPCWSTR pszName,WMT_ATTR_DATATYPE Type,const BYTE *pValue,WORD cbLength) { return This->lpVtbl->SetInputSetting(This,dwInputNum,pszName,Type,pValue,cbLength); } /*** IWMWriterAdvanced3 methods ***/ static FORCEINLINE HRESULT IWMWriterAdvanced3_GetStatisticsEx(IWMWriterAdvanced3* This,WORD wStreamNum,WM_WRITER_STATISTICS_EX *pStats) { return This->lpVtbl->GetStatisticsEx(This,wStreamNum,pStats); } static FORCEINLINE HRESULT IWMWriterAdvanced3_SetNonBlocking(IWMWriterAdvanced3* This) { return This->lpVtbl->SetNonBlocking(This); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IWMWriterAdvanced3_GetStatisticsEx_Proxy( IWMWriterAdvanced3* This, WORD wStreamNum, WM_WRITER_STATISTICS_EX *pStats); void __RPC_STUB IWMWriterAdvanced3_GetStatisticsEx_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE IWMWriterAdvanced3_SetNonBlocking_Proxy( IWMWriterAdvanced3* This); void __RPC_STUB IWMWriterAdvanced3_SetNonBlocking_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); #endif /* __IWMWriterAdvanced3_INTERFACE_DEFINED__ */ HRESULT WINAPI WMCreateWriter(IUnknown*,IWMWriter**); HRESULT WINAPI WMCreateReader(IUnknown*,DWORD,IWMReader**); EXTERN_GUID(WMMEDIASUBTYPE_Base, 0x00000000,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIATYPE_Video, 0x73646976,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_RGB1, 0xe436eb78,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70); EXTERN_GUID(WMMEDIASUBTYPE_RGB4, 0xe436eb79,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70); EXTERN_GUID(WMMEDIASUBTYPE_RGB8, 0xe436eb7a,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70); EXTERN_GUID(WMMEDIASUBTYPE_RGB565, 0xe436eb7b,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70); EXTERN_GUID(WMMEDIASUBTYPE_RGB555, 0xe436eb7c,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70); EXTERN_GUID(WMMEDIASUBTYPE_RGB24, 0xe436eb7d,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70); EXTERN_GUID(WMMEDIASUBTYPE_RGB32, 0xe436eb7e,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70); EXTERN_GUID(WMMEDIASUBTYPE_I420, 0x30323449,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_IYUV, 0x56555949,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_YV12, 0x32315659,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_YUY2, 0x32595559,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_P422, 0x32323450,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_UYVY, 0x59565955,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_YVYU, 0x55595659,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_YVU9, 0x39555659,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_VIDEOIMAGE, 0x1d4a45f2,0xe5f6,0x4b44,0x83,0x88,0xf0,0xae,0x5c,0x0e,0x0c,0x37); EXTERN_GUID(WMMEDIASUBTYPE_MP43, 0x3334504d,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_MP4S, 0x5334504d,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_M4S2, 0x3253344d,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_WMV1, 0x31564d57,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_WMV2, 0x32564d57,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_MSS1, 0x3153534d,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_MPEG2_VIDEO, 0xe06d8026,0xdb46,0x11cf,0xb4,0xd1,0x00,0x80,0x5f,0x6c,0xbb,0xea); EXTERN_GUID(WMMEDIATYPE_Audio, 0x73647561,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_PCM, 0x00000001,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_DRM, 0x00000009,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_WMAudioV9, 0x00000162,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_WMAudio_Lossless, 0x00000163,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_MSS2, 0x3253534d,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_WMSP1, 0x0000000a,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_WMSP2, 0x0000000b,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_WMV3, 0x33564d57,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_WMVP, 0x50564d57,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_WVP2, 0x32505657,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_WMVA, 0x41564d57,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); EXTERN_GUID(WMMEDIASUBTYPE_WVC1, 0x31435657,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71); /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __wmsdkidl_h__ */