home *** CD-ROM | disk | FTP | other *** search
/ PC Plus SuperCD (UK) 2000 May / PCP163A.iso / Runimage / Cbuilder4 / Include / AUSTREAM.H < prev    next >
Encoding:
C/C++ Source or Header  |  1999-01-26  |  22.0 KB  |  720 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:38 1997
  7.  */
  8. /* Compiler settings for austream.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 __austream_h__
  21. #define __austream_h__
  22.  
  23. #ifdef __cplusplus
  24. extern "C"{
  25. #endif 
  26.  
  27. /* Forward Declarations */ 
  28.  
  29. #ifndef __IAudioMediaStream_FWD_DEFINED__
  30. #define __IAudioMediaStream_FWD_DEFINED__
  31. typedef interface IAudioMediaStream IAudioMediaStream;
  32. #endif     /* __IAudioMediaStream_FWD_DEFINED__ */
  33.  
  34.  
  35. #ifndef __IAudioStreamSample_FWD_DEFINED__
  36. #define __IAudioStreamSample_FWD_DEFINED__
  37. typedef interface IAudioStreamSample IAudioStreamSample;
  38. #endif     /* __IAudioStreamSample_FWD_DEFINED__ */
  39.  
  40.  
  41. #ifndef __IMemoryData_FWD_DEFINED__
  42. #define __IMemoryData_FWD_DEFINED__
  43. typedef interface IMemoryData IMemoryData;
  44. #endif     /* __IMemoryData_FWD_DEFINED__ */
  45.  
  46.  
  47. #ifndef __IAudioData_FWD_DEFINED__
  48. #define __IAudioData_FWD_DEFINED__
  49. typedef interface IAudioData IAudioData;
  50. #endif     /* __IAudioData_FWD_DEFINED__ */
  51.  
  52.  
  53. /* header files for imported files */
  54. #include "unknwn.h"
  55. #include "mmstream.h"
  56.  
  57. void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
  58. void __RPC_USER MIDL_user_free( void __RPC_FAR * ); 
  59.  
  60. /****************************************
  61.  * Generated header for interface: __MIDL_itf_austream_0000
  62.  * at Thu Nov 13 19:28:38 1997
  63.  * using MIDL 3.02.88
  64.  ****************************************/
  65. /* [local] */ 
  66.  
  67.  
  68. //
  69. //    The following declarations within the 'if 0' block are dummy typedefs used to make
  70. //    the ddstream.idl file build.  The actual definitions are contained in DDRAW.H
  71. //
  72. #if 0
  73. typedef struct tWAVEFORMATEX WAVEFORMATEX;
  74.  
  75. #endif
  76.  
  77.  
  78.  
  79.  
  80.  
  81.  
  82. extern RPC_IF_HANDLE __MIDL_itf_austream_0000_v0_0_c_ifspec;
  83. extern RPC_IF_HANDLE __MIDL_itf_austream_0000_v0_0_s_ifspec;
  84.  
  85. #ifndef __IAudioMediaStream_INTERFACE_DEFINED__
  86. #define __IAudioMediaStream_INTERFACE_DEFINED__
  87.  
  88. /****************************************
  89.  * Generated header for interface: IAudioMediaStream
  90.  * at Thu Nov 13 19:28:38 1997
  91.  * using MIDL 3.02.88
  92.  ****************************************/
  93. /* [unique][uuid][local][object] */ 
  94.  
  95.  
  96.  
  97. EXTERN_C const IID IID_IAudioMediaStream;
  98.  
  99. #if defined(__cplusplus) && !defined(CINTERFACE)
  100.     
  101.     interface DECLSPEC_UUID("f7537560-a3be-11d0-8212-00c04fc32c45")
  102.     IAudioMediaStream : public IMediaStream
  103.     {
  104.     public:
  105.         virtual HRESULT STDMETHODCALLTYPE GetFormat( 
  106.             /* [optional][out] */ WAVEFORMATEX __RPC_FAR *pWaveFormatCurrent) = 0;
  107.         
  108.         virtual HRESULT STDMETHODCALLTYPE SetFormat( 
  109.             /* [in] */ const WAVEFORMATEX __RPC_FAR *lpWaveFormat) = 0;
  110.         
  111.         virtual HRESULT STDMETHODCALLTYPE CreateSample( 
  112.             /* [in] */ IAudioData __RPC_FAR *pAudioData,
  113.             /* [in] */ DWORD dwFlags,
  114.             /* [out] */ IAudioStreamSample __RPC_FAR *__RPC_FAR *ppSample) = 0;
  115.         
  116.     };
  117.     
  118. #else     /* C style interface */
  119.  
  120.     typedef struct IAudioMediaStreamVtbl
  121.     {
  122.         BEGIN_INTERFACE
  123.         
  124.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  125.             IAudioMediaStream __RPC_FAR * This,
  126.             /* [in] */ REFIID riid,
  127.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  128.         
  129.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  130.             IAudioMediaStream __RPC_FAR * This);
  131.         
  132.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  133.             IAudioMediaStream __RPC_FAR * This);
  134.         
  135.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetMultiMediaStream )( 
  136.             IAudioMediaStream __RPC_FAR * This,
  137.             /* [out] */ IMultiMediaStream __RPC_FAR *__RPC_FAR *ppMultiMediaStream);
  138.         
  139.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetInformation )( 
  140.             IAudioMediaStream __RPC_FAR * This,
  141.             /* [optional][out] */ MSPID __RPC_FAR *pPurposeId,
  142.             /* [optional][out] */ STREAM_TYPE __RPC_FAR *pType);
  143.         
  144.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetSameFormat )( 
  145.             IAudioMediaStream __RPC_FAR * This,
  146.             /* [in] */ IMediaStream __RPC_FAR *pStreamThatHasDesiredFormat,
  147.             /* [in] */ DWORD dwFlags);
  148.         
  149.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AllocateSample )( 
  150.             IAudioMediaStream __RPC_FAR * This,
  151.             /* [in] */ DWORD dwFlags,
  152.             /* [out] */ IStreamSample __RPC_FAR *__RPC_FAR *ppSample);
  153.         
  154.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateSharedSample )( 
  155.             IAudioMediaStream __RPC_FAR * This,
  156.             /* [in] */ IStreamSample __RPC_FAR *pExistingSample,
  157.             /* [in] */ DWORD dwFlags,
  158.             /* [out] */ IStreamSample __RPC_FAR *__RPC_FAR *ppNewSample);
  159.         
  160.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SendEndOfStream )( 
  161.             IAudioMediaStream __RPC_FAR * This,
  162.             DWORD dwFlags);
  163.         
  164.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetFormat )( 
  165.             IAudioMediaStream __RPC_FAR * This,
  166.             /* [optional][out] */ WAVEFORMATEX __RPC_FAR *pWaveFormatCurrent);
  167.         
  168.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetFormat )( 
  169.             IAudioMediaStream __RPC_FAR * This,
  170.             /* [in] */ const WAVEFORMATEX __RPC_FAR *lpWaveFormat);
  171.         
  172.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateSample )( 
  173.             IAudioMediaStream __RPC_FAR * This,
  174.             /* [in] */ IAudioData __RPC_FAR *pAudioData,
  175.             /* [in] */ DWORD dwFlags,
  176.             /* [out] */ IAudioStreamSample __RPC_FAR *__RPC_FAR *ppSample);
  177.         
  178.         END_INTERFACE
  179.     } IAudioMediaStreamVtbl;
  180.  
  181.     interface IAudioMediaStream
  182.     {
  183.         CONST_VTBL struct IAudioMediaStreamVtbl __RPC_FAR *lpVtbl;
  184.     };
  185.  
  186.     
  187.  
  188. #ifdef COBJMACROS
  189.  
  190.  
  191. #define IAudioMediaStream_QueryInterface(This,riid,ppvObject)    \
  192.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  193.  
  194. #define IAudioMediaStream_AddRef(This)    \
  195.     (This)->lpVtbl -> AddRef(This)
  196.  
  197. #define IAudioMediaStream_Release(This)    \
  198.     (This)->lpVtbl -> Release(This)
  199.  
  200.  
  201. #define IAudioMediaStream_GetMultiMediaStream(This,ppMultiMediaStream)    \
  202.     (This)->lpVtbl -> GetMultiMediaStream(This,ppMultiMediaStream)
  203.  
  204. #define IAudioMediaStream_GetInformation(This,pPurposeId,pType)    \
  205.     (This)->lpVtbl -> GetInformation(This,pPurposeId,pType)
  206.  
  207. #define IAudioMediaStream_SetSameFormat(This,pStreamThatHasDesiredFormat,dwFlags)    \
  208.     (This)->lpVtbl -> SetSameFormat(This,pStreamThatHasDesiredFormat,dwFlags)
  209.  
  210. #define IAudioMediaStream_AllocateSample(This,dwFlags,ppSample)    \
  211.     (This)->lpVtbl -> AllocateSample(This,dwFlags,ppSample)
  212.  
  213. #define IAudioMediaStream_CreateSharedSample(This,pExistingSample,dwFlags,ppNewSample)    \
  214.     (This)->lpVtbl -> CreateSharedSample(This,pExistingSample,dwFlags,ppNewSample)
  215.  
  216. #define IAudioMediaStream_SendEndOfStream(This,dwFlags)    \
  217.     (This)->lpVtbl -> SendEndOfStream(This,dwFlags)
  218.  
  219.  
  220. #define IAudioMediaStream_GetFormat(This,pWaveFormatCurrent)    \
  221.     (This)->lpVtbl -> GetFormat(This,pWaveFormatCurrent)
  222.  
  223. #define IAudioMediaStream_SetFormat(This,lpWaveFormat)    \
  224.     (This)->lpVtbl -> SetFormat(This,lpWaveFormat)
  225.  
  226. #define IAudioMediaStream_CreateSample(This,pAudioData,dwFlags,ppSample)    \
  227.     (This)->lpVtbl -> CreateSample(This,pAudioData,dwFlags,ppSample)
  228.  
  229. #endif /* COBJMACROS */
  230.  
  231.  
  232. #endif     /* C style interface */
  233.  
  234.  
  235.  
  236. HRESULT STDMETHODCALLTYPE IAudioMediaStream_GetFormat_Proxy( 
  237.     IAudioMediaStream __RPC_FAR * This,
  238.     /* [optional][out] */ WAVEFORMATEX __RPC_FAR *pWaveFormatCurrent);
  239.  
  240.  
  241. void __RPC_STUB IAudioMediaStream_GetFormat_Stub(
  242.     IRpcStubBuffer *This,
  243.     IRpcChannelBuffer *_pRpcChannelBuffer,
  244.     PRPC_MESSAGE _pRpcMessage,
  245.     DWORD *_pdwStubPhase);
  246.  
  247.  
  248. HRESULT STDMETHODCALLTYPE IAudioMediaStream_SetFormat_Proxy( 
  249.     IAudioMediaStream __RPC_FAR * This,
  250.     /* [in] */ const WAVEFORMATEX __RPC_FAR *lpWaveFormat);
  251.  
  252.  
  253. void __RPC_STUB IAudioMediaStream_SetFormat_Stub(
  254.     IRpcStubBuffer *This,
  255.     IRpcChannelBuffer *_pRpcChannelBuffer,
  256.     PRPC_MESSAGE _pRpcMessage,
  257.     DWORD *_pdwStubPhase);
  258.  
  259.  
  260. HRESULT STDMETHODCALLTYPE IAudioMediaStream_CreateSample_Proxy( 
  261.     IAudioMediaStream __RPC_FAR * This,
  262.     /* [in] */ IAudioData __RPC_FAR *pAudioData,
  263.     /* [in] */ DWORD dwFlags,
  264.     /* [out] */ IAudioStreamSample __RPC_FAR *__RPC_FAR *ppSample);
  265.  
  266.  
  267. void __RPC_STUB IAudioMediaStream_CreateSample_Stub(
  268.     IRpcStubBuffer *This,
  269.     IRpcChannelBuffer *_pRpcChannelBuffer,
  270.     PRPC_MESSAGE _pRpcMessage,
  271.     DWORD *_pdwStubPhase);
  272.  
  273.  
  274.  
  275. #endif     /* __IAudioMediaStream_INTERFACE_DEFINED__ */
  276.  
  277.  
  278. #ifndef __IAudioStreamSample_INTERFACE_DEFINED__
  279. #define __IAudioStreamSample_INTERFACE_DEFINED__
  280.  
  281. /****************************************
  282.  * Generated header for interface: IAudioStreamSample
  283.  * at Thu Nov 13 19:28:38 1997
  284.  * using MIDL 3.02.88
  285.  ****************************************/
  286. /* [unique][uuid][local][object] */ 
  287.  
  288.  
  289.  
  290. EXTERN_C const IID IID_IAudioStreamSample;
  291.  
  292. #if defined(__cplusplus) && !defined(CINTERFACE)
  293.     
  294.     interface DECLSPEC_UUID("345fee00-aba5-11d0-8212-00c04fc32c45")
  295.     IAudioStreamSample : public IStreamSample
  296.     {
  297.     public:
  298.         virtual HRESULT STDMETHODCALLTYPE GetAudioData( 
  299.             /* [out] */ IAudioData __RPC_FAR *__RPC_FAR *ppAudio) = 0;
  300.         
  301.     };
  302.     
  303. #else     /* C style interface */
  304.  
  305.     typedef struct IAudioStreamSampleVtbl
  306.     {
  307.         BEGIN_INTERFACE
  308.         
  309.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  310.             IAudioStreamSample __RPC_FAR * This,
  311.             /* [in] */ REFIID riid,
  312.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  313.         
  314.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  315.             IAudioStreamSample __RPC_FAR * This);
  316.         
  317.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  318.             IAudioStreamSample __RPC_FAR * This);
  319.         
  320.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetMediaStream )( 
  321.             IAudioStreamSample __RPC_FAR * This,
  322.             /* [in] */ IMediaStream __RPC_FAR *__RPC_FAR *ppMediaStream);
  323.         
  324.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSampleTimes )( 
  325.             IAudioStreamSample __RPC_FAR * This,
  326.             /* [optional][out] */ STREAM_TIME __RPC_FAR *pStartTime,
  327.             /* [optional][out] */ STREAM_TIME __RPC_FAR *pEndTime,
  328.             /* [optional][out] */ STREAM_TIME __RPC_FAR *pCurrentTime);
  329.         
  330.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetSampleTimes )( 
  331.             IAudioStreamSample __RPC_FAR * This,
  332.             /* [optional][in] */ const STREAM_TIME __RPC_FAR *pStartTime,
  333.             /* [optional][in] */ const STREAM_TIME __RPC_FAR *pEndTime);
  334.         
  335.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
  336.             IAudioStreamSample __RPC_FAR * This,
  337.             /* [in] */ DWORD dwFlags,
  338.             /* [optional][in] */ HANDLE hEvent,
  339.             /* [optional][in] */ PAPCFUNC pfnAPC,
  340.             /* [optional][in] */ DWORD dwAPCData);
  341.         
  342.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CompletionStatus )( 
  343.             IAudioStreamSample __RPC_FAR * This,
  344.             /* [in] */ DWORD dwFlags,
  345.             /* [optional][in] */ DWORD dwMilliseconds);
  346.         
  347.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAudioData )( 
  348.             IAudioStreamSample __RPC_FAR * This,
  349.             /* [out] */ IAudioData __RPC_FAR *__RPC_FAR *ppAudio);
  350.         
  351.         END_INTERFACE
  352.     } IAudioStreamSampleVtbl;
  353.  
  354.     interface IAudioStreamSample
  355.     {
  356.         CONST_VTBL struct IAudioStreamSampleVtbl __RPC_FAR *lpVtbl;
  357.     };
  358.  
  359.     
  360.  
  361. #ifdef COBJMACROS
  362.  
  363.  
  364. #define IAudioStreamSample_QueryInterface(This,riid,ppvObject)    \
  365.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  366.  
  367. #define IAudioStreamSample_AddRef(This)    \
  368.     (This)->lpVtbl -> AddRef(This)
  369.  
  370. #define IAudioStreamSample_Release(This)    \
  371.     (This)->lpVtbl -> Release(This)
  372.  
  373.  
  374. #define IAudioStreamSample_GetMediaStream(This,ppMediaStream)    \
  375.     (This)->lpVtbl -> GetMediaStream(This,ppMediaStream)
  376.  
  377. #define IAudioStreamSample_GetSampleTimes(This,pStartTime,pEndTime,pCurrentTime)    \
  378.     (This)->lpVtbl -> GetSampleTimes(This,pStartTime,pEndTime,pCurrentTime)
  379.  
  380. #define IAudioStreamSample_SetSampleTimes(This,pStartTime,pEndTime)    \
  381.     (This)->lpVtbl -> SetSampleTimes(This,pStartTime,pEndTime)
  382.  
  383. #define IAudioStreamSample_Update(This,dwFlags,hEvent,pfnAPC,dwAPCData)    \
  384.     (This)->lpVtbl -> Update(This,dwFlags,hEvent,pfnAPC,dwAPCData)
  385.  
  386. #define IAudioStreamSample_CompletionStatus(This,dwFlags,dwMilliseconds)    \
  387.     (This)->lpVtbl -> CompletionStatus(This,dwFlags,dwMilliseconds)
  388.  
  389.  
  390. #define IAudioStreamSample_GetAudioData(This,ppAudio)    \
  391.     (This)->lpVtbl -> GetAudioData(This,ppAudio)
  392.  
  393. #endif /* COBJMACROS */
  394.  
  395.  
  396. #endif     /* C style interface */
  397.  
  398.  
  399.  
  400. HRESULT STDMETHODCALLTYPE IAudioStreamSample_GetAudioData_Proxy( 
  401.     IAudioStreamSample __RPC_FAR * This,
  402.     /* [out] */ IAudioData __RPC_FAR *__RPC_FAR *ppAudio);
  403.  
  404.  
  405. void __RPC_STUB IAudioStreamSample_GetAudioData_Stub(
  406.     IRpcStubBuffer *This,
  407.     IRpcChannelBuffer *_pRpcChannelBuffer,
  408.     PRPC_MESSAGE _pRpcMessage,
  409.     DWORD *_pdwStubPhase);
  410.  
  411.  
  412.  
  413. #endif     /* __IAudioStreamSample_INTERFACE_DEFINED__ */
  414.  
  415.  
  416. #ifndef __IMemoryData_INTERFACE_DEFINED__
  417. #define __IMemoryData_INTERFACE_DEFINED__
  418.  
  419. /****************************************
  420.  * Generated header for interface: IMemoryData
  421.  * at Thu Nov 13 19:28:38 1997
  422.  * using MIDL 3.02.88
  423.  ****************************************/
  424. /* [unique][uuid][local][object] */ 
  425.  
  426.  
  427.  
  428. EXTERN_C const IID IID_IMemoryData;
  429.  
  430. #if defined(__cplusplus) && !defined(CINTERFACE)
  431.     
  432.     interface DECLSPEC_UUID("327fc560-af60-11d0-8212-00c04fc32c45")
  433.     IMemoryData : public IUnknown
  434.     {
  435.     public:
  436.         virtual HRESULT STDMETHODCALLTYPE SetBuffer( 
  437.             /* [in] */ DWORD cbSize,
  438.             /* [in] */ BYTE __RPC_FAR *pbData,
  439.             /* [in] */ DWORD dwFlags) = 0;
  440.         
  441.         virtual HRESULT STDMETHODCALLTYPE GetInfo( 
  442.             /* [out] */ DWORD __RPC_FAR *pdwLength,
  443.             /* [out] */ BYTE __RPC_FAR *__RPC_FAR *ppbData,
  444.             /* [out] */ DWORD __RPC_FAR *pcbActualData) = 0;
  445.         
  446.         virtual HRESULT STDMETHODCALLTYPE SetActual( 
  447.             /* [in] */ DWORD cbDataValid) = 0;
  448.         
  449.     };
  450.     
  451. #else     /* C style interface */
  452.  
  453.     typedef struct IMemoryDataVtbl
  454.     {
  455.         BEGIN_INTERFACE
  456.         
  457.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  458.             IMemoryData __RPC_FAR * This,
  459.             /* [in] */ REFIID riid,
  460.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  461.         
  462.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  463.             IMemoryData __RPC_FAR * This);
  464.         
  465.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  466.             IMemoryData __RPC_FAR * This);
  467.         
  468.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetBuffer )( 
  469.             IMemoryData __RPC_FAR * This,
  470.             /* [in] */ DWORD cbSize,
  471.             /* [in] */ BYTE __RPC_FAR *pbData,
  472.             /* [in] */ DWORD dwFlags);
  473.         
  474.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetInfo )( 
  475.             IMemoryData __RPC_FAR * This,
  476.             /* [out] */ DWORD __RPC_FAR *pdwLength,
  477.             /* [out] */ BYTE __RPC_FAR *__RPC_FAR *ppbData,
  478.             /* [out] */ DWORD __RPC_FAR *pcbActualData);
  479.         
  480.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetActual )( 
  481.             IMemoryData __RPC_FAR * This,
  482.             /* [in] */ DWORD cbDataValid);
  483.         
  484.         END_INTERFACE
  485.     } IMemoryDataVtbl;
  486.  
  487.     interface IMemoryData
  488.     {
  489.         CONST_VTBL struct IMemoryDataVtbl __RPC_FAR *lpVtbl;
  490.     };
  491.  
  492.     
  493.  
  494. #ifdef COBJMACROS
  495.  
  496.  
  497. #define IMemoryData_QueryInterface(This,riid,ppvObject)    \
  498.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  499.  
  500. #define IMemoryData_AddRef(This)    \
  501.     (This)->lpVtbl -> AddRef(This)
  502.  
  503. #define IMemoryData_Release(This)    \
  504.     (This)->lpVtbl -> Release(This)
  505.  
  506.  
  507. #define IMemoryData_SetBuffer(This,cbSize,pbData,dwFlags)    \
  508.     (This)->lpVtbl -> SetBuffer(This,cbSize,pbData,dwFlags)
  509.  
  510. #define IMemoryData_GetInfo(This,pdwLength,ppbData,pcbActualData)    \
  511.     (This)->lpVtbl -> GetInfo(This,pdwLength,ppbData,pcbActualData)
  512.  
  513. #define IMemoryData_SetActual(This,cbDataValid)    \
  514.     (This)->lpVtbl -> SetActual(This,cbDataValid)
  515.  
  516. #endif /* COBJMACROS */
  517.  
  518.  
  519. #endif     /* C style interface */
  520.  
  521.  
  522.  
  523. HRESULT STDMETHODCALLTYPE IMemoryData_SetBuffer_Proxy( 
  524.     IMemoryData __RPC_FAR * This,
  525.     /* [in] */ DWORD cbSize,
  526.     /* [in] */ BYTE __RPC_FAR *pbData,
  527.     /* [in] */ DWORD dwFlags);
  528.  
  529.  
  530. void __RPC_STUB IMemoryData_SetBuffer_Stub(
  531.     IRpcStubBuffer *This,
  532.     IRpcChannelBuffer *_pRpcChannelBuffer,
  533.     PRPC_MESSAGE _pRpcMessage,
  534.     DWORD *_pdwStubPhase);
  535.  
  536.  
  537. HRESULT STDMETHODCALLTYPE IMemoryData_GetInfo_Proxy( 
  538.     IMemoryData __RPC_FAR * This,
  539.     /* [out] */ DWORD __RPC_FAR *pdwLength,
  540.     /* [out] */ BYTE __RPC_FAR *__RPC_FAR *ppbData,
  541.     /* [out] */ DWORD __RPC_FAR *pcbActualData);
  542.  
  543.  
  544. void __RPC_STUB IMemoryData_GetInfo_Stub(
  545.     IRpcStubBuffer *This,
  546.     IRpcChannelBuffer *_pRpcChannelBuffer,
  547.     PRPC_MESSAGE _pRpcMessage,
  548.     DWORD *_pdwStubPhase);
  549.  
  550.  
  551. HRESULT STDMETHODCALLTYPE IMemoryData_SetActual_Proxy( 
  552.     IMemoryData __RPC_FAR * This,
  553.     /* [in] */ DWORD cbDataValid);
  554.  
  555.  
  556. void __RPC_STUB IMemoryData_SetActual_Stub(
  557.     IRpcStubBuffer *This,
  558.     IRpcChannelBuffer *_pRpcChannelBuffer,
  559.     PRPC_MESSAGE _pRpcMessage,
  560.     DWORD *_pdwStubPhase);
  561.  
  562.  
  563.  
  564. #endif     /* __IMemoryData_INTERFACE_DEFINED__ */
  565.  
  566.  
  567. #ifndef __IAudioData_INTERFACE_DEFINED__
  568. #define __IAudioData_INTERFACE_DEFINED__
  569.  
  570. /****************************************
  571.  * Generated header for interface: IAudioData
  572.  * at Thu Nov 13 19:28:38 1997
  573.  * using MIDL 3.02.88
  574.  ****************************************/
  575. /* [unique][uuid][local][object] */ 
  576.  
  577.  
  578.  
  579. EXTERN_C const IID IID_IAudioData;
  580.  
  581. #if defined(__cplusplus) && !defined(CINTERFACE)
  582.     
  583.     interface DECLSPEC_UUID("54c719c0-af60-11d0-8212-00c04fc32c45")
  584.     IAudioData : public IMemoryData
  585.     {
  586.     public:
  587.         virtual HRESULT STDMETHODCALLTYPE GetFormat( 
  588.             /* [optional][out] */ WAVEFORMATEX __RPC_FAR *pWaveFormatCurrent) = 0;
  589.         
  590.         virtual HRESULT STDMETHODCALLTYPE SetFormat( 
  591.             /* [in] */ const WAVEFORMATEX __RPC_FAR *lpWaveFormat) = 0;
  592.         
  593.     };
  594.     
  595. #else     /* C style interface */
  596.  
  597.     typedef struct IAudioDataVtbl
  598.     {
  599.         BEGIN_INTERFACE
  600.         
  601.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  602.             IAudioData __RPC_FAR * This,
  603.             /* [in] */ REFIID riid,
  604.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  605.         
  606.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  607.             IAudioData __RPC_FAR * This);
  608.         
  609.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  610.             IAudioData __RPC_FAR * This);
  611.         
  612.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetBuffer )( 
  613.             IAudioData __RPC_FAR * This,
  614.             /* [in] */ DWORD cbSize,
  615.             /* [in] */ BYTE __RPC_FAR *pbData,
  616.             /* [in] */ DWORD dwFlags);
  617.         
  618.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetInfo )( 
  619.             IAudioData __RPC_FAR * This,
  620.             /* [out] */ DWORD __RPC_FAR *pdwLength,
  621.             /* [out] */ BYTE __RPC_FAR *__RPC_FAR *ppbData,
  622.             /* [out] */ DWORD __RPC_FAR *pcbActualData);
  623.         
  624.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetActual )( 
  625.             IAudioData __RPC_FAR * This,
  626.             /* [in] */ DWORD cbDataValid);
  627.         
  628.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetFormat )( 
  629.             IAudioData __RPC_FAR * This,
  630.             /* [optional][out] */ WAVEFORMATEX __RPC_FAR *pWaveFormatCurrent);
  631.         
  632.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetFormat )( 
  633.             IAudioData __RPC_FAR * This,
  634.             /* [in] */ const WAVEFORMATEX __RPC_FAR *lpWaveFormat);
  635.         
  636.         END_INTERFACE
  637.     } IAudioDataVtbl;
  638.  
  639.     interface IAudioData
  640.     {
  641.         CONST_VTBL struct IAudioDataVtbl __RPC_FAR *lpVtbl;
  642.     };
  643.  
  644.     
  645.  
  646. #ifdef COBJMACROS
  647.  
  648.  
  649. #define IAudioData_QueryInterface(This,riid,ppvObject)    \
  650.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  651.  
  652. #define IAudioData_AddRef(This)    \
  653.     (This)->lpVtbl -> AddRef(This)
  654.  
  655. #define IAudioData_Release(This)    \
  656.     (This)->lpVtbl -> Release(This)
  657.  
  658.  
  659. #define IAudioData_SetBuffer(This,cbSize,pbData,dwFlags)    \
  660.     (This)->lpVtbl -> SetBuffer(This,cbSize,pbData,dwFlags)
  661.  
  662. #define IAudioData_GetInfo(This,pdwLength,ppbData,pcbActualData)    \
  663.     (This)->lpVtbl -> GetInfo(This,pdwLength,ppbData,pcbActualData)
  664.  
  665. #define IAudioData_SetActual(This,cbDataValid)    \
  666.     (This)->lpVtbl -> SetActual(This,cbDataValid)
  667.  
  668.  
  669. #define IAudioData_GetFormat(This,pWaveFormatCurrent)    \
  670.     (This)->lpVtbl -> GetFormat(This,pWaveFormatCurrent)
  671.  
  672. #define IAudioData_SetFormat(This,lpWaveFormat)    \
  673.     (This)->lpVtbl -> SetFormat(This,lpWaveFormat)
  674.  
  675. #endif /* COBJMACROS */
  676.  
  677.  
  678. #endif     /* C style interface */
  679.  
  680.  
  681.  
  682. HRESULT STDMETHODCALLTYPE IAudioData_GetFormat_Proxy( 
  683.     IAudioData __RPC_FAR * This,
  684.     /* [optional][out] */ WAVEFORMATEX __RPC_FAR *pWaveFormatCurrent);
  685.  
  686.  
  687. void __RPC_STUB IAudioData_GetFormat_Stub(
  688.     IRpcStubBuffer *This,
  689.     IRpcChannelBuffer *_pRpcChannelBuffer,
  690.     PRPC_MESSAGE _pRpcMessage,
  691.     DWORD *_pdwStubPhase);
  692.  
  693.  
  694. HRESULT STDMETHODCALLTYPE IAudioData_SetFormat_Proxy( 
  695.     IAudioData __RPC_FAR * This,
  696.     /* [in] */ const WAVEFORMATEX __RPC_FAR *lpWaveFormat);
  697.  
  698.  
  699. void __RPC_STUB IAudioData_SetFormat_Stub(
  700.     IRpcStubBuffer *This,
  701.     IRpcChannelBuffer *_pRpcChannelBuffer,
  702.     PRPC_MESSAGE _pRpcMessage,
  703.     DWORD *_pdwStubPhase);
  704.  
  705.  
  706.  
  707. #endif     /* __IAudioData_INTERFACE_DEFINED__ */
  708.  
  709.  
  710. /* Additional Prototypes for ALL interfaces */
  711.  
  712. /* end of Additional Prototypes */
  713.  
  714. #ifdef __cplusplus
  715. }
  716. #endif
  717.  
  718. #endif
  719. #pragma option pop /*P_O_Pop*/
  720.