home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / vc98 / include / austream.h < prev    next >
C/C++ Source or Header  |  1998-04-25  |  22KB  |  718 lines

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