home *** CD-ROM | disk | FTP | other *** search
/ PC Plus SuperCD (UK) 2000 May / PCP163A.iso / Runimage / Cbuilder4 / Include / AMSTREAM.H < prev    next >
Encoding:
C/C++ Source or Header  |  1999-01-26  |  78.4 KB  |  2,327 lines

  1. #pragma option push -b -a8 -pc -A- /*P_O_Push_S*/
  2. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  3.  
  4.  
  5. /* File created by MIDL compiler version 3.02.88 */
  6. /* at Thu Nov 13 19:28:37 1997
  7.  */
  8. /* Compiler settings for amstream.idl:
  9.     Oicf (OptLev=i2), W1, Zp8, env=Win32, ms_ext, c_ext
  10.     error checks: none
  11. */
  12. //@@MIDL_FILE_HEADING(  )
  13. #include "rpc.h"
  14. #include "rpcndr.h"
  15. #ifndef COM_NO_WINDOWS_H
  16. #include "windows.h"
  17. #include "ole2.h"
  18. #endif /*COM_NO_WINDOWS_H*/
  19.  
  20. #ifndef __amstream_h__
  21. #define __amstream_h__
  22.  
  23. #ifdef __cplusplus
  24. extern "C"{
  25. #endif 
  26.  
  27. /* Forward Declarations */ 
  28.  
  29. #ifndef __IDirectShowStream_FWD_DEFINED__
  30. #define __IDirectShowStream_FWD_DEFINED__
  31. typedef interface IDirectShowStream IDirectShowStream;
  32. #endif     /* __IDirectShowStream_FWD_DEFINED__ */
  33.  
  34.  
  35. #ifndef __IAMMultiMediaStream_FWD_DEFINED__
  36. #define __IAMMultiMediaStream_FWD_DEFINED__
  37. typedef interface IAMMultiMediaStream IAMMultiMediaStream;
  38. #endif     /* __IAMMultiMediaStream_FWD_DEFINED__ */
  39.  
  40.  
  41. #ifndef __IAMMediaStream_FWD_DEFINED__
  42. #define __IAMMediaStream_FWD_DEFINED__
  43. typedef interface IAMMediaStream IAMMediaStream;
  44. #endif     /* __IAMMediaStream_FWD_DEFINED__ */
  45.  
  46.  
  47. #ifndef __IMediaStreamFilter_FWD_DEFINED__
  48. #define __IMediaStreamFilter_FWD_DEFINED__
  49. typedef interface IMediaStreamFilter IMediaStreamFilter;
  50. #endif     /* __IMediaStreamFilter_FWD_DEFINED__ */
  51.  
  52.  
  53. #ifndef __IDirectDrawMediaSampleAllocator_FWD_DEFINED__
  54. #define __IDirectDrawMediaSampleAllocator_FWD_DEFINED__
  55. typedef interface IDirectDrawMediaSampleAllocator IDirectDrawMediaSampleAllocator;
  56. #endif     /* __IDirectDrawMediaSampleAllocator_FWD_DEFINED__ */
  57.  
  58.  
  59. #ifndef __IDirectDrawMediaSample_FWD_DEFINED__
  60. #define __IDirectDrawMediaSample_FWD_DEFINED__
  61. typedef interface IDirectDrawMediaSample IDirectDrawMediaSample;
  62. #endif     /* __IDirectDrawMediaSample_FWD_DEFINED__ */
  63.  
  64.  
  65. #ifndef __IAMMediaTypeStream_FWD_DEFINED__
  66. #define __IAMMediaTypeStream_FWD_DEFINED__
  67. typedef interface IAMMediaTypeStream IAMMediaTypeStream;
  68. #endif     /* __IAMMediaTypeStream_FWD_DEFINED__ */
  69.  
  70.  
  71. #ifndef __IAMMediaTypeSample_FWD_DEFINED__
  72. #define __IAMMediaTypeSample_FWD_DEFINED__
  73. typedef interface IAMMediaTypeSample IAMMediaTypeSample;
  74. #endif     /* __IAMMediaTypeSample_FWD_DEFINED__ */
  75.  
  76.  
  77. #ifndef __AMMultiMediaStream_FWD_DEFINED__
  78. #define __AMMultiMediaStream_FWD_DEFINED__
  79.  
  80. #ifdef __cplusplus
  81. typedef class AMMultiMediaStream AMMultiMediaStream;
  82. #else
  83. typedef struct AMMultiMediaStream AMMultiMediaStream;
  84. #endif /* __cplusplus */
  85.  
  86. #endif     /* __AMMultiMediaStream_FWD_DEFINED__ */
  87.  
  88.  
  89. /* header files for imported files */
  90. #include "unknwn.h"
  91. #include "mmstream.h"
  92. #include "strmif.h"
  93.  
  94. void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
  95. void __RPC_USER MIDL_user_free( void __RPC_FAR * ); 
  96.  
  97. /****************************************
  98.  * Generated header for interface: __MIDL_itf_amstream_0000
  99.  * at Thu Nov 13 19:28:37 1997
  100.  * using MIDL 3.02.88
  101.  ****************************************/
  102. /* [local] */ 
  103.  
  104.  
  105. #include <ddraw.h>
  106. #include <mmstream.h>
  107. #include <ddstream.h>
  108. #include <austream.h>
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117. enum __MIDL___MIDL_itf_amstream_0000_0001
  118.     {    AMMSF_NOGRAPHTHREAD    = 0x1
  119.     };
  120.  
  121. enum __MIDL___MIDL_itf_amstream_0000_0002
  122.     {    AMMSF_ADDDEFAULTRENDERER    = 0x1,
  123.     AMMSF_CREATEPEER    = 0x2
  124.     };
  125.  
  126. enum __MIDL___MIDL_itf_amstream_0000_0003
  127.     {    AMMSF_RENDERTYPEMASK    = 0x3,
  128.     AMMSF_RENDERTOEXISTING    = 0,
  129.     AMMSF_RENDERALLSTREAMS    = 0x1,
  130.     AMMSF_NORENDER    = 0x2,
  131.     AMMSF_NOCLOCK    = 0x4,
  132.     AMMSF_RUN    = 0x8
  133.     };
  134. typedef /* [public][public][public][public][public][v1_enum] */ 
  135. enum __MIDL___MIDL_itf_amstream_0000_0004
  136.     {    Disabled    = 0,
  137.     ReadData    = 1,
  138.     RenderData    = 2
  139.     }    OUTPUT_STATE;
  140.  
  141.  
  142.  
  143. extern RPC_IF_HANDLE __MIDL_itf_amstream_0000_v0_0_c_ifspec;
  144. extern RPC_IF_HANDLE __MIDL_itf_amstream_0000_v0_0_s_ifspec;
  145.  
  146. #ifndef __IDirectShowStream_INTERFACE_DEFINED__
  147. #define __IDirectShowStream_INTERFACE_DEFINED__
  148.  
  149. /****************************************
  150.  * Generated header for interface: IDirectShowStream
  151.  * at Thu Nov 13 19:28:37 1997
  152.  * using MIDL 3.02.88
  153.  ****************************************/
  154. /* [unique][helpstring][dual][uuid][object] */ 
  155.  
  156.  
  157.  
  158. EXTERN_C const IID IID_IDirectShowStream;
  159.  
  160. #if defined(__cplusplus) && !defined(CINTERFACE)
  161.     
  162.     interface DECLSPEC_UUID("7DB01C96-C0C3-11d0-8FF1-00C04FD9189D")
  163.     IDirectShowStream : public IDispatch
  164.     {
  165.     public:
  166.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FileName( 
  167.             /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
  168.         
  169.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FileName( 
  170.             /* [in] */ BSTR newVal) = 0;
  171.         
  172.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Video( 
  173.             /* [retval][out] */ OUTPUT_STATE __RPC_FAR *pVal) = 0;
  174.         
  175.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Video( 
  176.             /* [in] */ OUTPUT_STATE newVal) = 0;
  177.         
  178.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Audio( 
  179.             /* [retval][out] */ OUTPUT_STATE __RPC_FAR *pVal) = 0;
  180.         
  181.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Audio( 
  182.             /* [in] */ OUTPUT_STATE newVal) = 0;
  183.         
  184.     };
  185.     
  186. #else     /* C style interface */
  187.  
  188.     typedef struct IDirectShowStreamVtbl
  189.     {
  190.         BEGIN_INTERFACE
  191.         
  192.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  193.             IDirectShowStream __RPC_FAR * This,
  194.             /* [in] */ REFIID riid,
  195.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  196.         
  197.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  198.             IDirectShowStream __RPC_FAR * This);
  199.         
  200.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  201.             IDirectShowStream __RPC_FAR * This);
  202.         
  203.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  204.             IDirectShowStream __RPC_FAR * This,
  205.             /* [out] */ UINT __RPC_FAR *pctinfo);
  206.         
  207.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  208.             IDirectShowStream __RPC_FAR * This,
  209.             /* [in] */ UINT iTInfo,
  210.             /* [in] */ LCID lcid,
  211.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  212.         
  213.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  214.             IDirectShowStream __RPC_FAR * This,
  215.             /* [in] */ REFIID riid,
  216.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  217.             /* [in] */ UINT cNames,
  218.             /* [in] */ LCID lcid,
  219.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  220.         
  221.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  222.             IDirectShowStream __RPC_FAR * This,
  223.             /* [in] */ DISPID dispIdMember,
  224.             /* [in] */ REFIID riid,
  225.             /* [in] */ LCID lcid,
  226.             /* [in] */ WORD wFlags,
  227.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  228.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  229.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  230.             /* [out] */ UINT __RPC_FAR *puArgErr);
  231.         
  232.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FileName )( 
  233.             IDirectShowStream __RPC_FAR * This,
  234.             /* [retval][out] */ BSTR __RPC_FAR *pVal);
  235.         
  236.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FileName )( 
  237.             IDirectShowStream __RPC_FAR * This,
  238.             /* [in] */ BSTR newVal);
  239.         
  240.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Video )( 
  241.             IDirectShowStream __RPC_FAR * This,
  242.             /* [retval][out] */ OUTPUT_STATE __RPC_FAR *pVal);
  243.         
  244.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Video )( 
  245.             IDirectShowStream __RPC_FAR * This,
  246.             /* [in] */ OUTPUT_STATE newVal);
  247.         
  248.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Audio )( 
  249.             IDirectShowStream __RPC_FAR * This,
  250.             /* [retval][out] */ OUTPUT_STATE __RPC_FAR *pVal);
  251.         
  252.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Audio )( 
  253.             IDirectShowStream __RPC_FAR * This,
  254.             /* [in] */ OUTPUT_STATE newVal);
  255.         
  256.         END_INTERFACE
  257.     } IDirectShowStreamVtbl;
  258.  
  259.     interface IDirectShowStream
  260.     {
  261.         CONST_VTBL struct IDirectShowStreamVtbl __RPC_FAR *lpVtbl;
  262.     };
  263.  
  264.     
  265.  
  266. #ifdef COBJMACROS
  267.  
  268.  
  269. #define IDirectShowStream_QueryInterface(This,riid,ppvObject)    \
  270.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  271.  
  272. #define IDirectShowStream_AddRef(This)    \
  273.     (This)->lpVtbl -> AddRef(This)
  274.  
  275. #define IDirectShowStream_Release(This)    \
  276.     (This)->lpVtbl -> Release(This)
  277.  
  278.  
  279. #define IDirectShowStream_GetTypeInfoCount(This,pctinfo)    \
  280.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  281.  
  282. #define IDirectShowStream_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  283.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  284.  
  285. #define IDirectShowStream_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  286.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  287.  
  288. #define IDirectShowStream_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  289.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  290.  
  291.  
  292. #define IDirectShowStream_get_FileName(This,pVal)    \
  293.     (This)->lpVtbl -> get_FileName(This,pVal)
  294.  
  295. #define IDirectShowStream_put_FileName(This,newVal)    \
  296.     (This)->lpVtbl -> put_FileName(This,newVal)
  297.  
  298. #define IDirectShowStream_get_Video(This,pVal)    \
  299.     (This)->lpVtbl -> get_Video(This,pVal)
  300.  
  301. #define IDirectShowStream_put_Video(This,newVal)    \
  302.     (This)->lpVtbl -> put_Video(This,newVal)
  303.  
  304. #define IDirectShowStream_get_Audio(This,pVal)    \
  305.     (This)->lpVtbl -> get_Audio(This,pVal)
  306.  
  307. #define IDirectShowStream_put_Audio(This,newVal)    \
  308.     (This)->lpVtbl -> put_Audio(This,newVal)
  309.  
  310. #endif /* COBJMACROS */
  311.  
  312.  
  313. #endif     /* C style interface */
  314.  
  315.  
  316.  
  317. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDirectShowStream_get_FileName_Proxy( 
  318.     IDirectShowStream __RPC_FAR * This,
  319.     /* [retval][out] */ BSTR __RPC_FAR *pVal);
  320.  
  321.  
  322. void __RPC_STUB IDirectShowStream_get_FileName_Stub(
  323.     IRpcStubBuffer *This,
  324.     IRpcChannelBuffer *_pRpcChannelBuffer,
  325.     PRPC_MESSAGE _pRpcMessage,
  326.     DWORD *_pdwStubPhase);
  327.  
  328.  
  329. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDirectShowStream_put_FileName_Proxy( 
  330.     IDirectShowStream __RPC_FAR * This,
  331.     /* [in] */ BSTR newVal);
  332.  
  333.  
  334. void __RPC_STUB IDirectShowStream_put_FileName_Stub(
  335.     IRpcStubBuffer *This,
  336.     IRpcChannelBuffer *_pRpcChannelBuffer,
  337.     PRPC_MESSAGE _pRpcMessage,
  338.     DWORD *_pdwStubPhase);
  339.  
  340.  
  341. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDirectShowStream_get_Video_Proxy( 
  342.     IDirectShowStream __RPC_FAR * This,
  343.     /* [retval][out] */ OUTPUT_STATE __RPC_FAR *pVal);
  344.  
  345.  
  346. void __RPC_STUB IDirectShowStream_get_Video_Stub(
  347.     IRpcStubBuffer *This,
  348.     IRpcChannelBuffer *_pRpcChannelBuffer,
  349.     PRPC_MESSAGE _pRpcMessage,
  350.     DWORD *_pdwStubPhase);
  351.  
  352.  
  353. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDirectShowStream_put_Video_Proxy( 
  354.     IDirectShowStream __RPC_FAR * This,
  355.     /* [in] */ OUTPUT_STATE newVal);
  356.  
  357.  
  358. void __RPC_STUB IDirectShowStream_put_Video_Stub(
  359.     IRpcStubBuffer *This,
  360.     IRpcChannelBuffer *_pRpcChannelBuffer,
  361.     PRPC_MESSAGE _pRpcMessage,
  362.     DWORD *_pdwStubPhase);
  363.  
  364.  
  365. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDirectShowStream_get_Audio_Proxy( 
  366.     IDirectShowStream __RPC_FAR * This,
  367.     /* [retval][out] */ OUTPUT_STATE __RPC_FAR *pVal);
  368.  
  369.  
  370. void __RPC_STUB IDirectShowStream_get_Audio_Stub(
  371.     IRpcStubBuffer *This,
  372.     IRpcChannelBuffer *_pRpcChannelBuffer,
  373.     PRPC_MESSAGE _pRpcMessage,
  374.     DWORD *_pdwStubPhase);
  375.  
  376.  
  377. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDirectShowStream_put_Audio_Proxy( 
  378.     IDirectShowStream __RPC_FAR * This,
  379.     /* [in] */ OUTPUT_STATE newVal);
  380.  
  381.  
  382. void __RPC_STUB IDirectShowStream_put_Audio_Stub(
  383.     IRpcStubBuffer *This,
  384.     IRpcChannelBuffer *_pRpcChannelBuffer,
  385.     PRPC_MESSAGE _pRpcMessage,
  386.     DWORD *_pdwStubPhase);
  387.  
  388.  
  389.  
  390. #endif     /* __IDirectShowStream_INTERFACE_DEFINED__ */
  391.  
  392.  
  393. #ifndef __IAMMultiMediaStream_INTERFACE_DEFINED__
  394. #define __IAMMultiMediaStream_INTERFACE_DEFINED__
  395.  
  396. /****************************************
  397.  * Generated header for interface: IAMMultiMediaStream
  398.  * at Thu Nov 13 19:28:37 1997
  399.  * using MIDL 3.02.88
  400.  ****************************************/
  401. /* [unique][uuid][object] */ 
  402.  
  403.  
  404.  
  405. EXTERN_C const IID IID_IAMMultiMediaStream;
  406.  
  407. #if defined(__cplusplus) && !defined(CINTERFACE)
  408.     
  409.     interface DECLSPEC_UUID("BEBE595C-9A6F-11d0-8FDE-00C04FD9189D")
  410.     IAMMultiMediaStream : public IMultiMediaStream
  411.     {
  412.     public:
  413.         virtual HRESULT STDMETHODCALLTYPE Initialize( 
  414.             /* [in] */ STREAM_TYPE StreamType,
  415.             /* [in] */ DWORD dwFlags,
  416.             /* [optional][in] */ IGraphBuilder __RPC_FAR *pFilterGraph) = 0;
  417.         
  418.         virtual HRESULT STDMETHODCALLTYPE GetFilterGraph( 
  419.             /* [out] */ IGraphBuilder __RPC_FAR *__RPC_FAR *ppGraphBuilder) = 0;
  420.         
  421.         virtual HRESULT STDMETHODCALLTYPE GetFilter( 
  422.             /* [out] */ IMediaStreamFilter __RPC_FAR *__RPC_FAR *ppFilter) = 0;
  423.         
  424.         virtual HRESULT STDMETHODCALLTYPE AddMediaStream( 
  425.             /* [optional][in] */ IUnknown __RPC_FAR *pStreamObject,
  426.             /* [optional][in] */ const MSPID __RPC_FAR *PurposeId,
  427.             /* [in] */ DWORD dwFlags,
  428.             /* [optional][out] */ IMediaStream __RPC_FAR *__RPC_FAR *ppNewStream) = 0;
  429.         
  430.         virtual HRESULT STDMETHODCALLTYPE OpenFile( 
  431.             /* [in] */ LPCWSTR pszFileName,
  432.             /* [in] */ DWORD dwFlags) = 0;
  433.         
  434.         virtual HRESULT STDMETHODCALLTYPE OpenMoniker( 
  435.             /* [in] */ IBindCtx __RPC_FAR *pCtx,
  436.             /* [in] */ IMoniker __RPC_FAR *pMoniker,
  437.             /* [in] */ DWORD dwFlags) = 0;
  438.         
  439.         virtual HRESULT STDMETHODCALLTYPE Render( 
  440.             /* [in] */ DWORD dwFlags) = 0;
  441.         
  442.     };
  443.     
  444. #else     /* C style interface */
  445.  
  446.     typedef struct IAMMultiMediaStreamVtbl
  447.     {
  448.         BEGIN_INTERFACE
  449.         
  450.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  451.             IAMMultiMediaStream __RPC_FAR * This,
  452.             /* [in] */ REFIID riid,
  453.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  454.         
  455.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  456.             IAMMultiMediaStream __RPC_FAR * This);
  457.         
  458.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  459.             IAMMultiMediaStream __RPC_FAR * This);
  460.         
  461.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetInformation )( 
  462.             IAMMultiMediaStream __RPC_FAR * This,
  463.             /* [optional][out] */ DWORD __RPC_FAR *pdwFlags,
  464.             /* [optional][out] */ STREAM_TYPE __RPC_FAR *pStreamType);
  465.         
  466.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetMediaStream )( 
  467.             IAMMultiMediaStream __RPC_FAR * This,
  468.             /* [in] */ REFMSPID idPurpose,
  469.             /* [out] */ IMediaStream __RPC_FAR *__RPC_FAR *ppMediaStream);
  470.         
  471.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *EnumMediaStreams )( 
  472.             IAMMultiMediaStream __RPC_FAR * This,
  473.             /* [in] */ long Index,
  474.             /* [out] */ IMediaStream __RPC_FAR *__RPC_FAR *ppMediaStream);
  475.         
  476.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetState )( 
  477.             IAMMultiMediaStream __RPC_FAR * This,
  478.             /* [out] */ STREAM_STATE __RPC_FAR *pCurrentState);
  479.         
  480.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetState )( 
  481.             IAMMultiMediaStream __RPC_FAR * This,
  482.             /* [in] */ STREAM_STATE NewState);
  483.         
  484.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTime )( 
  485.             IAMMultiMediaStream __RPC_FAR * This,
  486.             /* [out] */ STREAM_TIME __RPC_FAR *pCurrentTime);
  487.         
  488.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDuration )( 
  489.             IAMMultiMediaStream __RPC_FAR * This,
  490.             /* [out] */ STREAM_TIME __RPC_FAR *pDuration);
  491.         
  492.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Seek )( 
  493.             IAMMultiMediaStream __RPC_FAR * This,
  494.             /* [in] */ STREAM_TIME SeekTime);
  495.         
  496.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetEndOfStreamEventHandle )( 
  497.             IAMMultiMediaStream __RPC_FAR * This,
  498.             /* [out] */ HANDLE __RPC_FAR *phEOS);
  499.         
  500.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Initialize )( 
  501.             IAMMultiMediaStream __RPC_FAR * This,
  502.             /* [in] */ STREAM_TYPE StreamType,
  503.             /* [in] */ DWORD dwFlags,
  504.             /* [optional][in] */ IGraphBuilder __RPC_FAR *pFilterGraph);
  505.         
  506.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetFilterGraph )( 
  507.             IAMMultiMediaStream __RPC_FAR * This,
  508.             /* [out] */ IGraphBuilder __RPC_FAR *__RPC_FAR *ppGraphBuilder);
  509.         
  510.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetFilter )( 
  511.             IAMMultiMediaStream __RPC_FAR * This,
  512.             /* [out] */ IMediaStreamFilter __RPC_FAR *__RPC_FAR *ppFilter);
  513.         
  514.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddMediaStream )( 
  515.             IAMMultiMediaStream __RPC_FAR * This,
  516.             /* [optional][in] */ IUnknown __RPC_FAR *pStreamObject,
  517.             /* [optional][in] */ const MSPID __RPC_FAR *PurposeId,
  518.             /* [in] */ DWORD dwFlags,
  519.             /* [optional][out] */ IMediaStream __RPC_FAR *__RPC_FAR *ppNewStream);
  520.         
  521.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OpenFile )( 
  522.             IAMMultiMediaStream __RPC_FAR * This,
  523.             /* [in] */ LPCWSTR pszFileName,
  524.             /* [in] */ DWORD dwFlags);
  525.         
  526.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OpenMoniker )( 
  527.             IAMMultiMediaStream __RPC_FAR * This,
  528.             /* [in] */ IBindCtx __RPC_FAR *pCtx,
  529.             /* [in] */ IMoniker __RPC_FAR *pMoniker,
  530.             /* [in] */ DWORD dwFlags);
  531.         
  532.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Render )( 
  533.             IAMMultiMediaStream __RPC_FAR * This,
  534.             /* [in] */ DWORD dwFlags);
  535.         
  536.         END_INTERFACE
  537.     } IAMMultiMediaStreamVtbl;
  538.  
  539.     interface IAMMultiMediaStream
  540.     {
  541.         CONST_VTBL struct IAMMultiMediaStreamVtbl __RPC_FAR *lpVtbl;
  542.     };
  543.  
  544.     
  545.  
  546. #ifdef COBJMACROS
  547.  
  548.  
  549. #define IAMMultiMediaStream_QueryInterface(This,riid,ppvObject)    \
  550.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  551.  
  552. #define IAMMultiMediaStream_AddRef(This)    \
  553.     (This)->lpVtbl -> AddRef(This)
  554.  
  555. #define IAMMultiMediaStream_Release(This)    \
  556.     (This)->lpVtbl -> Release(This)
  557.  
  558.  
  559. #define IAMMultiMediaStream_GetInformation(This,pdwFlags,pStreamType)    \
  560.     (This)->lpVtbl -> GetInformation(This,pdwFlags,pStreamType)
  561.  
  562. #define IAMMultiMediaStream_GetMediaStream(This,idPurpose,ppMediaStream)    \
  563.     (This)->lpVtbl -> GetMediaStream(This,idPurpose,ppMediaStream)
  564.  
  565. #define IAMMultiMediaStream_EnumMediaStreams(This,Index,ppMediaStream)    \
  566.     (This)->lpVtbl -> EnumMediaStreams(This,Index,ppMediaStream)
  567.  
  568. #define IAMMultiMediaStream_GetState(This,pCurrentState)    \
  569.     (This)->lpVtbl -> GetState(This,pCurrentState)
  570.  
  571. #define IAMMultiMediaStream_SetState(This,NewState)    \
  572.     (This)->lpVtbl -> SetState(This,NewState)
  573.  
  574. #define IAMMultiMediaStream_GetTime(This,pCurrentTime)    \
  575.     (This)->lpVtbl -> GetTime(This,pCurrentTime)
  576.  
  577. #define IAMMultiMediaStream_GetDuration(This,pDuration)    \
  578.     (This)->lpVtbl -> GetDuration(This,pDuration)
  579.  
  580. #define IAMMultiMediaStream_Seek(This,SeekTime)    \
  581.     (This)->lpVtbl -> Seek(This,SeekTime)
  582.  
  583. #define IAMMultiMediaStream_GetEndOfStreamEventHandle(This,phEOS)    \
  584.     (This)->lpVtbl -> GetEndOfStreamEventHandle(This,phEOS)
  585.  
  586.  
  587. #define IAMMultiMediaStream_Initialize(This,StreamType,dwFlags,pFilterGraph)    \
  588.     (This)->lpVtbl -> Initialize(This,StreamType,dwFlags,pFilterGraph)
  589.  
  590. #define IAMMultiMediaStream_GetFilterGraph(This,ppGraphBuilder)    \
  591.     (This)->lpVtbl -> GetFilterGraph(This,ppGraphBuilder)
  592.  
  593. #define IAMMultiMediaStream_GetFilter(This,ppFilter)    \
  594.     (This)->lpVtbl -> GetFilter(This,ppFilter)
  595.  
  596. #define IAMMultiMediaStream_AddMediaStream(This,pStreamObject,PurposeId,dwFlags,ppNewStream)    \
  597.     (This)->lpVtbl -> AddMediaStream(This,pStreamObject,PurposeId,dwFlags,ppNewStream)
  598.  
  599. #define IAMMultiMediaStream_OpenFile(This,pszFileName,dwFlags)    \
  600.     (This)->lpVtbl -> OpenFile(This,pszFileName,dwFlags)
  601.  
  602. #define IAMMultiMediaStream_OpenMoniker(This,pCtx,pMoniker,dwFlags)    \
  603.     (This)->lpVtbl -> OpenMoniker(This,pCtx,pMoniker,dwFlags)
  604.  
  605. #define IAMMultiMediaStream_Render(This,dwFlags)    \
  606.     (This)->lpVtbl -> Render(This,dwFlags)
  607.  
  608. #endif /* COBJMACROS */
  609.  
  610.  
  611. #endif     /* C style interface */
  612.  
  613.  
  614.  
  615. HRESULT STDMETHODCALLTYPE IAMMultiMediaStream_Initialize_Proxy( 
  616.     IAMMultiMediaStream __RPC_FAR * This,
  617.     /* [in] */ STREAM_TYPE StreamType,
  618.     /* [in] */ DWORD dwFlags,
  619.     /* [optional][in] */ IGraphBuilder __RPC_FAR *pFilterGraph);
  620.  
  621.  
  622. void __RPC_STUB IAMMultiMediaStream_Initialize_Stub(
  623.     IRpcStubBuffer *This,
  624.     IRpcChannelBuffer *_pRpcChannelBuffer,
  625.     PRPC_MESSAGE _pRpcMessage,
  626.     DWORD *_pdwStubPhase);
  627.  
  628.  
  629. HRESULT STDMETHODCALLTYPE IAMMultiMediaStream_GetFilterGraph_Proxy( 
  630.     IAMMultiMediaStream __RPC_FAR * This,
  631.     /* [out] */ IGraphBuilder __RPC_FAR *__RPC_FAR *ppGraphBuilder);
  632.  
  633.  
  634. void __RPC_STUB IAMMultiMediaStream_GetFilterGraph_Stub(
  635.     IRpcStubBuffer *This,
  636.     IRpcChannelBuffer *_pRpcChannelBuffer,
  637.     PRPC_MESSAGE _pRpcMessage,
  638.     DWORD *_pdwStubPhase);
  639.  
  640.  
  641. HRESULT STDMETHODCALLTYPE IAMMultiMediaStream_GetFilter_Proxy( 
  642.     IAMMultiMediaStream __RPC_FAR * This,
  643.     /* [out] */ IMediaStreamFilter __RPC_FAR *__RPC_FAR *ppFilter);
  644.  
  645.  
  646. void __RPC_STUB IAMMultiMediaStream_GetFilter_Stub(
  647.     IRpcStubBuffer *This,
  648.     IRpcChannelBuffer *_pRpcChannelBuffer,
  649.     PRPC_MESSAGE _pRpcMessage,
  650.     DWORD *_pdwStubPhase);
  651.  
  652.  
  653. HRESULT STDMETHODCALLTYPE IAMMultiMediaStream_AddMediaStream_Proxy( 
  654.     IAMMultiMediaStream __RPC_FAR * This,
  655.     /* [optional][in] */ IUnknown __RPC_FAR *pStreamObject,
  656.     /* [optional][in] */ const MSPID __RPC_FAR *PurposeId,
  657.     /* [in] */ DWORD dwFlags,
  658.     /* [optional][out] */ IMediaStream __RPC_FAR *__RPC_FAR *ppNewStream);
  659.  
  660.  
  661. void __RPC_STUB IAMMultiMediaStream_AddMediaStream_Stub(
  662.     IRpcStubBuffer *This,
  663.     IRpcChannelBuffer *_pRpcChannelBuffer,
  664.     PRPC_MESSAGE _pRpcMessage,
  665.     DWORD *_pdwStubPhase);
  666.  
  667.  
  668. HRESULT STDMETHODCALLTYPE IAMMultiMediaStream_OpenFile_Proxy( 
  669.     IAMMultiMediaStream __RPC_FAR * This,
  670.     /* [in] */ LPCWSTR pszFileName,
  671.     /* [in] */ DWORD dwFlags);
  672.  
  673.  
  674. void __RPC_STUB IAMMultiMediaStream_OpenFile_Stub(
  675.     IRpcStubBuffer *This,
  676.     IRpcChannelBuffer *_pRpcChannelBuffer,
  677.     PRPC_MESSAGE _pRpcMessage,
  678.     DWORD *_pdwStubPhase);
  679.  
  680.  
  681. HRESULT STDMETHODCALLTYPE IAMMultiMediaStream_OpenMoniker_Proxy( 
  682.     IAMMultiMediaStream __RPC_FAR * This,
  683.     /* [in] */ IBindCtx __RPC_FAR *pCtx,
  684.     /* [in] */ IMoniker __RPC_FAR *pMoniker,
  685.     /* [in] */ DWORD dwFlags);
  686.  
  687.  
  688. void __RPC_STUB IAMMultiMediaStream_OpenMoniker_Stub(
  689.     IRpcStubBuffer *This,
  690.     IRpcChannelBuffer *_pRpcChannelBuffer,
  691.     PRPC_MESSAGE _pRpcMessage,
  692.     DWORD *_pdwStubPhase);
  693.  
  694.  
  695. HRESULT STDMETHODCALLTYPE IAMMultiMediaStream_Render_Proxy( 
  696.     IAMMultiMediaStream __RPC_FAR * This,
  697.     /* [in] */ DWORD dwFlags);
  698.  
  699.  
  700. void __RPC_STUB IAMMultiMediaStream_Render_Stub(
  701.     IRpcStubBuffer *This,
  702.     IRpcChannelBuffer *_pRpcChannelBuffer,
  703.     PRPC_MESSAGE _pRpcMessage,
  704.     DWORD *_pdwStubPhase);
  705.  
  706.  
  707.  
  708. #endif     /* __IAMMultiMediaStream_INTERFACE_DEFINED__ */
  709.  
  710.  
  711. #ifndef __IAMMediaStream_INTERFACE_DEFINED__
  712. #define __IAMMediaStream_INTERFACE_DEFINED__
  713.  
  714. /****************************************
  715.  * Generated header for interface: IAMMediaStream
  716.  * at Thu Nov 13 19:28:37 1997
  717.  * using MIDL 3.02.88
  718.  ****************************************/
  719. /* [unique][uuid][object] */ 
  720.  
  721.  
  722.  
  723. EXTERN_C const IID IID_IAMMediaStream;
  724.  
  725. #if defined(__cplusplus) && !defined(CINTERFACE)
  726.     
  727.     interface DECLSPEC_UUID("BEBE595D-9A6F-11d0-8FDE-00C04FD9189D")
  728.     IAMMediaStream : public IMediaStream
  729.     {
  730.     public:
  731.         virtual HRESULT STDMETHODCALLTYPE Initialize( 
  732.             /* [optional][in] */ IUnknown __RPC_FAR *pSourceObject,
  733.             /* [in] */ DWORD dwFlags,
  734.             /* [in] */ REFMSPID PurposeId,
  735.             /* [in] */ const STREAM_TYPE StreamType) = 0;
  736.         
  737.         virtual HRESULT STDMETHODCALLTYPE SetState( 
  738.             /* [in] */ FILTER_STATE State) = 0;
  739.         
  740.         virtual HRESULT STDMETHODCALLTYPE JoinAMMultiMediaStream( 
  741.             /* [in] */ IAMMultiMediaStream __RPC_FAR *pAMMultiMediaStream) = 0;
  742.         
  743.         virtual HRESULT STDMETHODCALLTYPE JoinFilter( 
  744.             /* [in] */ IMediaStreamFilter __RPC_FAR *pMediaStreamFilter) = 0;
  745.         
  746.         virtual HRESULT STDMETHODCALLTYPE JoinFilterGraph( 
  747.             /* [in] */ IFilterGraph __RPC_FAR *pFilterGraph) = 0;
  748.         
  749.     };
  750.     
  751. #else     /* C style interface */
  752.  
  753.     typedef struct IAMMediaStreamVtbl
  754.     {
  755.         BEGIN_INTERFACE
  756.         
  757.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  758.             IAMMediaStream __RPC_FAR * This,
  759.             /* [in] */ REFIID riid,
  760.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  761.         
  762.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  763.             IAMMediaStream __RPC_FAR * This);
  764.         
  765.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  766.             IAMMediaStream __RPC_FAR * This);
  767.         
  768.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetMultiMediaStream )( 
  769.             IAMMediaStream __RPC_FAR * This,
  770.             /* [out] */ IMultiMediaStream __RPC_FAR *__RPC_FAR *ppMultiMediaStream);
  771.         
  772.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetInformation )( 
  773.             IAMMediaStream __RPC_FAR * This,
  774.             /* [optional][out] */ MSPID __RPC_FAR *pPurposeId,
  775.             /* [optional][out] */ STREAM_TYPE __RPC_FAR *pType);
  776.         
  777.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetSameFormat )( 
  778.             IAMMediaStream __RPC_FAR * This,
  779.             /* [in] */ IMediaStream __RPC_FAR *pStreamThatHasDesiredFormat,
  780.             /* [in] */ DWORD dwFlags);
  781.         
  782.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AllocateSample )( 
  783.             IAMMediaStream __RPC_FAR * This,
  784.             /* [in] */ DWORD dwFlags,
  785.             /* [out] */ IStreamSample __RPC_FAR *__RPC_FAR *ppSample);
  786.         
  787.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateSharedSample )( 
  788.             IAMMediaStream __RPC_FAR * This,
  789.             /* [in] */ IStreamSample __RPC_FAR *pExistingSample,
  790.             /* [in] */ DWORD dwFlags,
  791.             /* [out] */ IStreamSample __RPC_FAR *__RPC_FAR *ppNewSample);
  792.         
  793.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SendEndOfStream )( 
  794.             IAMMediaStream __RPC_FAR * This,
  795.             DWORD dwFlags);
  796.         
  797.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Initialize )( 
  798.             IAMMediaStream __RPC_FAR * This,
  799.             /* [optional][in] */ IUnknown __RPC_FAR *pSourceObject,
  800.             /* [in] */ DWORD dwFlags,
  801.             /* [in] */ REFMSPID PurposeId,
  802.             /* [in] */ const STREAM_TYPE StreamType);
  803.         
  804.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetState )( 
  805.             IAMMediaStream __RPC_FAR * This,
  806.             /* [in] */ FILTER_STATE State);
  807.         
  808.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *JoinAMMultiMediaStream )( 
  809.             IAMMediaStream __RPC_FAR * This,
  810.             /* [in] */ IAMMultiMediaStream __RPC_FAR *pAMMultiMediaStream);
  811.         
  812.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *JoinFilter )( 
  813.             IAMMediaStream __RPC_FAR * This,
  814.             /* [in] */ IMediaStreamFilter __RPC_FAR *pMediaStreamFilter);
  815.         
  816.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *JoinFilterGraph )( 
  817.             IAMMediaStream __RPC_FAR * This,
  818.             /* [in] */ IFilterGraph __RPC_FAR *pFilterGraph);
  819.         
  820.         END_INTERFACE
  821.     } IAMMediaStreamVtbl;
  822.  
  823.     interface IAMMediaStream
  824.     {
  825.         CONST_VTBL struct IAMMediaStreamVtbl __RPC_FAR *lpVtbl;
  826.     };
  827.  
  828.     
  829.  
  830. #ifdef COBJMACROS
  831.  
  832.  
  833. #define IAMMediaStream_QueryInterface(This,riid,ppvObject)    \
  834.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  835.  
  836. #define IAMMediaStream_AddRef(This)    \
  837.     (This)->lpVtbl -> AddRef(This)
  838.  
  839. #define IAMMediaStream_Release(This)    \
  840.     (This)->lpVtbl -> Release(This)
  841.  
  842.  
  843. #define IAMMediaStream_GetMultiMediaStream(This,ppMultiMediaStream)    \
  844.     (This)->lpVtbl -> GetMultiMediaStream(This,ppMultiMediaStream)
  845.  
  846. #define IAMMediaStream_GetInformation(This,pPurposeId,pType)    \
  847.     (This)->lpVtbl -> GetInformation(This,pPurposeId,pType)
  848.  
  849. #define IAMMediaStream_SetSameFormat(This,pStreamThatHasDesiredFormat,dwFlags)    \
  850.     (This)->lpVtbl -> SetSameFormat(This,pStreamThatHasDesiredFormat,dwFlags)
  851.  
  852. #define IAMMediaStream_AllocateSample(This,dwFlags,ppSample)    \
  853.     (This)->lpVtbl -> AllocateSample(This,dwFlags,ppSample)
  854.  
  855. #define IAMMediaStream_CreateSharedSample(This,pExistingSample,dwFlags,ppNewSample)    \
  856.     (This)->lpVtbl -> CreateSharedSample(This,pExistingSample,dwFlags,ppNewSample)
  857.  
  858. #define IAMMediaStream_SendEndOfStream(This,dwFlags)    \
  859.     (This)->lpVtbl -> SendEndOfStream(This,dwFlags)
  860.  
  861.  
  862. #define IAMMediaStream_Initialize(This,pSourceObject,dwFlags,PurposeId,StreamType)    \
  863.     (This)->lpVtbl -> Initialize(This,pSourceObject,dwFlags,PurposeId,StreamType)
  864.  
  865. #define IAMMediaStream_SetState(This,State)    \
  866.     (This)->lpVtbl -> SetState(This,State)
  867.  
  868. #define IAMMediaStream_JoinAMMultiMediaStream(This,pAMMultiMediaStream)    \
  869.     (This)->lpVtbl -> JoinAMMultiMediaStream(This,pAMMultiMediaStream)
  870.  
  871. #define IAMMediaStream_JoinFilter(This,pMediaStreamFilter)    \
  872.     (This)->lpVtbl -> JoinFilter(This,pMediaStreamFilter)
  873.  
  874. #define IAMMediaStream_JoinFilterGraph(This,pFilterGraph)    \
  875.     (This)->lpVtbl -> JoinFilterGraph(This,pFilterGraph)
  876.  
  877. #endif /* COBJMACROS */
  878.  
  879.  
  880. #endif     /* C style interface */
  881.  
  882.  
  883.  
  884. HRESULT STDMETHODCALLTYPE IAMMediaStream_Initialize_Proxy( 
  885.     IAMMediaStream __RPC_FAR * This,
  886.     /* [optional][in] */ IUnknown __RPC_FAR *pSourceObject,
  887.     /* [in] */ DWORD dwFlags,
  888.     /* [in] */ REFMSPID PurposeId,
  889.     /* [in] */ const STREAM_TYPE StreamType);
  890.  
  891.  
  892. void __RPC_STUB IAMMediaStream_Initialize_Stub(
  893.     IRpcStubBuffer *This,
  894.     IRpcChannelBuffer *_pRpcChannelBuffer,
  895.     PRPC_MESSAGE _pRpcMessage,
  896.     DWORD *_pdwStubPhase);
  897.  
  898.  
  899. HRESULT STDMETHODCALLTYPE IAMMediaStream_SetState_Proxy( 
  900.     IAMMediaStream __RPC_FAR * This,
  901.     /* [in] */ FILTER_STATE State);
  902.  
  903.  
  904. void __RPC_STUB IAMMediaStream_SetState_Stub(
  905.     IRpcStubBuffer *This,
  906.     IRpcChannelBuffer *_pRpcChannelBuffer,
  907.     PRPC_MESSAGE _pRpcMessage,
  908.     DWORD *_pdwStubPhase);
  909.  
  910.  
  911. HRESULT STDMETHODCALLTYPE IAMMediaStream_JoinAMMultiMediaStream_Proxy( 
  912.     IAMMediaStream __RPC_FAR * This,
  913.     /* [in] */ IAMMultiMediaStream __RPC_FAR *pAMMultiMediaStream);
  914.  
  915.  
  916. void __RPC_STUB IAMMediaStream_JoinAMMultiMediaStream_Stub(
  917.     IRpcStubBuffer *This,
  918.     IRpcChannelBuffer *_pRpcChannelBuffer,
  919.     PRPC_MESSAGE _pRpcMessage,
  920.     DWORD *_pdwStubPhase);
  921.  
  922.  
  923. HRESULT STDMETHODCALLTYPE IAMMediaStream_JoinFilter_Proxy( 
  924.     IAMMediaStream __RPC_FAR * This,
  925.     /* [in] */ IMediaStreamFilter __RPC_FAR *pMediaStreamFilter);
  926.  
  927.  
  928. void __RPC_STUB IAMMediaStream_JoinFilter_Stub(
  929.     IRpcStubBuffer *This,
  930.     IRpcChannelBuffer *_pRpcChannelBuffer,
  931.     PRPC_MESSAGE _pRpcMessage,
  932.     DWORD *_pdwStubPhase);
  933.  
  934.  
  935. HRESULT STDMETHODCALLTYPE IAMMediaStream_JoinFilterGraph_Proxy( 
  936.     IAMMediaStream __RPC_FAR * This,
  937.     /* [in] */ IFilterGraph __RPC_FAR *pFilterGraph);
  938.  
  939.  
  940. void __RPC_STUB IAMMediaStream_JoinFilterGraph_Stub(
  941.     IRpcStubBuffer *This,
  942.     IRpcChannelBuffer *_pRpcChannelBuffer,
  943.     PRPC_MESSAGE _pRpcMessage,
  944.     DWORD *_pdwStubPhase);
  945.  
  946.  
  947.  
  948. #endif     /* __IAMMediaStream_INTERFACE_DEFINED__ */
  949.  
  950.  
  951. #ifndef __IMediaStreamFilter_INTERFACE_DEFINED__
  952. #define __IMediaStreamFilter_INTERFACE_DEFINED__
  953.  
  954. /****************************************
  955.  * Generated header for interface: IMediaStreamFilter
  956.  * at Thu Nov 13 19:28:37 1997
  957.  * using MIDL 3.02.88
  958.  ****************************************/
  959. /* [unique][uuid][local][object] */ 
  960.  
  961.  
  962.  
  963. EXTERN_C const IID IID_IMediaStreamFilter;
  964.  
  965. #if defined(__cplusplus) && !defined(CINTERFACE)
  966.     
  967.     interface DECLSPEC_UUID("BEBE595E-9A6F-11d0-8FDE-00C04FD9189D")
  968.     IMediaStreamFilter : public IBaseFilter
  969.     {
  970.     public:
  971.         virtual HRESULT STDMETHODCALLTYPE AddMediaStream( 
  972.             /* [in] */ IAMMediaStream __RPC_FAR *pAMMediaStream) = 0;
  973.         
  974.         virtual HRESULT STDMETHODCALLTYPE GetMediaStream( 
  975.             /* [in] */ REFMSPID idPurpose,
  976.             /* [out] */ IMediaStream __RPC_FAR *__RPC_FAR *ppMediaStream) = 0;
  977.         
  978.         virtual HRESULT STDMETHODCALLTYPE EnumMediaStreams( 
  979.             /* [in] */ long Index,
  980.             /* [out] */ IMediaStream __RPC_FAR *__RPC_FAR *ppMediaStream) = 0;
  981.         
  982.         virtual HRESULT STDMETHODCALLTYPE SupportSeeking( 
  983.             /* [in] */ BOOL bRenderer) = 0;
  984.         
  985.         virtual HRESULT STDMETHODCALLTYPE ReferenceTimeToStreamTime( 
  986.             /* [out][in] */ REFERENCE_TIME __RPC_FAR *pTime) = 0;
  987.         
  988.         virtual HRESULT STDMETHODCALLTYPE GetCurrentStreamTime( 
  989.             /* [out] */ REFERENCE_TIME __RPC_FAR *pCurrentStreamTime) = 0;
  990.         
  991.         virtual HRESULT STDMETHODCALLTYPE WaitUntil( 
  992.             /* [in] */ REFERENCE_TIME WaitStreamTime) = 0;
  993.         
  994.         virtual HRESULT STDMETHODCALLTYPE Flush( 
  995.             /* [in] */ BOOL bCancelEOS) = 0;
  996.         
  997.         virtual HRESULT STDMETHODCALLTYPE EndOfStream( void) = 0;
  998.         
  999.     };
  1000.     
  1001. #else     /* C style interface */
  1002.  
  1003.     typedef struct IMediaStreamFilterVtbl
  1004.     {
  1005.         BEGIN_INTERFACE
  1006.         
  1007.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  1008.             IMediaStreamFilter __RPC_FAR * This,
  1009.             /* [in] */ REFIID riid,
  1010.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1011.         
  1012.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  1013.             IMediaStreamFilter __RPC_FAR * This);
  1014.         
  1015.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  1016.             IMediaStreamFilter __RPC_FAR * This);
  1017.         
  1018.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetClassID )( 
  1019.             IMediaStreamFilter __RPC_FAR * This,
  1020.             /* [out] */ CLSID __RPC_FAR *pClassID);
  1021.         
  1022.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Stop )( 
  1023.             IMediaStreamFilter __RPC_FAR * This);
  1024.         
  1025.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Pause )( 
  1026.             IMediaStreamFilter __RPC_FAR * This);
  1027.         
  1028.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Run )( 
  1029.             IMediaStreamFilter __RPC_FAR * This,
  1030.             REFERENCE_TIME tStart);
  1031.         
  1032.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetState )( 
  1033.             IMediaStreamFilter __RPC_FAR * This,
  1034.             /* [in] */ DWORD dwMilliSecsTimeout,
  1035.             /* [out] */ FILTER_STATE __RPC_FAR *State);
  1036.         
  1037.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetSyncSource )( 
  1038.             IMediaStreamFilter __RPC_FAR * This,
  1039.             /* [in] */ IReferenceClock __RPC_FAR *pClock);
  1040.         
  1041.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSyncSource )( 
  1042.             IMediaStreamFilter __RPC_FAR * This,
  1043.             /* [out] */ IReferenceClock __RPC_FAR *__RPC_FAR *pClock);
  1044.         
  1045.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *EnumPins )( 
  1046.             IMediaStreamFilter __RPC_FAR * This,
  1047.             /* [out] */ IEnumPins __RPC_FAR *__RPC_FAR *ppEnum);
  1048.         
  1049.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *FindPin )( 
  1050.             IMediaStreamFilter __RPC_FAR * This,
  1051.             /* [string][in] */ LPCWSTR Id,
  1052.             /* [out] */ IPin __RPC_FAR *__RPC_FAR *ppPin);
  1053.         
  1054.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryFilterInfo )( 
  1055.             IMediaStreamFilter __RPC_FAR * This,
  1056.             /* [out] */ FILTER_INFO __RPC_FAR *pInfo);
  1057.         
  1058.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *JoinFilterGraph )( 
  1059.             IMediaStreamFilter __RPC_FAR * This,
  1060.             /* [in] */ IFilterGraph __RPC_FAR *pGraph,
  1061.             /* [string][in] */ LPCWSTR pName);
  1062.         
  1063.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryVendorInfo )( 
  1064.             IMediaStreamFilter __RPC_FAR * This,
  1065.             /* [string][out] */ LPWSTR __RPC_FAR *pVendorInfo);
  1066.         
  1067.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddMediaStream )( 
  1068.             IMediaStreamFilter __RPC_FAR * This,
  1069.             /* [in] */ IAMMediaStream __RPC_FAR *pAMMediaStream);
  1070.         
  1071.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetMediaStream )( 
  1072.             IMediaStreamFilter __RPC_FAR * This,
  1073.             /* [in] */ REFMSPID idPurpose,
  1074.             /* [out] */ IMediaStream __RPC_FAR *__RPC_FAR *ppMediaStream);
  1075.         
  1076.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *EnumMediaStreams )( 
  1077.             IMediaStreamFilter __RPC_FAR * This,
  1078.             /* [in] */ long Index,
  1079.             /* [out] */ IMediaStream __RPC_FAR *__RPC_FAR *ppMediaStream);
  1080.         
  1081.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SupportSeeking )( 
  1082.             IMediaStreamFilter __RPC_FAR * This,
  1083.             /* [in] */ BOOL bRenderer);
  1084.         
  1085.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ReferenceTimeToStreamTime )( 
  1086.             IMediaStreamFilter __RPC_FAR * This,
  1087.             /* [out][in] */ REFERENCE_TIME __RPC_FAR *pTime);
  1088.         
  1089.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCurrentStreamTime )( 
  1090.             IMediaStreamFilter __RPC_FAR * This,
  1091.             /* [out] */ REFERENCE_TIME __RPC_FAR *pCurrentStreamTime);
  1092.         
  1093.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *WaitUntil )( 
  1094.             IMediaStreamFilter __RPC_FAR * This,
  1095.             /* [in] */ REFERENCE_TIME WaitStreamTime);
  1096.         
  1097.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Flush )( 
  1098.             IMediaStreamFilter __RPC_FAR * This,
  1099.             /* [in] */ BOOL bCancelEOS);
  1100.         
  1101.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *EndOfStream )( 
  1102.             IMediaStreamFilter __RPC_FAR * This);
  1103.         
  1104.         END_INTERFACE
  1105.     } IMediaStreamFilterVtbl;
  1106.  
  1107.     interface IMediaStreamFilter
  1108.     {
  1109.         CONST_VTBL struct IMediaStreamFilterVtbl __RPC_FAR *lpVtbl;
  1110.     };
  1111.  
  1112.     
  1113.  
  1114. #ifdef COBJMACROS
  1115.  
  1116.  
  1117. #define IMediaStreamFilter_QueryInterface(This,riid,ppvObject)    \
  1118.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1119.  
  1120. #define IMediaStreamFilter_AddRef(This)    \
  1121.     (This)->lpVtbl -> AddRef(This)
  1122.  
  1123. #define IMediaStreamFilter_Release(This)    \
  1124.     (This)->lpVtbl -> Release(This)
  1125.  
  1126.  
  1127. #define IMediaStreamFilter_GetClassID(This,pClassID)    \
  1128.     (This)->lpVtbl -> GetClassID(This,pClassID)
  1129.  
  1130.  
  1131. #define IMediaStreamFilter_Stop(This)    \
  1132.     (This)->lpVtbl -> Stop(This)
  1133.  
  1134. #define IMediaStreamFilter_Pause(This)    \
  1135.     (This)->lpVtbl -> Pause(This)
  1136.  
  1137. #define IMediaStreamFilter_Run(This,tStart)    \
  1138.     (This)->lpVtbl -> Run(This,tStart)
  1139.  
  1140. #define IMediaStreamFilter_GetState(This,dwMilliSecsTimeout,State)    \
  1141.     (This)->lpVtbl -> GetState(This,dwMilliSecsTimeout,State)
  1142.  
  1143. #define IMediaStreamFilter_SetSyncSource(This,pClock)    \
  1144.     (This)->lpVtbl -> SetSyncSource(This,pClock)
  1145.  
  1146. #define IMediaStreamFilter_GetSyncSource(This,pClock)    \
  1147.     (This)->lpVtbl -> GetSyncSource(This,pClock)
  1148.  
  1149.  
  1150. #define IMediaStreamFilter_EnumPins(This,ppEnum)    \
  1151.     (This)->lpVtbl -> EnumPins(This,ppEnum)
  1152.  
  1153. #define IMediaStreamFilter_FindPin(This,Id,ppPin)    \
  1154.     (This)->lpVtbl -> FindPin(This,Id,ppPin)
  1155.  
  1156. #define IMediaStreamFilter_QueryFilterInfo(This,pInfo)    \
  1157.     (This)->lpVtbl -> QueryFilterInfo(This,pInfo)
  1158.  
  1159. #define IMediaStreamFilter_JoinFilterGraph(This,pGraph,pName)    \
  1160.     (This)->lpVtbl -> JoinFilterGraph(This,pGraph,pName)
  1161.  
  1162. #define IMediaStreamFilter_QueryVendorInfo(This,pVendorInfo)    \
  1163.     (This)->lpVtbl -> QueryVendorInfo(This,pVendorInfo)
  1164.  
  1165.  
  1166. #define IMediaStreamFilter_AddMediaStream(This,pAMMediaStream)    \
  1167.     (This)->lpVtbl -> AddMediaStream(This,pAMMediaStream)
  1168.  
  1169. #define IMediaStreamFilter_GetMediaStream(This,idPurpose,ppMediaStream)    \
  1170.     (This)->lpVtbl -> GetMediaStream(This,idPurpose,ppMediaStream)
  1171.  
  1172. #define IMediaStreamFilter_EnumMediaStreams(This,Index,ppMediaStream)    \
  1173.     (This)->lpVtbl -> EnumMediaStreams(This,Index,ppMediaStream)
  1174.  
  1175. #define IMediaStreamFilter_SupportSeeking(This,bRenderer)    \
  1176.     (This)->lpVtbl -> SupportSeeking(This,bRenderer)
  1177.  
  1178. #define IMediaStreamFilter_ReferenceTimeToStreamTime(This,pTime)    \
  1179.     (This)->lpVtbl -> ReferenceTimeToStreamTime(This,pTime)
  1180.  
  1181. #define IMediaStreamFilter_GetCurrentStreamTime(This,pCurrentStreamTime)    \
  1182.     (This)->lpVtbl -> GetCurrentStreamTime(This,pCurrentStreamTime)
  1183.  
  1184. #define IMediaStreamFilter_WaitUntil(This,WaitStreamTime)    \
  1185.     (This)->lpVtbl -> WaitUntil(This,WaitStreamTime)
  1186.  
  1187. #define IMediaStreamFilter_Flush(This,bCancelEOS)    \
  1188.     (This)->lpVtbl -> Flush(This,bCancelEOS)
  1189.  
  1190. #define IMediaStreamFilter_EndOfStream(This)    \
  1191.     (This)->lpVtbl -> EndOfStream(This)
  1192.  
  1193. #endif /* COBJMACROS */
  1194.  
  1195.  
  1196. #endif     /* C style interface */
  1197.  
  1198.  
  1199.  
  1200. HRESULT STDMETHODCALLTYPE IMediaStreamFilter_AddMediaStream_Proxy( 
  1201.     IMediaStreamFilter __RPC_FAR * This,
  1202.     /* [in] */ IAMMediaStream __RPC_FAR *pAMMediaStream);
  1203.  
  1204.  
  1205. void __RPC_STUB IMediaStreamFilter_AddMediaStream_Stub(
  1206.     IRpcStubBuffer *This,
  1207.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1208.     PRPC_MESSAGE _pRpcMessage,
  1209.     DWORD *_pdwStubPhase);
  1210.  
  1211.  
  1212. HRESULT STDMETHODCALLTYPE IMediaStreamFilter_GetMediaStream_Proxy( 
  1213.     IMediaStreamFilter __RPC_FAR * This,
  1214.     /* [in] */ REFMSPID idPurpose,
  1215.     /* [out] */ IMediaStream __RPC_FAR *__RPC_FAR *ppMediaStream);
  1216.  
  1217.  
  1218. void __RPC_STUB IMediaStreamFilter_GetMediaStream_Stub(
  1219.     IRpcStubBuffer *This,
  1220.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1221.     PRPC_MESSAGE _pRpcMessage,
  1222.     DWORD *_pdwStubPhase);
  1223.  
  1224.  
  1225. HRESULT STDMETHODCALLTYPE IMediaStreamFilter_EnumMediaStreams_Proxy( 
  1226.     IMediaStreamFilter __RPC_FAR * This,
  1227.     /* [in] */ long Index,
  1228.     /* [out] */ IMediaStream __RPC_FAR *__RPC_FAR *ppMediaStream);
  1229.  
  1230.  
  1231. void __RPC_STUB IMediaStreamFilter_EnumMediaStreams_Stub(
  1232.     IRpcStubBuffer *This,
  1233.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1234.     PRPC_MESSAGE _pRpcMessage,
  1235.     DWORD *_pdwStubPhase);
  1236.  
  1237.  
  1238. HRESULT STDMETHODCALLTYPE IMediaStreamFilter_SupportSeeking_Proxy( 
  1239.     IMediaStreamFilter __RPC_FAR * This,
  1240.     /* [in] */ BOOL bRenderer);
  1241.  
  1242.  
  1243. void __RPC_STUB IMediaStreamFilter_SupportSeeking_Stub(
  1244.     IRpcStubBuffer *This,
  1245.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1246.     PRPC_MESSAGE _pRpcMessage,
  1247.     DWORD *_pdwStubPhase);
  1248.  
  1249.  
  1250. HRESULT STDMETHODCALLTYPE IMediaStreamFilter_ReferenceTimeToStreamTime_Proxy( 
  1251.     IMediaStreamFilter __RPC_FAR * This,
  1252.     /* [out][in] */ REFERENCE_TIME __RPC_FAR *pTime);
  1253.  
  1254.  
  1255. void __RPC_STUB IMediaStreamFilter_ReferenceTimeToStreamTime_Stub(
  1256.     IRpcStubBuffer *This,
  1257.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1258.     PRPC_MESSAGE _pRpcMessage,
  1259.     DWORD *_pdwStubPhase);
  1260.  
  1261.  
  1262. HRESULT STDMETHODCALLTYPE IMediaStreamFilter_GetCurrentStreamTime_Proxy( 
  1263.     IMediaStreamFilter __RPC_FAR * This,
  1264.     /* [out] */ REFERENCE_TIME __RPC_FAR *pCurrentStreamTime);
  1265.  
  1266.  
  1267. void __RPC_STUB IMediaStreamFilter_GetCurrentStreamTime_Stub(
  1268.     IRpcStubBuffer *This,
  1269.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1270.     PRPC_MESSAGE _pRpcMessage,
  1271.     DWORD *_pdwStubPhase);
  1272.  
  1273.  
  1274. HRESULT STDMETHODCALLTYPE IMediaStreamFilter_WaitUntil_Proxy( 
  1275.     IMediaStreamFilter __RPC_FAR * This,
  1276.     /* [in] */ REFERENCE_TIME WaitStreamTime);
  1277.  
  1278.  
  1279. void __RPC_STUB IMediaStreamFilter_WaitUntil_Stub(
  1280.     IRpcStubBuffer *This,
  1281.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1282.     PRPC_MESSAGE _pRpcMessage,
  1283.     DWORD *_pdwStubPhase);
  1284.  
  1285.  
  1286. HRESULT STDMETHODCALLTYPE IMediaStreamFilter_Flush_Proxy( 
  1287.     IMediaStreamFilter __RPC_FAR * This,
  1288.     /* [in] */ BOOL bCancelEOS);
  1289.  
  1290.  
  1291. void __RPC_STUB IMediaStreamFilter_Flush_Stub(
  1292.     IRpcStubBuffer *This,
  1293.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1294.     PRPC_MESSAGE _pRpcMessage,
  1295.     DWORD *_pdwStubPhase);
  1296.  
  1297.  
  1298. HRESULT STDMETHODCALLTYPE IMediaStreamFilter_EndOfStream_Proxy( 
  1299.     IMediaStreamFilter __RPC_FAR * This);
  1300.  
  1301.  
  1302. void __RPC_STUB IMediaStreamFilter_EndOfStream_Stub(
  1303.     IRpcStubBuffer *This,
  1304.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1305.     PRPC_MESSAGE _pRpcMessage,
  1306.     DWORD *_pdwStubPhase);
  1307.  
  1308.  
  1309.  
  1310. #endif     /* __IMediaStreamFilter_INTERFACE_DEFINED__ */
  1311.  
  1312.  
  1313. #ifndef __IDirectDrawMediaSampleAllocator_INTERFACE_DEFINED__
  1314. #define __IDirectDrawMediaSampleAllocator_INTERFACE_DEFINED__
  1315.  
  1316. /****************************************
  1317.  * Generated header for interface: IDirectDrawMediaSampleAllocator
  1318.  * at Thu Nov 13 19:28:37 1997
  1319.  * using MIDL 3.02.88
  1320.  ****************************************/
  1321. /* [unique][uuid][local][object] */ 
  1322.  
  1323.  
  1324.  
  1325. EXTERN_C const IID IID_IDirectDrawMediaSampleAllocator;
  1326.  
  1327. #if defined(__cplusplus) && !defined(CINTERFACE)
  1328.     
  1329.     interface DECLSPEC_UUID("AB6B4AFC-F6E4-11d0-900D-00C04FD9189D")
  1330.     IDirectDrawMediaSampleAllocator : public IUnknown
  1331.     {
  1332.     public:
  1333.         virtual HRESULT STDMETHODCALLTYPE GetDirectDraw( 
  1334.             IDirectDraw __RPC_FAR *__RPC_FAR *ppDirectDraw) = 0;
  1335.         
  1336.     };
  1337.     
  1338. #else     /* C style interface */
  1339.  
  1340.     typedef struct IDirectDrawMediaSampleAllocatorVtbl
  1341.     {
  1342.         BEGIN_INTERFACE
  1343.         
  1344.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  1345.             IDirectDrawMediaSampleAllocator __RPC_FAR * This,
  1346.             /* [in] */ REFIID riid,
  1347.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1348.         
  1349.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  1350.             IDirectDrawMediaSampleAllocator __RPC_FAR * This);
  1351.         
  1352.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  1353.             IDirectDrawMediaSampleAllocator __RPC_FAR * This);
  1354.         
  1355.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDirectDraw )( 
  1356.             IDirectDrawMediaSampleAllocator __RPC_FAR * This,
  1357.             IDirectDraw __RPC_FAR *__RPC_FAR *ppDirectDraw);
  1358.         
  1359.         END_INTERFACE
  1360.     } IDirectDrawMediaSampleAllocatorVtbl;
  1361.  
  1362.     interface IDirectDrawMediaSampleAllocator
  1363.     {
  1364.         CONST_VTBL struct IDirectDrawMediaSampleAllocatorVtbl __RPC_FAR *lpVtbl;
  1365.     };
  1366.  
  1367.     
  1368.  
  1369. #ifdef COBJMACROS
  1370.  
  1371.  
  1372. #define IDirectDrawMediaSampleAllocator_QueryInterface(This,riid,ppvObject)    \
  1373.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1374.  
  1375. #define IDirectDrawMediaSampleAllocator_AddRef(This)    \
  1376.     (This)->lpVtbl -> AddRef(This)
  1377.  
  1378. #define IDirectDrawMediaSampleAllocator_Release(This)    \
  1379.     (This)->lpVtbl -> Release(This)
  1380.  
  1381.  
  1382. #define IDirectDrawMediaSampleAllocator_GetDirectDraw(This,ppDirectDraw)    \
  1383.     (This)->lpVtbl -> GetDirectDraw(This,ppDirectDraw)
  1384.  
  1385. #endif /* COBJMACROS */
  1386.  
  1387.  
  1388. #endif     /* C style interface */
  1389.  
  1390.  
  1391.  
  1392. HRESULT STDMETHODCALLTYPE IDirectDrawMediaSampleAllocator_GetDirectDraw_Proxy( 
  1393.     IDirectDrawMediaSampleAllocator __RPC_FAR * This,
  1394.     IDirectDraw __RPC_FAR *__RPC_FAR *ppDirectDraw);
  1395.  
  1396.  
  1397. void __RPC_STUB IDirectDrawMediaSampleAllocator_GetDirectDraw_Stub(
  1398.     IRpcStubBuffer *This,
  1399.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1400.     PRPC_MESSAGE _pRpcMessage,
  1401.     DWORD *_pdwStubPhase);
  1402.  
  1403.  
  1404.  
  1405. #endif     /* __IDirectDrawMediaSampleAllocator_INTERFACE_DEFINED__ */
  1406.  
  1407.  
  1408. #ifndef __IDirectDrawMediaSample_INTERFACE_DEFINED__
  1409. #define __IDirectDrawMediaSample_INTERFACE_DEFINED__
  1410.  
  1411. /****************************************
  1412.  * Generated header for interface: IDirectDrawMediaSample
  1413.  * at Thu Nov 13 19:28:37 1997
  1414.  * using MIDL 3.02.88
  1415.  ****************************************/
  1416. /* [unique][uuid][local][object] */ 
  1417.  
  1418.  
  1419.  
  1420. EXTERN_C const IID IID_IDirectDrawMediaSample;
  1421.  
  1422. #if defined(__cplusplus) && !defined(CINTERFACE)
  1423.     
  1424.     interface DECLSPEC_UUID("AB6B4AFE-F6E4-11d0-900D-00C04FD9189D")
  1425.     IDirectDrawMediaSample : public IUnknown
  1426.     {
  1427.     public:
  1428.         virtual HRESULT STDMETHODCALLTYPE GetSurfaceAndReleaseLock( 
  1429.             /* [out] */ IDirectDrawSurface __RPC_FAR *__RPC_FAR *ppDirectDrawSurface,
  1430.             /* [out] */ RECT __RPC_FAR *pRect) = 0;
  1431.         
  1432.         virtual HRESULT STDMETHODCALLTYPE LockMediaSamplePointer( void) = 0;
  1433.         
  1434.     };
  1435.     
  1436. #else     /* C style interface */
  1437.  
  1438.     typedef struct IDirectDrawMediaSampleVtbl
  1439.     {
  1440.         BEGIN_INTERFACE
  1441.         
  1442.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  1443.             IDirectDrawMediaSample __RPC_FAR * This,
  1444.             /* [in] */ REFIID riid,
  1445.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1446.         
  1447.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  1448.             IDirectDrawMediaSample __RPC_FAR * This);
  1449.         
  1450.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  1451.             IDirectDrawMediaSample __RPC_FAR * This);
  1452.         
  1453.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSurfaceAndReleaseLock )( 
  1454.             IDirectDrawMediaSample __RPC_FAR * This,
  1455.             /* [out] */ IDirectDrawSurface __RPC_FAR *__RPC_FAR *ppDirectDrawSurface,
  1456.             /* [out] */ RECT __RPC_FAR *pRect);
  1457.         
  1458.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *LockMediaSamplePointer )( 
  1459.             IDirectDrawMediaSample __RPC_FAR * This);
  1460.         
  1461.         END_INTERFACE
  1462.     } IDirectDrawMediaSampleVtbl;
  1463.  
  1464.     interface IDirectDrawMediaSample
  1465.     {
  1466.         CONST_VTBL struct IDirectDrawMediaSampleVtbl __RPC_FAR *lpVtbl;
  1467.     };
  1468.  
  1469.     
  1470.  
  1471. #ifdef COBJMACROS
  1472.  
  1473.  
  1474. #define IDirectDrawMediaSample_QueryInterface(This,riid,ppvObject)    \
  1475.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1476.  
  1477. #define IDirectDrawMediaSample_AddRef(This)    \
  1478.     (This)->lpVtbl -> AddRef(This)
  1479.  
  1480. #define IDirectDrawMediaSample_Release(This)    \
  1481.     (This)->lpVtbl -> Release(This)
  1482.  
  1483.  
  1484. #define IDirectDrawMediaSample_GetSurfaceAndReleaseLock(This,ppDirectDrawSurface,pRect)    \
  1485.     (This)->lpVtbl -> GetSurfaceAndReleaseLock(This,ppDirectDrawSurface,pRect)
  1486.  
  1487. #define IDirectDrawMediaSample_LockMediaSamplePointer(This)    \
  1488.     (This)->lpVtbl -> LockMediaSamplePointer(This)
  1489.  
  1490. #endif /* COBJMACROS */
  1491.  
  1492.  
  1493. #endif     /* C style interface */
  1494.  
  1495.  
  1496.  
  1497. HRESULT STDMETHODCALLTYPE IDirectDrawMediaSample_GetSurfaceAndReleaseLock_Proxy( 
  1498.     IDirectDrawMediaSample __RPC_FAR * This,
  1499.     /* [out] */ IDirectDrawSurface __RPC_FAR *__RPC_FAR *ppDirectDrawSurface,
  1500.     /* [out] */ RECT __RPC_FAR *pRect);
  1501.  
  1502.  
  1503. void __RPC_STUB IDirectDrawMediaSample_GetSurfaceAndReleaseLock_Stub(
  1504.     IRpcStubBuffer *This,
  1505.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1506.     PRPC_MESSAGE _pRpcMessage,
  1507.     DWORD *_pdwStubPhase);
  1508.  
  1509.  
  1510. HRESULT STDMETHODCALLTYPE IDirectDrawMediaSample_LockMediaSamplePointer_Proxy( 
  1511.     IDirectDrawMediaSample __RPC_FAR * This);
  1512.  
  1513.  
  1514. void __RPC_STUB IDirectDrawMediaSample_LockMediaSamplePointer_Stub(
  1515.     IRpcStubBuffer *This,
  1516.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1517.     PRPC_MESSAGE _pRpcMessage,
  1518.     DWORD *_pdwStubPhase);
  1519.  
  1520.  
  1521.  
  1522. #endif     /* __IDirectDrawMediaSample_INTERFACE_DEFINED__ */
  1523.  
  1524.  
  1525. #ifndef __IAMMediaTypeStream_INTERFACE_DEFINED__
  1526. #define __IAMMediaTypeStream_INTERFACE_DEFINED__
  1527.  
  1528. /****************************************
  1529.  * Generated header for interface: IAMMediaTypeStream
  1530.  * at Thu Nov 13 19:28:37 1997
  1531.  * using MIDL 3.02.88
  1532.  ****************************************/
  1533. /* [unique][uuid][local][object] */ 
  1534.  
  1535.  
  1536.  
  1537. EXTERN_C const IID IID_IAMMediaTypeStream;
  1538.  
  1539. #if defined(__cplusplus) && !defined(CINTERFACE)
  1540.     
  1541.     interface DECLSPEC_UUID("AB6B4AFA-F6E4-11d0-900D-00C04FD9189D")
  1542.     IAMMediaTypeStream : public IMediaStream
  1543.     {
  1544.     public:
  1545.         virtual HRESULT STDMETHODCALLTYPE GetFormat( 
  1546.             /* [out] */ AM_MEDIA_TYPE __RPC_FAR *pMediaType,
  1547.             /* [in] */ DWORD dwFlags) = 0;
  1548.         
  1549.         virtual HRESULT STDMETHODCALLTYPE SetFormat( 
  1550.             /* [in] */ AM_MEDIA_TYPE __RPC_FAR *pMediaType,
  1551.             /* [in] */ DWORD dwFlags) = 0;
  1552.         
  1553.         virtual HRESULT STDMETHODCALLTYPE CreateSample( 
  1554.             /* [in] */ long lSampleSize,
  1555.             /* [optional][in] */ BYTE __RPC_FAR *pbBuffer,
  1556.             /* [in] */ DWORD dwFlags,
  1557.             /* [optional][in] */ IUnknown __RPC_FAR *pUnkOuter,
  1558.             /* [out] */ IAMMediaTypeSample __RPC_FAR *__RPC_FAR *ppAMMediaTypeSample) = 0;
  1559.         
  1560.         virtual HRESULT STDMETHODCALLTYPE GetStreamAllocatorRequirements( 
  1561.             /* [out] */ ALLOCATOR_PROPERTIES __RPC_FAR *pProps) = 0;
  1562.         
  1563.         virtual HRESULT STDMETHODCALLTYPE SetStreamAllocatorRequirements( 
  1564.             /* [in] */ ALLOCATOR_PROPERTIES __RPC_FAR *pProps) = 0;
  1565.         
  1566.     };
  1567.     
  1568. #else     /* C style interface */
  1569.  
  1570.     typedef struct IAMMediaTypeStreamVtbl
  1571.     {
  1572.         BEGIN_INTERFACE
  1573.         
  1574.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  1575.             IAMMediaTypeStream __RPC_FAR * This,
  1576.             /* [in] */ REFIID riid,
  1577.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1578.         
  1579.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  1580.             IAMMediaTypeStream __RPC_FAR * This);
  1581.         
  1582.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  1583.             IAMMediaTypeStream __RPC_FAR * This);
  1584.         
  1585.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetMultiMediaStream )( 
  1586.             IAMMediaTypeStream __RPC_FAR * This,
  1587.             /* [out] */ IMultiMediaStream __RPC_FAR *__RPC_FAR *ppMultiMediaStream);
  1588.         
  1589.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetInformation )( 
  1590.             IAMMediaTypeStream __RPC_FAR * This,
  1591.             /* [optional][out] */ MSPID __RPC_FAR *pPurposeId,
  1592.             /* [optional][out] */ STREAM_TYPE __RPC_FAR *pType);
  1593.         
  1594.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetSameFormat )( 
  1595.             IAMMediaTypeStream __RPC_FAR * This,
  1596.             /* [in] */ IMediaStream __RPC_FAR *pStreamThatHasDesiredFormat,
  1597.             /* [in] */ DWORD dwFlags);
  1598.         
  1599.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AllocateSample )( 
  1600.             IAMMediaTypeStream __RPC_FAR * This,
  1601.             /* [in] */ DWORD dwFlags,
  1602.             /* [out] */ IStreamSample __RPC_FAR *__RPC_FAR *ppSample);
  1603.         
  1604.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateSharedSample )( 
  1605.             IAMMediaTypeStream __RPC_FAR * This,
  1606.             /* [in] */ IStreamSample __RPC_FAR *pExistingSample,
  1607.             /* [in] */ DWORD dwFlags,
  1608.             /* [out] */ IStreamSample __RPC_FAR *__RPC_FAR *ppNewSample);
  1609.         
  1610.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SendEndOfStream )( 
  1611.             IAMMediaTypeStream __RPC_FAR * This,
  1612.             DWORD dwFlags);
  1613.         
  1614.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetFormat )( 
  1615.             IAMMediaTypeStream __RPC_FAR * This,
  1616.             /* [out] */ AM_MEDIA_TYPE __RPC_FAR *pMediaType,
  1617.             /* [in] */ DWORD dwFlags);
  1618.         
  1619.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetFormat )( 
  1620.             IAMMediaTypeStream __RPC_FAR * This,
  1621.             /* [in] */ AM_MEDIA_TYPE __RPC_FAR *pMediaType,
  1622.             /* [in] */ DWORD dwFlags);
  1623.         
  1624.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateSample )( 
  1625.             IAMMediaTypeStream __RPC_FAR * This,
  1626.             /* [in] */ long lSampleSize,
  1627.             /* [optional][in] */ BYTE __RPC_FAR *pbBuffer,
  1628.             /* [in] */ DWORD dwFlags,
  1629.             /* [optional][in] */ IUnknown __RPC_FAR *pUnkOuter,
  1630.             /* [out] */ IAMMediaTypeSample __RPC_FAR *__RPC_FAR *ppAMMediaTypeSample);
  1631.         
  1632.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetStreamAllocatorRequirements )( 
  1633.             IAMMediaTypeStream __RPC_FAR * This,
  1634.             /* [out] */ ALLOCATOR_PROPERTIES __RPC_FAR *pProps);
  1635.         
  1636.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetStreamAllocatorRequirements )( 
  1637.             IAMMediaTypeStream __RPC_FAR * This,
  1638.             /* [in] */ ALLOCATOR_PROPERTIES __RPC_FAR *pProps);
  1639.         
  1640.         END_INTERFACE
  1641.     } IAMMediaTypeStreamVtbl;
  1642.  
  1643.     interface IAMMediaTypeStream
  1644.     {
  1645.         CONST_VTBL struct IAMMediaTypeStreamVtbl __RPC_FAR *lpVtbl;
  1646.     };
  1647.  
  1648.     
  1649.  
  1650. #ifdef COBJMACROS
  1651.  
  1652.  
  1653. #define IAMMediaTypeStream_QueryInterface(This,riid,ppvObject)    \
  1654.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1655.  
  1656. #define IAMMediaTypeStream_AddRef(This)    \
  1657.     (This)->lpVtbl -> AddRef(This)
  1658.  
  1659. #define IAMMediaTypeStream_Release(This)    \
  1660.     (This)->lpVtbl -> Release(This)
  1661.  
  1662.  
  1663. #define IAMMediaTypeStream_GetMultiMediaStream(This,ppMultiMediaStream)    \
  1664.     (This)->lpVtbl -> GetMultiMediaStream(This,ppMultiMediaStream)
  1665.  
  1666. #define IAMMediaTypeStream_GetInformation(This,pPurposeId,pType)    \
  1667.     (This)->lpVtbl -> GetInformation(This,pPurposeId,pType)
  1668.  
  1669. #define IAMMediaTypeStream_SetSameFormat(This,pStreamThatHasDesiredFormat,dwFlags)    \
  1670.     (This)->lpVtbl -> SetSameFormat(This,pStreamThatHasDesiredFormat,dwFlags)
  1671.  
  1672. #define IAMMediaTypeStream_AllocateSample(This,dwFlags,ppSample)    \
  1673.     (This)->lpVtbl -> AllocateSample(This,dwFlags,ppSample)
  1674.  
  1675. #define IAMMediaTypeStream_CreateSharedSample(This,pExistingSample,dwFlags,ppNewSample)    \
  1676.     (This)->lpVtbl -> CreateSharedSample(This,pExistingSample,dwFlags,ppNewSample)
  1677.  
  1678. #define IAMMediaTypeStream_SendEndOfStream(This,dwFlags)    \
  1679.     (This)->lpVtbl -> SendEndOfStream(This,dwFlags)
  1680.  
  1681.  
  1682. #define IAMMediaTypeStream_GetFormat(This,pMediaType,dwFlags)    \
  1683.     (This)->lpVtbl -> GetFormat(This,pMediaType,dwFlags)
  1684.  
  1685. #define IAMMediaTypeStream_SetFormat(This,pMediaType,dwFlags)    \
  1686.     (This)->lpVtbl -> SetFormat(This,pMediaType,dwFlags)
  1687.  
  1688. #define IAMMediaTypeStream_CreateSample(This,lSampleSize,pbBuffer,dwFlags,pUnkOuter,ppAMMediaTypeSample)    \
  1689.     (This)->lpVtbl -> CreateSample(This,lSampleSize,pbBuffer,dwFlags,pUnkOuter,ppAMMediaTypeSample)
  1690.  
  1691. #define IAMMediaTypeStream_GetStreamAllocatorRequirements(This,pProps)    \
  1692.     (This)->lpVtbl -> GetStreamAllocatorRequirements(This,pProps)
  1693.  
  1694. #define IAMMediaTypeStream_SetStreamAllocatorRequirements(This,pProps)    \
  1695.     (This)->lpVtbl -> SetStreamAllocatorRequirements(This,pProps)
  1696.  
  1697. #endif /* COBJMACROS */
  1698.  
  1699.  
  1700. #endif     /* C style interface */
  1701.  
  1702.  
  1703.  
  1704. HRESULT STDMETHODCALLTYPE IAMMediaTypeStream_GetFormat_Proxy( 
  1705.     IAMMediaTypeStream __RPC_FAR * This,
  1706.     /* [out] */ AM_MEDIA_TYPE __RPC_FAR *pMediaType,
  1707.     /* [in] */ DWORD dwFlags);
  1708.  
  1709.  
  1710. void __RPC_STUB IAMMediaTypeStream_GetFormat_Stub(
  1711.     IRpcStubBuffer *This,
  1712.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1713.     PRPC_MESSAGE _pRpcMessage,
  1714.     DWORD *_pdwStubPhase);
  1715.  
  1716.  
  1717. HRESULT STDMETHODCALLTYPE IAMMediaTypeStream_SetFormat_Proxy( 
  1718.     IAMMediaTypeStream __RPC_FAR * This,
  1719.     /* [in] */ AM_MEDIA_TYPE __RPC_FAR *pMediaType,
  1720.     /* [in] */ DWORD dwFlags);
  1721.  
  1722.  
  1723. void __RPC_STUB IAMMediaTypeStream_SetFormat_Stub(
  1724.     IRpcStubBuffer *This,
  1725.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1726.     PRPC_MESSAGE _pRpcMessage,
  1727.     DWORD *_pdwStubPhase);
  1728.  
  1729.  
  1730. HRESULT STDMETHODCALLTYPE IAMMediaTypeStream_CreateSample_Proxy( 
  1731.     IAMMediaTypeStream __RPC_FAR * This,
  1732.     /* [in] */ long lSampleSize,
  1733.     /* [optional][in] */ BYTE __RPC_FAR *pbBuffer,
  1734.     /* [in] */ DWORD dwFlags,
  1735.     /* [optional][in] */ IUnknown __RPC_FAR *pUnkOuter,
  1736.     /* [out] */ IAMMediaTypeSample __RPC_FAR *__RPC_FAR *ppAMMediaTypeSample);
  1737.  
  1738.  
  1739. void __RPC_STUB IAMMediaTypeStream_CreateSample_Stub(
  1740.     IRpcStubBuffer *This,
  1741.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1742.     PRPC_MESSAGE _pRpcMessage,
  1743.     DWORD *_pdwStubPhase);
  1744.  
  1745.  
  1746. HRESULT STDMETHODCALLTYPE IAMMediaTypeStream_GetStreamAllocatorRequirements_Proxy( 
  1747.     IAMMediaTypeStream __RPC_FAR * This,
  1748.     /* [out] */ ALLOCATOR_PROPERTIES __RPC_FAR *pProps);
  1749.  
  1750.  
  1751. void __RPC_STUB IAMMediaTypeStream_GetStreamAllocatorRequirements_Stub(
  1752.     IRpcStubBuffer *This,
  1753.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1754.     PRPC_MESSAGE _pRpcMessage,
  1755.     DWORD *_pdwStubPhase);
  1756.  
  1757.  
  1758. HRESULT STDMETHODCALLTYPE IAMMediaTypeStream_SetStreamAllocatorRequirements_Proxy( 
  1759.     IAMMediaTypeStream __RPC_FAR * This,
  1760.     /* [in] */ ALLOCATOR_PROPERTIES __RPC_FAR *pProps);
  1761.  
  1762.  
  1763. void __RPC_STUB IAMMediaTypeStream_SetStreamAllocatorRequirements_Stub(
  1764.     IRpcStubBuffer *This,
  1765.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1766.     PRPC_MESSAGE _pRpcMessage,
  1767.     DWORD *_pdwStubPhase);
  1768.  
  1769.  
  1770.  
  1771. #endif     /* __IAMMediaTypeStream_INTERFACE_DEFINED__ */
  1772.  
  1773.  
  1774. #ifndef __IAMMediaTypeSample_INTERFACE_DEFINED__
  1775. #define __IAMMediaTypeSample_INTERFACE_DEFINED__
  1776.  
  1777. /****************************************
  1778.  * Generated header for interface: IAMMediaTypeSample
  1779.  * at Thu Nov 13 19:28:37 1997
  1780.  * using MIDL 3.02.88
  1781.  ****************************************/
  1782. /* [unique][uuid][local][object] */ 
  1783.  
  1784.  
  1785.  
  1786. EXTERN_C const IID IID_IAMMediaTypeSample;
  1787.  
  1788. #if defined(__cplusplus) && !defined(CINTERFACE)
  1789.     
  1790.     interface DECLSPEC_UUID("AB6B4AFB-F6E4-11d0-900D-00C04FD9189D")
  1791.     IAMMediaTypeSample : public IStreamSample
  1792.     {
  1793.     public:
  1794.         virtual HRESULT STDMETHODCALLTYPE SetPointer( 
  1795.             /* [in] */ BYTE __RPC_FAR *pBuffer,
  1796.             /* [in] */ long lSize) = 0;
  1797.         
  1798.         virtual HRESULT STDMETHODCALLTYPE GetPointer( 
  1799.             /* [out] */ BYTE __RPC_FAR *__RPC_FAR *ppBuffer) = 0;
  1800.         
  1801.         virtual long STDMETHODCALLTYPE GetSize( void) = 0;
  1802.         
  1803.         virtual HRESULT STDMETHODCALLTYPE GetTime( 
  1804.             /* [out] */ REFERENCE_TIME __RPC_FAR *pTimeStart,
  1805.             /* [out] */ REFERENCE_TIME __RPC_FAR *pTimeEnd) = 0;
  1806.         
  1807.         virtual HRESULT STDMETHODCALLTYPE SetTime( 
  1808.             /* [in] */ REFERENCE_TIME __RPC_FAR *pTimeStart,
  1809.             /* [in] */ REFERENCE_TIME __RPC_FAR *pTimeEnd) = 0;
  1810.         
  1811.         virtual HRESULT STDMETHODCALLTYPE IsSyncPoint( void) = 0;
  1812.         
  1813.         virtual HRESULT STDMETHODCALLTYPE SetSyncPoint( 
  1814.             BOOL bIsSyncPoint) = 0;
  1815.         
  1816.         virtual HRESULT STDMETHODCALLTYPE IsPreroll( void) = 0;
  1817.         
  1818.         virtual HRESULT STDMETHODCALLTYPE SetPreroll( 
  1819.             BOOL bIsPreroll) = 0;
  1820.         
  1821.         virtual long STDMETHODCALLTYPE GetActualDataLength( void) = 0;
  1822.         
  1823.         virtual HRESULT STDMETHODCALLTYPE SetActualDataLength( 
  1824.             long __MIDL_0022) = 0;
  1825.         
  1826.         virtual HRESULT STDMETHODCALLTYPE GetMediaType( 
  1827.             AM_MEDIA_TYPE __RPC_FAR *__RPC_FAR *ppMediaType) = 0;
  1828.         
  1829.         virtual HRESULT STDMETHODCALLTYPE SetMediaType( 
  1830.             AM_MEDIA_TYPE __RPC_FAR *pMediaType) = 0;
  1831.         
  1832.         virtual HRESULT STDMETHODCALLTYPE IsDiscontinuity( void) = 0;
  1833.         
  1834.         virtual HRESULT STDMETHODCALLTYPE SetDiscontinuity( 
  1835.             BOOL bDiscontinuity) = 0;
  1836.         
  1837.         virtual HRESULT STDMETHODCALLTYPE GetMediaTime( 
  1838.             /* [out] */ LONGLONG __RPC_FAR *pTimeStart,
  1839.             /* [out] */ LONGLONG __RPC_FAR *pTimeEnd) = 0;
  1840.         
  1841.         virtual HRESULT STDMETHODCALLTYPE SetMediaTime( 
  1842.             /* [in] */ LONGLONG __RPC_FAR *pTimeStart,
  1843.             /* [in] */ LONGLONG __RPC_FAR *pTimeEnd) = 0;
  1844.         
  1845.     };
  1846.     
  1847. #else     /* C style interface */
  1848.  
  1849.     typedef struct IAMMediaTypeSampleVtbl
  1850.     {
  1851.         BEGIN_INTERFACE
  1852.         
  1853.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  1854.             IAMMediaTypeSample __RPC_FAR * This,
  1855.             /* [in] */ REFIID riid,
  1856.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1857.         
  1858.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  1859.             IAMMediaTypeSample __RPC_FAR * This);
  1860.         
  1861.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  1862.             IAMMediaTypeSample __RPC_FAR * This);
  1863.         
  1864.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetMediaStream )( 
  1865.             IAMMediaTypeSample __RPC_FAR * This,
  1866.             /* [in] */ IMediaStream __RPC_FAR *__RPC_FAR *ppMediaStream);
  1867.         
  1868.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSampleTimes )( 
  1869.             IAMMediaTypeSample __RPC_FAR * This,
  1870.             /* [optional][out] */ STREAM_TIME __RPC_FAR *pStartTime,
  1871.             /* [optional][out] */ STREAM_TIME __RPC_FAR *pEndTime,
  1872.             /* [optional][out] */ STREAM_TIME __RPC_FAR *pCurrentTime);
  1873.         
  1874.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetSampleTimes )( 
  1875.             IAMMediaTypeSample __RPC_FAR * This,
  1876.             /* [optional][in] */ const STREAM_TIME __RPC_FAR *pStartTime,
  1877.             /* [optional][in] */ const STREAM_TIME __RPC_FAR *pEndTime);
  1878.         
  1879.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
  1880.             IAMMediaTypeSample __RPC_FAR * This,
  1881.             /* [in] */ DWORD dwFlags,
  1882.             /* [optional][in] */ HANDLE hEvent,
  1883.             /* [optional][in] */ PAPCFUNC pfnAPC,
  1884.             /* [optional][in] */ DWORD dwAPCData);
  1885.         
  1886.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CompletionStatus )( 
  1887.             IAMMediaTypeSample __RPC_FAR * This,
  1888.             /* [in] */ DWORD dwFlags,
  1889.             /* [optional][in] */ DWORD dwMilliseconds);
  1890.         
  1891.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetPointer )( 
  1892.             IAMMediaTypeSample __RPC_FAR * This,
  1893.             /* [in] */ BYTE __RPC_FAR *pBuffer,
  1894.             /* [in] */ long lSize);
  1895.         
  1896.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPointer )( 
  1897.             IAMMediaTypeSample __RPC_FAR * This,
  1898.             /* [out] */ BYTE __RPC_FAR *__RPC_FAR *ppBuffer);
  1899.         
  1900.         long ( STDMETHODCALLTYPE __RPC_FAR *GetSize )( 
  1901.             IAMMediaTypeSample __RPC_FAR * This);
  1902.         
  1903.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTime )( 
  1904.             IAMMediaTypeSample __RPC_FAR * This,
  1905.             /* [out] */ REFERENCE_TIME __RPC_FAR *pTimeStart,
  1906.             /* [out] */ REFERENCE_TIME __RPC_FAR *pTimeEnd);
  1907.         
  1908.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetTime )( 
  1909.             IAMMediaTypeSample __RPC_FAR * This,
  1910.             /* [in] */ REFERENCE_TIME __RPC_FAR *pTimeStart,
  1911.             /* [in] */ REFERENCE_TIME __RPC_FAR *pTimeEnd);
  1912.         
  1913.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsSyncPoint )( 
  1914.             IAMMediaTypeSample __RPC_FAR * This);
  1915.         
  1916.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetSyncPoint )( 
  1917.             IAMMediaTypeSample __RPC_FAR * This,
  1918.             BOOL bIsSyncPoint);
  1919.         
  1920.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsPreroll )( 
  1921.             IAMMediaTypeSample __RPC_FAR * This);
  1922.         
  1923.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetPreroll )( 
  1924.             IAMMediaTypeSample __RPC_FAR * This,
  1925.             BOOL bIsPreroll);
  1926.         
  1927.         long ( STDMETHODCALLTYPE __RPC_FAR *GetActualDataLength )( 
  1928.             IAMMediaTypeSample __RPC_FAR * This);
  1929.         
  1930.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetActualDataLength )( 
  1931.             IAMMediaTypeSample __RPC_FAR * This,
  1932.             long __MIDL_0022);
  1933.         
  1934.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetMediaType )( 
  1935.             IAMMediaTypeSample __RPC_FAR * This,
  1936.             AM_MEDIA_TYPE __RPC_FAR *__RPC_FAR *ppMediaType);
  1937.         
  1938.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetMediaType )( 
  1939.             IAMMediaTypeSample __RPC_FAR * This,
  1940.             AM_MEDIA_TYPE __RPC_FAR *pMediaType);
  1941.         
  1942.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsDiscontinuity )( 
  1943.             IAMMediaTypeSample __RPC_FAR * This);
  1944.         
  1945.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetDiscontinuity )( 
  1946.             IAMMediaTypeSample __RPC_FAR * This,
  1947.             BOOL bDiscontinuity);
  1948.         
  1949.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetMediaTime )( 
  1950.             IAMMediaTypeSample __RPC_FAR * This,
  1951.             /* [out] */ LONGLONG __RPC_FAR *pTimeStart,
  1952.             /* [out] */ LONGLONG __RPC_FAR *pTimeEnd);
  1953.         
  1954.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetMediaTime )( 
  1955.             IAMMediaTypeSample __RPC_FAR * This,
  1956.             /* [in] */ LONGLONG __RPC_FAR *pTimeStart,
  1957.             /* [in] */ LONGLONG __RPC_FAR *pTimeEnd);
  1958.         
  1959.         END_INTERFACE
  1960.     } IAMMediaTypeSampleVtbl;
  1961.  
  1962.     interface IAMMediaTypeSample
  1963.     {
  1964.         CONST_VTBL struct IAMMediaTypeSampleVtbl __RPC_FAR *lpVtbl;
  1965.     };
  1966.  
  1967.     
  1968.  
  1969. #ifdef COBJMACROS
  1970.  
  1971.  
  1972. #define IAMMediaTypeSample_QueryInterface(This,riid,ppvObject)    \
  1973.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1974.  
  1975. #define IAMMediaTypeSample_AddRef(This)    \
  1976.     (This)->lpVtbl -> AddRef(This)
  1977.  
  1978. #define IAMMediaTypeSample_Release(This)    \
  1979.     (This)->lpVtbl -> Release(This)
  1980.  
  1981.  
  1982. #define IAMMediaTypeSample_GetMediaStream(This,ppMediaStream)    \
  1983.     (This)->lpVtbl -> GetMediaStream(This,ppMediaStream)
  1984.  
  1985. #define IAMMediaTypeSample_GetSampleTimes(This,pStartTime,pEndTime,pCurrentTime)    \
  1986.     (This)->lpVtbl -> GetSampleTimes(This,pStartTime,pEndTime,pCurrentTime)
  1987.  
  1988. #define IAMMediaTypeSample_SetSampleTimes(This,pStartTime,pEndTime)    \
  1989.     (This)->lpVtbl -> SetSampleTimes(This,pStartTime,pEndTime)
  1990.  
  1991. #define IAMMediaTypeSample_Update(This,dwFlags,hEvent,pfnAPC,dwAPCData)    \
  1992.     (This)->lpVtbl -> Update(This,dwFlags,hEvent,pfnAPC,dwAPCData)
  1993.  
  1994. #define IAMMediaTypeSample_CompletionStatus(This,dwFlags,dwMilliseconds)    \
  1995.     (This)->lpVtbl -> CompletionStatus(This,dwFlags,dwMilliseconds)
  1996.  
  1997.  
  1998. #define IAMMediaTypeSample_SetPointer(This,pBuffer,lSize)    \
  1999.     (This)->lpVtbl -> SetPointer(This,pBuffer,lSize)
  2000.  
  2001. #define IAMMediaTypeSample_GetPointer(This,ppBuffer)    \
  2002.     (This)->lpVtbl -> GetPointer(This,ppBuffer)
  2003.  
  2004. #define IAMMediaTypeSample_GetSize(This)    \
  2005.     (This)->lpVtbl -> GetSize(This)
  2006.  
  2007. #define IAMMediaTypeSample_GetTime(This,pTimeStart,pTimeEnd)    \
  2008.     (This)->lpVtbl -> GetTime(This,pTimeStart,pTimeEnd)
  2009.  
  2010. #define IAMMediaTypeSample_SetTime(This,pTimeStart,pTimeEnd)    \
  2011.     (This)->lpVtbl -> SetTime(This,pTimeStart,pTimeEnd)
  2012.  
  2013. #define IAMMediaTypeSample_IsSyncPoint(This)    \
  2014.     (This)->lpVtbl -> IsSyncPoint(This)
  2015.  
  2016. #define IAMMediaTypeSample_SetSyncPoint(This,bIsSyncPoint)    \
  2017.     (This)->lpVtbl -> SetSyncPoint(This,bIsSyncPoint)
  2018.  
  2019. #define IAMMediaTypeSample_IsPreroll(This)    \
  2020.     (This)->lpVtbl -> IsPreroll(This)
  2021.  
  2022. #define IAMMediaTypeSample_SetPreroll(This,bIsPreroll)    \
  2023.     (This)->lpVtbl -> SetPreroll(This,bIsPreroll)
  2024.  
  2025. #define IAMMediaTypeSample_GetActualDataLength(This)    \
  2026.     (This)->lpVtbl -> GetActualDataLength(This)
  2027.  
  2028. #define IAMMediaTypeSample_SetActualDataLength(This,__MIDL_0022)    \
  2029.     (This)->lpVtbl -> SetActualDataLength(This,__MIDL_0022)
  2030.  
  2031. #define IAMMediaTypeSample_GetMediaType(This,ppMediaType)    \
  2032.     (This)->lpVtbl -> GetMediaType(This,ppMediaType)
  2033.  
  2034. #define IAMMediaTypeSample_SetMediaType(This,pMediaType)    \
  2035.     (This)->lpVtbl -> SetMediaType(This,pMediaType)
  2036.  
  2037. #define IAMMediaTypeSample_IsDiscontinuity(This)    \
  2038.     (This)->lpVtbl -> IsDiscontinuity(This)
  2039.  
  2040. #define IAMMediaTypeSample_SetDiscontinuity(This,bDiscontinuity)    \
  2041.     (This)->lpVtbl -> SetDiscontinuity(This,bDiscontinuity)
  2042.  
  2043. #define IAMMediaTypeSample_GetMediaTime(This,pTimeStart,pTimeEnd)    \
  2044.     (This)->lpVtbl -> GetMediaTime(This,pTimeStart,pTimeEnd)
  2045.  
  2046. #define IAMMediaTypeSample_SetMediaTime(This,pTimeStart,pTimeEnd)    \
  2047.     (This)->lpVtbl -> SetMediaTime(This,pTimeStart,pTimeEnd)
  2048.  
  2049. #endif /* COBJMACROS */
  2050.  
  2051.  
  2052. #endif     /* C style interface */
  2053.  
  2054.  
  2055.  
  2056. HRESULT STDMETHODCALLTYPE IAMMediaTypeSample_SetPointer_Proxy( 
  2057.     IAMMediaTypeSample __RPC_FAR * This,
  2058.     /* [in] */ BYTE __RPC_FAR *pBuffer,
  2059.     /* [in] */ long lSize);
  2060.  
  2061.  
  2062. void __RPC_STUB IAMMediaTypeSample_SetPointer_Stub(
  2063.     IRpcStubBuffer *This,
  2064.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2065.     PRPC_MESSAGE _pRpcMessage,
  2066.     DWORD *_pdwStubPhase);
  2067.  
  2068.  
  2069. HRESULT STDMETHODCALLTYPE IAMMediaTypeSample_GetPointer_Proxy( 
  2070.     IAMMediaTypeSample __RPC_FAR * This,
  2071.     /* [out] */ BYTE __RPC_FAR *__RPC_FAR *ppBuffer);
  2072.  
  2073.  
  2074. void __RPC_STUB IAMMediaTypeSample_GetPointer_Stub(
  2075.     IRpcStubBuffer *This,
  2076.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2077.     PRPC_MESSAGE _pRpcMessage,
  2078.     DWORD *_pdwStubPhase);
  2079.  
  2080.  
  2081. long STDMETHODCALLTYPE IAMMediaTypeSample_GetSize_Proxy( 
  2082.     IAMMediaTypeSample __RPC_FAR * This);
  2083.  
  2084.  
  2085. void __RPC_STUB IAMMediaTypeSample_GetSize_Stub(
  2086.     IRpcStubBuffer *This,
  2087.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2088.     PRPC_MESSAGE _pRpcMessage,
  2089.     DWORD *_pdwStubPhase);
  2090.  
  2091.  
  2092. HRESULT STDMETHODCALLTYPE IAMMediaTypeSample_GetTime_Proxy( 
  2093.     IAMMediaTypeSample __RPC_FAR * This,
  2094.     /* [out] */ REFERENCE_TIME __RPC_FAR *pTimeStart,
  2095.     /* [out] */ REFERENCE_TIME __RPC_FAR *pTimeEnd);
  2096.  
  2097.  
  2098. void __RPC_STUB IAMMediaTypeSample_GetTime_Stub(
  2099.     IRpcStubBuffer *This,
  2100.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2101.     PRPC_MESSAGE _pRpcMessage,
  2102.     DWORD *_pdwStubPhase);
  2103.  
  2104.  
  2105. HRESULT STDMETHODCALLTYPE IAMMediaTypeSample_SetTime_Proxy( 
  2106.     IAMMediaTypeSample __RPC_FAR * This,
  2107.     /* [in] */ REFERENCE_TIME __RPC_FAR *pTimeStart,
  2108.     /* [in] */ REFERENCE_TIME __RPC_FAR *pTimeEnd);
  2109.  
  2110.  
  2111. void __RPC_STUB IAMMediaTypeSample_SetTime_Stub(
  2112.     IRpcStubBuffer *This,
  2113.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2114.     PRPC_MESSAGE _pRpcMessage,
  2115.     DWORD *_pdwStubPhase);
  2116.  
  2117.  
  2118. HRESULT STDMETHODCALLTYPE IAMMediaTypeSample_IsSyncPoint_Proxy( 
  2119.     IAMMediaTypeSample __RPC_FAR * This);
  2120.  
  2121.  
  2122. void __RPC_STUB IAMMediaTypeSample_IsSyncPoint_Stub(
  2123.     IRpcStubBuffer *This,
  2124.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2125.     PRPC_MESSAGE _pRpcMessage,
  2126.     DWORD *_pdwStubPhase);
  2127.  
  2128.  
  2129. HRESULT STDMETHODCALLTYPE IAMMediaTypeSample_SetSyncPoint_Proxy( 
  2130.     IAMMediaTypeSample __RPC_FAR * This,
  2131.     BOOL bIsSyncPoint);
  2132.  
  2133.  
  2134. void __RPC_STUB IAMMediaTypeSample_SetSyncPoint_Stub(
  2135.     IRpcStubBuffer *This,
  2136.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2137.     PRPC_MESSAGE _pRpcMessage,
  2138.     DWORD *_pdwStubPhase);
  2139.  
  2140.  
  2141. HRESULT STDMETHODCALLTYPE IAMMediaTypeSample_IsPreroll_Proxy( 
  2142.     IAMMediaTypeSample __RPC_FAR * This);
  2143.  
  2144.  
  2145. void __RPC_STUB IAMMediaTypeSample_IsPreroll_Stub(
  2146.     IRpcStubBuffer *This,
  2147.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2148.     PRPC_MESSAGE _pRpcMessage,
  2149.     DWORD *_pdwStubPhase);
  2150.  
  2151.  
  2152. HRESULT STDMETHODCALLTYPE IAMMediaTypeSample_SetPreroll_Proxy( 
  2153.     IAMMediaTypeSample __RPC_FAR * This,
  2154.     BOOL bIsPreroll);
  2155.  
  2156.  
  2157. void __RPC_STUB IAMMediaTypeSample_SetPreroll_Stub(
  2158.     IRpcStubBuffer *This,
  2159.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2160.     PRPC_MESSAGE _pRpcMessage,
  2161.     DWORD *_pdwStubPhase);
  2162.  
  2163.  
  2164. long STDMETHODCALLTYPE IAMMediaTypeSample_GetActualDataLength_Proxy( 
  2165.     IAMMediaTypeSample __RPC_FAR * This);
  2166.  
  2167.  
  2168. void __RPC_STUB IAMMediaTypeSample_GetActualDataLength_Stub(
  2169.     IRpcStubBuffer *This,
  2170.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2171.     PRPC_MESSAGE _pRpcMessage,
  2172.     DWORD *_pdwStubPhase);
  2173.  
  2174.  
  2175. HRESULT STDMETHODCALLTYPE IAMMediaTypeSample_SetActualDataLength_Proxy( 
  2176.     IAMMediaTypeSample __RPC_FAR * This,
  2177.     long __MIDL_0022);
  2178.  
  2179.  
  2180. void __RPC_STUB IAMMediaTypeSample_SetActualDataLength_Stub(
  2181.     IRpcStubBuffer *This,
  2182.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2183.     PRPC_MESSAGE _pRpcMessage,
  2184.     DWORD *_pdwStubPhase);
  2185.  
  2186.  
  2187. HRESULT STDMETHODCALLTYPE IAMMediaTypeSample_GetMediaType_Proxy( 
  2188.     IAMMediaTypeSample __RPC_FAR * This,
  2189.     AM_MEDIA_TYPE __RPC_FAR *__RPC_FAR *ppMediaType);
  2190.  
  2191.  
  2192. void __RPC_STUB IAMMediaTypeSample_GetMediaType_Stub(
  2193.     IRpcStubBuffer *This,
  2194.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2195.     PRPC_MESSAGE _pRpcMessage,
  2196.     DWORD *_pdwStubPhase);
  2197.  
  2198.  
  2199. HRESULT STDMETHODCALLTYPE IAMMediaTypeSample_SetMediaType_Proxy( 
  2200.     IAMMediaTypeSample __RPC_FAR * This,
  2201.     AM_MEDIA_TYPE __RPC_FAR *pMediaType);
  2202.  
  2203.  
  2204. void __RPC_STUB IAMMediaTypeSample_SetMediaType_Stub(
  2205.     IRpcStubBuffer *This,
  2206.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2207.     PRPC_MESSAGE _pRpcMessage,
  2208.     DWORD *_pdwStubPhase);
  2209.  
  2210.  
  2211. HRESULT STDMETHODCALLTYPE IAMMediaTypeSample_IsDiscontinuity_Proxy( 
  2212.     IAMMediaTypeSample __RPC_FAR * This);
  2213.  
  2214.  
  2215. void __RPC_STUB IAMMediaTypeSample_IsDiscontinuity_Stub(
  2216.     IRpcStubBuffer *This,
  2217.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2218.     PRPC_MESSAGE _pRpcMessage,
  2219.     DWORD *_pdwStubPhase);
  2220.  
  2221.  
  2222. HRESULT STDMETHODCALLTYPE IAMMediaTypeSample_SetDiscontinuity_Proxy( 
  2223.     IAMMediaTypeSample __RPC_FAR * This,
  2224.     BOOL bDiscontinuity);
  2225.  
  2226.  
  2227. void __RPC_STUB IAMMediaTypeSample_SetDiscontinuity_Stub(
  2228.     IRpcStubBuffer *This,
  2229.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2230.     PRPC_MESSAGE _pRpcMessage,
  2231.     DWORD *_pdwStubPhase);
  2232.  
  2233.  
  2234. HRESULT STDMETHODCALLTYPE IAMMediaTypeSample_GetMediaTime_Proxy( 
  2235.     IAMMediaTypeSample __RPC_FAR * This,
  2236.     /* [out] */ LONGLONG __RPC_FAR *pTimeStart,
  2237.     /* [out] */ LONGLONG __RPC_FAR *pTimeEnd);
  2238.  
  2239.  
  2240. void __RPC_STUB IAMMediaTypeSample_GetMediaTime_Stub(
  2241.     IRpcStubBuffer *This,
  2242.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2243.     PRPC_MESSAGE _pRpcMessage,
  2244.     DWORD *_pdwStubPhase);
  2245.  
  2246.  
  2247. HRESULT STDMETHODCALLTYPE IAMMediaTypeSample_SetMediaTime_Proxy( 
  2248.     IAMMediaTypeSample __RPC_FAR * This,
  2249.     /* [in] */ LONGLONG __RPC_FAR *pTimeStart,
  2250.     /* [in] */ LONGLONG __RPC_FAR *pTimeEnd);
  2251.  
  2252.  
  2253. void __RPC_STUB IAMMediaTypeSample_SetMediaTime_Stub(
  2254.     IRpcStubBuffer *This,
  2255.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2256.     PRPC_MESSAGE _pRpcMessage,
  2257.     DWORD *_pdwStubPhase);
  2258.  
  2259.  
  2260.  
  2261. #endif     /* __IAMMediaTypeSample_INTERFACE_DEFINED__ */
  2262.  
  2263.  
  2264.  
  2265. #ifndef __DirectShowStreamLib_LIBRARY_DEFINED__
  2266. #define __DirectShowStreamLib_LIBRARY_DEFINED__
  2267.  
  2268. /****************************************
  2269.  * Generated header for library: DirectShowStreamLib
  2270.  * at Thu Nov 13 19:28:37 1997
  2271.  * using MIDL 3.02.88
  2272.  ****************************************/
  2273. /* [helpstring][version][uuid] */ 
  2274.  
  2275.  
  2276.  
  2277. EXTERN_C const IID LIBID_DirectShowStreamLib;
  2278.  
  2279. EXTERN_C const CLSID CLSID_AMMultiMediaStream;
  2280.  
  2281. #ifdef __cplusplus
  2282.  
  2283. class DECLSPEC_UUID("49c47ce5-9ba4-11d0-8212-00c04fc32c45")
  2284. AMMultiMediaStream;
  2285. #endif
  2286. #endif /* __DirectShowStreamLib_LIBRARY_DEFINED__ */
  2287.  
  2288. /****************************************
  2289.  * Generated header for interface: __MIDL_itf_amstream_0239
  2290.  * at Thu Nov 13 19:28:37 1997
  2291.  * using MIDL 3.02.88
  2292.  ****************************************/
  2293. /* [local] */ 
  2294.  
  2295.  
  2296. #ifndef __cplusplus
  2297. EXTERN_C const CLSID CLSID_AMMultiMediaStream;
  2298. #endif
  2299. DEFINE_GUID(CLSID_AMDirectDrawStream, /* 49c47ce4-9ba4-11d0-8212-00c04fc32c45 */
  2300. 0x49c47ce4, 0x9ba4, 0x11d0, 0x82, 0x12, 0x00, 0xc0, 0x4f, 0xc3, 0x2c, 0x45);
  2301. DEFINE_GUID(CLSID_AMAudioStream, /* 8496e040-af4c-11d0-8212-00c04fc32c45 */
  2302. 0x8496e040, 0xaf4c, 0x11d0, 0x82, 0x12, 0x00, 0xc0, 0x4f, 0xc3, 0x2c, 0x45);
  2303. DEFINE_GUID(CLSID_AMAudioData, /* f2468580-af8a-11d0-8212-00c04fc32c45 */
  2304. 0xf2468580, 0xaf8a, 0x11d0, 0x82, 0x12, 0x00, 0xc0, 0x4f, 0xc3, 0x2c, 0x45);
  2305. DEFINE_GUID(CLSID_AMMediaTypeStream, /* CF0F2F7C-F7BF-11d0-900D-00C04FD9189D */
  2306. 0xcf0f2f7c, 0xf7bf, 0x11d0, 0x90, 0xd, 0x0, 0xc0, 0x4f, 0xd9, 0x18, 0x9d);
  2307.  
  2308.  
  2309. extern RPC_IF_HANDLE __MIDL_itf_amstream_0239_v0_0_c_ifspec;
  2310. extern RPC_IF_HANDLE __MIDL_itf_amstream_0239_v0_0_s_ifspec;
  2311.  
  2312. /* Additional Prototypes for ALL interfaces */
  2313.  
  2314. unsigned long             __RPC_USER  BSTR_UserSize(     unsigned long __RPC_FAR *, unsigned long            , BSTR __RPC_FAR * ); 
  2315. unsigned char __RPC_FAR * __RPC_USER  BSTR_UserMarshal(  unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, BSTR __RPC_FAR * ); 
  2316. unsigned char __RPC_FAR * __RPC_USER  BSTR_UserUnmarshal(unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, BSTR __RPC_FAR * ); 
  2317. void                      __RPC_USER  BSTR_UserFree(     unsigned long __RPC_FAR *, BSTR __RPC_FAR * ); 
  2318.  
  2319. /* end of Additional Prototypes */
  2320.  
  2321. #ifdef __cplusplus
  2322. }
  2323. #endif
  2324.  
  2325. #endif
  2326. #pragma option pop /*P_O_Pop*/
  2327.