home *** CD-ROM | disk | FTP | other *** search
/ PC Format (South-Africa) 2001 May / PCFMay2001.iso / Xenon / C++ / FreeCommandLineTools.exe / Include / videoacc.h < prev    next >
Encoding:
C/C++ Source or Header  |  2000-01-31  |  23.4 KB  |  665 lines

  1. #pragma option push -b -a8 -pc -A- /*P_O_Push*/
  2.  
  3. #pragma warning( disable: 4049 )  /* more than 64k source lines */
  4.  
  5. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  6.  
  7.  
  8.  /* File created by MIDL compiler version 5.03.0279 */
  9. /* at Thu Sep 02 13:38:44 1999
  10.  */
  11. /* Compiler settings for videoacc.idl:
  12.     Os (OptLev=s), W1, Zp8, env=Win32 (32b run), ms_ext, c_ext
  13.     error checks: allocation ref bounds_check enum stub_data 
  14.     VC __declspec() decoration level: 
  15.          __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  16.          DECLSPEC_UUID(), MIDL_INTERFACE()
  17. */
  18. //@@MIDL_FILE_HEADING(  )
  19.  
  20.  
  21. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  22. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  23. #define __REQUIRED_RPCNDR_H_VERSION__ 440
  24. #endif
  25.  
  26. #include "rpc.h"
  27. #include "rpcndr.h"
  28.  
  29. #ifndef __RPCNDR_H_VERSION__
  30. #error this stub requires an updated version of <rpcndr.h>
  31. #endif // __RPCNDR_H_VERSION__
  32.  
  33. #ifndef COM_NO_WINDOWS_H
  34. #include "windows.h"
  35. #include "ole2.h"
  36. #endif /*COM_NO_WINDOWS_H*/
  37.  
  38. #ifndef __videoacc_h__
  39. #define __videoacc_h__
  40.  
  41. /* Forward Declarations */ 
  42.  
  43. #ifndef __IAMVideoAcceleratorNotify_FWD_DEFINED__
  44. #define __IAMVideoAcceleratorNotify_FWD_DEFINED__
  45. typedef interface IAMVideoAcceleratorNotify IAMVideoAcceleratorNotify;
  46. #endif     /* __IAMVideoAcceleratorNotify_FWD_DEFINED__ */
  47.  
  48.  
  49. #ifndef __IAMVideoAccelerator_FWD_DEFINED__
  50. #define __IAMVideoAccelerator_FWD_DEFINED__
  51. typedef interface IAMVideoAccelerator IAMVideoAccelerator;
  52. #endif     /* __IAMVideoAccelerator_FWD_DEFINED__ */
  53.  
  54.  
  55. /* header files for imported files */
  56. #include "unknwn.h"
  57.  
  58. #ifdef __cplusplus
  59. extern "C"{
  60. #endif 
  61.  
  62. void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
  63. void __RPC_USER MIDL_user_free( void __RPC_FAR * ); 
  64.  
  65. /* interface __MIDL_itf_videoacc_0000 */
  66. /* [local] */ 
  67.  
  68. //
  69. //   The following declarations within the 'if 0' block are dummy typedefs used to make
  70. //   the motncomp.idl file build.  The actual definitions are contained in ddraw.h and amva.h
  71. //
  72. #if 0
  73. typedef void __RPC_FAR *LPVOID;
  74.  
  75. typedef void __RPC_FAR *LPGUID;
  76.  
  77. typedef void __RPC_FAR *LPDIRECTDRAWSURFACE;
  78.  
  79. typedef void __RPC_FAR *LPDDPIXELFORMAT;
  80.  
  81. typedef void __RPC_FAR *LPAMVAInternalMemInfo;
  82.  
  83. typedef void AMVAUncompDataInfo;
  84.  
  85. typedef void __RPC_FAR *LPAMVACompBufferInfo;
  86.  
  87. typedef void AMVABUFFERINFO;
  88.  
  89. typedef void AMVAEndFrameInfo;
  90.  
  91. typedef void __RPC_FAR *LPAMVAUncompBufferInfo;
  92.  
  93. typedef void AMVABeginFrameInfo;
  94.  
  95. typedef IUnknown __RPC_FAR *IMediaSample;
  96.  
  97. #endif
  98. #include <ddraw.h>
  99. #include <amva.h>
  100.  
  101. /* Define interface guids */
  102. DEFINE_GUID(IID_IAMVideoAcceleratorNotify,0x256A6A21,0xFBAD,0x11d1,0x82,0xBF,0x00,0xA0,0xC9,0x69,0x6C,0x8F);
  103. DEFINE_GUID(IID_IAMVideoAccelerator,0x256A6A22,0xFBAD,0x11d1,0x82,0xBF,0x00,0xA0,0xC9,0x69,0x6C,0x8F);
  104.  
  105.  
  106. extern RPC_IF_HANDLE __MIDL_itf_videoacc_0000_v0_0_c_ifspec;
  107. extern RPC_IF_HANDLE __MIDL_itf_videoacc_0000_v0_0_s_ifspec;
  108.  
  109. #ifndef __IAMVideoAcceleratorNotify_INTERFACE_DEFINED__
  110. #define __IAMVideoAcceleratorNotify_INTERFACE_DEFINED__
  111.  
  112. /* interface IAMVideoAcceleratorNotify */
  113. /* [unique][helpstring][uuid][object][local] */ 
  114.  
  115.  
  116. EXTERN_C const IID IID_IAMVideoAcceleratorNotify;
  117.  
  118. #if defined(__cplusplus) && !defined(CINTERFACE)
  119.     
  120.     MIDL_INTERFACE("256A6A21-FBAD-11d1-82BF-00A0C9696C8F")
  121.     IAMVideoAcceleratorNotify : public IUnknown
  122.     {
  123.     public:
  124.         virtual HRESULT STDMETHODCALLTYPE GetUncompSurfacesInfo( 
  125.             /* [in] */ const GUID __RPC_FAR *pGuid,
  126.             /* [out][in] */ LPAMVAUncompBufferInfo pUncompBufferInfo) = 0;
  127.         
  128.         virtual HRESULT STDMETHODCALLTYPE SetUncompSurfacesInfo( 
  129.             /* [in] */ DWORD dwActualUncompSurfacesAllocated) = 0;
  130.         
  131.         virtual HRESULT STDMETHODCALLTYPE GetCreateVideoAcceleratorData( 
  132.             /* [in] */ const GUID __RPC_FAR *pGuid,
  133.             /* [out] */ LPDWORD pdwSizeMiscData,
  134.             /* [out] */ LPVOID __RPC_FAR *ppMiscData) = 0;
  135.         
  136.     };
  137.     
  138. #else     /* C style interface */
  139.  
  140.     typedef struct IAMVideoAcceleratorNotifyVtbl
  141.     {
  142.         BEGIN_INTERFACE
  143.         
  144.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  145.             IAMVideoAcceleratorNotify __RPC_FAR * This,
  146.             /* [in] */ REFIID riid,
  147.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  148.         
  149.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  150.             IAMVideoAcceleratorNotify __RPC_FAR * This);
  151.         
  152.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  153.             IAMVideoAcceleratorNotify __RPC_FAR * This);
  154.         
  155.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetUncompSurfacesInfo )( 
  156.             IAMVideoAcceleratorNotify __RPC_FAR * This,
  157.             /* [in] */ const GUID __RPC_FAR *pGuid,
  158.             /* [out][in] */ LPAMVAUncompBufferInfo pUncompBufferInfo);
  159.         
  160.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetUncompSurfacesInfo )( 
  161.             IAMVideoAcceleratorNotify __RPC_FAR * This,
  162.             /* [in] */ DWORD dwActualUncompSurfacesAllocated);
  163.         
  164.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCreateVideoAcceleratorData )( 
  165.             IAMVideoAcceleratorNotify __RPC_FAR * This,
  166.             /* [in] */ const GUID __RPC_FAR *pGuid,
  167.             /* [out] */ LPDWORD pdwSizeMiscData,
  168.             /* [out] */ LPVOID __RPC_FAR *ppMiscData);
  169.         
  170.         END_INTERFACE
  171.     } IAMVideoAcceleratorNotifyVtbl;
  172.  
  173.     interface IAMVideoAcceleratorNotify
  174.     {
  175.         CONST_VTBL struct IAMVideoAcceleratorNotifyVtbl __RPC_FAR *lpVtbl;
  176.     };
  177.  
  178.     
  179.  
  180. #ifdef COBJMACROS
  181.  
  182.  
  183. #define IAMVideoAcceleratorNotify_QueryInterface(This,riid,ppvObject)    \
  184.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  185.  
  186. #define IAMVideoAcceleratorNotify_AddRef(This)    \
  187.     (This)->lpVtbl -> AddRef(This)
  188.  
  189. #define IAMVideoAcceleratorNotify_Release(This)    \
  190.     (This)->lpVtbl -> Release(This)
  191.  
  192.  
  193. #define IAMVideoAcceleratorNotify_GetUncompSurfacesInfo(This,pGuid,pUncompBufferInfo)    \
  194.     (This)->lpVtbl -> GetUncompSurfacesInfo(This,pGuid,pUncompBufferInfo)
  195.  
  196. #define IAMVideoAcceleratorNotify_SetUncompSurfacesInfo(This,dwActualUncompSurfacesAllocated)    \
  197.     (This)->lpVtbl -> SetUncompSurfacesInfo(This,dwActualUncompSurfacesAllocated)
  198.  
  199. #define IAMVideoAcceleratorNotify_GetCreateVideoAcceleratorData(This,pGuid,pdwSizeMiscData,ppMiscData)    \
  200.     (This)->lpVtbl -> GetCreateVideoAcceleratorData(This,pGuid,pdwSizeMiscData,ppMiscData)
  201.  
  202. #endif /* COBJMACROS */
  203.  
  204.  
  205. #endif     /* C style interface */
  206.  
  207.  
  208.  
  209. HRESULT STDMETHODCALLTYPE IAMVideoAcceleratorNotify_GetUncompSurfacesInfo_Proxy( 
  210.     IAMVideoAcceleratorNotify __RPC_FAR * This,
  211.     /* [in] */ const GUID __RPC_FAR *pGuid,
  212.     /* [out][in] */ LPAMVAUncompBufferInfo pUncompBufferInfo);
  213.  
  214.  
  215. void __RPC_STUB IAMVideoAcceleratorNotify_GetUncompSurfacesInfo_Stub(
  216.     IRpcStubBuffer *This,
  217.     IRpcChannelBuffer *_pRpcChannelBuffer,
  218.     PRPC_MESSAGE _pRpcMessage,
  219.     DWORD *_pdwStubPhase);
  220.  
  221.  
  222. HRESULT STDMETHODCALLTYPE IAMVideoAcceleratorNotify_SetUncompSurfacesInfo_Proxy( 
  223.     IAMVideoAcceleratorNotify __RPC_FAR * This,
  224.     /* [in] */ DWORD dwActualUncompSurfacesAllocated);
  225.  
  226.  
  227. void __RPC_STUB IAMVideoAcceleratorNotify_SetUncompSurfacesInfo_Stub(
  228.     IRpcStubBuffer *This,
  229.     IRpcChannelBuffer *_pRpcChannelBuffer,
  230.     PRPC_MESSAGE _pRpcMessage,
  231.     DWORD *_pdwStubPhase);
  232.  
  233.  
  234. HRESULT STDMETHODCALLTYPE IAMVideoAcceleratorNotify_GetCreateVideoAcceleratorData_Proxy( 
  235.     IAMVideoAcceleratorNotify __RPC_FAR * This,
  236.     /* [in] */ const GUID __RPC_FAR *pGuid,
  237.     /* [out] */ LPDWORD pdwSizeMiscData,
  238.     /* [out] */ LPVOID __RPC_FAR *ppMiscData);
  239.  
  240.  
  241. void __RPC_STUB IAMVideoAcceleratorNotify_GetCreateVideoAcceleratorData_Stub(
  242.     IRpcStubBuffer *This,
  243.     IRpcChannelBuffer *_pRpcChannelBuffer,
  244.     PRPC_MESSAGE _pRpcMessage,
  245.     DWORD *_pdwStubPhase);
  246.  
  247.  
  248.  
  249. #endif     /* __IAMVideoAcceleratorNotify_INTERFACE_DEFINED__ */
  250.  
  251.  
  252. #ifndef __IAMVideoAccelerator_INTERFACE_DEFINED__
  253. #define __IAMVideoAccelerator_INTERFACE_DEFINED__
  254.  
  255. /* interface IAMVideoAccelerator */
  256. /* [unique][helpstring][uuid][object][local] */ 
  257.  
  258.  
  259. EXTERN_C const IID IID_IAMVideoAccelerator;
  260.  
  261. #if defined(__cplusplus) && !defined(CINTERFACE)
  262.     
  263.     MIDL_INTERFACE("256A6A22-FBAD-11d1-82BF-00A0C9696C8F")
  264.     IAMVideoAccelerator : public IUnknown
  265.     {
  266.     public:
  267.         virtual HRESULT STDMETHODCALLTYPE GetVideoAcceleratorGUIDs( 
  268.             /* [out][in] */ LPDWORD pdwNumGuidsSupported,
  269.             /* [out][in] */ LPGUID pGuidsSupported) = 0;
  270.         
  271.         virtual HRESULT STDMETHODCALLTYPE GetUncompFormatsSupported( 
  272.             /* [in] */ const GUID __RPC_FAR *pGuid,
  273.             /* [out][in] */ LPDWORD pdwNumFormatsSupported,
  274.             /* [out][in] */ LPDDPIXELFORMAT pFormatsSupported) = 0;
  275.         
  276.         virtual HRESULT STDMETHODCALLTYPE GetInternalMemInfo( 
  277.             /* [in] */ const GUID __RPC_FAR *pGuid,
  278.             /* [in] */ const AMVAUncompDataInfo __RPC_FAR *pamvaUncompDataInfo,
  279.             /* [out][in] */ LPAMVAInternalMemInfo pamvaInternalMemInfo) = 0;
  280.         
  281.         virtual HRESULT STDMETHODCALLTYPE GetCompBufferInfo( 
  282.             /* [in] */ const GUID __RPC_FAR *pGuid,
  283.             /* [in] */ const AMVAUncompDataInfo __RPC_FAR *pamvaUncompDataInfo,
  284.             /* [out][in] */ LPDWORD pdwNumTypesCompBuffers,
  285.             /* [out] */ LPAMVACompBufferInfo pamvaCompBufferInfo) = 0;
  286.         
  287.         virtual HRESULT STDMETHODCALLTYPE GetInternalCompBufferInfo( 
  288.             /* [out][in] */ LPDWORD pdwNumTypesCompBuffers,
  289.             /* [out] */ LPAMVACompBufferInfo pamvaCompBufferInfo) = 0;
  290.         
  291.         virtual HRESULT STDMETHODCALLTYPE BeginFrame( 
  292.             /* [in] */ const AMVABeginFrameInfo __RPC_FAR *amvaBeginFrameInfo) = 0;
  293.         
  294.         virtual HRESULT STDMETHODCALLTYPE EndFrame( 
  295.             /* [in] */ const AMVAEndFrameInfo __RPC_FAR *pEndFrameInfo) = 0;
  296.         
  297.         virtual HRESULT STDMETHODCALLTYPE GetBuffer( 
  298.             /* [in] */ DWORD dwTypeIndex,
  299.             /* [in] */ DWORD dwBufferIndex,
  300.             /* [in] */ BOOL bReadOnly,
  301.             /* [out] */ LPVOID __RPC_FAR *ppBuffer,
  302.             /* [out] */ LONG __RPC_FAR *lpStride) = 0;
  303.         
  304.         virtual HRESULT STDMETHODCALLTYPE ReleaseBuffer( 
  305.             /* [in] */ DWORD dwTypeIndex,
  306.             /* [in] */ DWORD dwBufferIndex) = 0;
  307.         
  308.         virtual HRESULT STDMETHODCALLTYPE Execute( 
  309.             /* [in] */ DWORD dwFunction,
  310.             /* [in] */ LPVOID lpPrivateInputData,
  311.             /* [in] */ DWORD cbPrivateInputData,
  312.             /* [in] */ LPVOID lpPrivateOutputDat,
  313.             /* [in] */ DWORD cbPrivateOutputData,
  314.             /* [in] */ DWORD dwNumBuffers,
  315.             /* [in] */ const AMVABUFFERINFO __RPC_FAR *pamvaBufferInfo) = 0;
  316.         
  317.         virtual HRESULT STDMETHODCALLTYPE QueryRenderStatus( 
  318.             /* [in] */ DWORD dwTypeIndex,
  319.             /* [in] */ DWORD dwBufferIndex,
  320.             /* [in] */ DWORD dwFlags) = 0;
  321.         
  322.         virtual HRESULT STDMETHODCALLTYPE DisplayFrame( 
  323.             /* [in] */ DWORD dwFlipToIndex,
  324.             /* [in] */ IMediaSample __RPC_FAR *pMediaSample) = 0;
  325.         
  326.     };
  327.     
  328. #else     /* C style interface */
  329.  
  330.     typedef struct IAMVideoAcceleratorVtbl
  331.     {
  332.         BEGIN_INTERFACE
  333.         
  334.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  335.             IAMVideoAccelerator __RPC_FAR * This,
  336.             /* [in] */ REFIID riid,
  337.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  338.         
  339.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  340.             IAMVideoAccelerator __RPC_FAR * This);
  341.         
  342.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  343.             IAMVideoAccelerator __RPC_FAR * This);
  344.         
  345.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetVideoAcceleratorGUIDs )( 
  346.             IAMVideoAccelerator __RPC_FAR * This,
  347.             /* [out][in] */ LPDWORD pdwNumGuidsSupported,
  348.             /* [out][in] */ LPGUID pGuidsSupported);
  349.         
  350.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetUncompFormatsSupported )( 
  351.             IAMVideoAccelerator __RPC_FAR * This,
  352.             /* [in] */ const GUID __RPC_FAR *pGuid,
  353.             /* [out][in] */ LPDWORD pdwNumFormatsSupported,
  354.             /* [out][in] */ LPDDPIXELFORMAT pFormatsSupported);
  355.         
  356.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetInternalMemInfo )( 
  357.             IAMVideoAccelerator __RPC_FAR * This,
  358.             /* [in] */ const GUID __RPC_FAR *pGuid,
  359.             /* [in] */ const AMVAUncompDataInfo __RPC_FAR *pamvaUncompDataInfo,
  360.             /* [out][in] */ LPAMVAInternalMemInfo pamvaInternalMemInfo);
  361.         
  362.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCompBufferInfo )( 
  363.             IAMVideoAccelerator __RPC_FAR * This,
  364.             /* [in] */ const GUID __RPC_FAR *pGuid,
  365.             /* [in] */ const AMVAUncompDataInfo __RPC_FAR *pamvaUncompDataInfo,
  366.             /* [out][in] */ LPDWORD pdwNumTypesCompBuffers,
  367.             /* [out] */ LPAMVACompBufferInfo pamvaCompBufferInfo);
  368.         
  369.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetInternalCompBufferInfo )( 
  370.             IAMVideoAccelerator __RPC_FAR * This,
  371.             /* [out][in] */ LPDWORD pdwNumTypesCompBuffers,
  372.             /* [out] */ LPAMVACompBufferInfo pamvaCompBufferInfo);
  373.         
  374.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *BeginFrame )( 
  375.             IAMVideoAccelerator __RPC_FAR * This,
  376.             /* [in] */ const AMVABeginFrameInfo __RPC_FAR *amvaBeginFrameInfo);
  377.         
  378.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *EndFrame )( 
  379.             IAMVideoAccelerator __RPC_FAR * This,
  380.             /* [in] */ const AMVAEndFrameInfo __RPC_FAR *pEndFrameInfo);
  381.         
  382.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetBuffer )( 
  383.             IAMVideoAccelerator __RPC_FAR * This,
  384.             /* [in] */ DWORD dwTypeIndex,
  385.             /* [in] */ DWORD dwBufferIndex,
  386.             /* [in] */ BOOL bReadOnly,
  387.             /* [out] */ LPVOID __RPC_FAR *ppBuffer,
  388.             /* [out] */ LONG __RPC_FAR *lpStride);
  389.         
  390.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ReleaseBuffer )( 
  391.             IAMVideoAccelerator __RPC_FAR * This,
  392.             /* [in] */ DWORD dwTypeIndex,
  393.             /* [in] */ DWORD dwBufferIndex);
  394.         
  395.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Execute )( 
  396.             IAMVideoAccelerator __RPC_FAR * This,
  397.             /* [in] */ DWORD dwFunction,
  398.             /* [in] */ LPVOID lpPrivateInputData,
  399.             /* [in] */ DWORD cbPrivateInputData,
  400.             /* [in] */ LPVOID lpPrivateOutputDat,
  401.             /* [in] */ DWORD cbPrivateOutputData,
  402.             /* [in] */ DWORD dwNumBuffers,
  403.             /* [in] */ const AMVABUFFERINFO __RPC_FAR *pamvaBufferInfo);
  404.         
  405.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryRenderStatus )( 
  406.             IAMVideoAccelerator __RPC_FAR * This,
  407.             /* [in] */ DWORD dwTypeIndex,
  408.             /* [in] */ DWORD dwBufferIndex,
  409.             /* [in] */ DWORD dwFlags);
  410.         
  411.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DisplayFrame )( 
  412.             IAMVideoAccelerator __RPC_FAR * This,
  413.             /* [in] */ DWORD dwFlipToIndex,
  414.             /* [in] */ IMediaSample __RPC_FAR *pMediaSample);
  415.         
  416.         END_INTERFACE
  417.     } IAMVideoAcceleratorVtbl;
  418.  
  419.     interface IAMVideoAccelerator
  420.     {
  421.         CONST_VTBL struct IAMVideoAcceleratorVtbl __RPC_FAR *lpVtbl;
  422.     };
  423.  
  424.     
  425.  
  426. #ifdef COBJMACROS
  427.  
  428.  
  429. #define IAMVideoAccelerator_QueryInterface(This,riid,ppvObject)    \
  430.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  431.  
  432. #define IAMVideoAccelerator_AddRef(This)    \
  433.     (This)->lpVtbl -> AddRef(This)
  434.  
  435. #define IAMVideoAccelerator_Release(This)    \
  436.     (This)->lpVtbl -> Release(This)
  437.  
  438.  
  439. #define IAMVideoAccelerator_GetVideoAcceleratorGUIDs(This,pdwNumGuidsSupported,pGuidsSupported)    \
  440.     (This)->lpVtbl -> GetVideoAcceleratorGUIDs(This,pdwNumGuidsSupported,pGuidsSupported)
  441.  
  442. #define IAMVideoAccelerator_GetUncompFormatsSupported(This,pGuid,pdwNumFormatsSupported,pFormatsSupported)    \
  443.     (This)->lpVtbl -> GetUncompFormatsSupported(This,pGuid,pdwNumFormatsSupported,pFormatsSupported)
  444.  
  445. #define IAMVideoAccelerator_GetInternalMemInfo(This,pGuid,pamvaUncompDataInfo,pamvaInternalMemInfo)    \
  446.     (This)->lpVtbl -> GetInternalMemInfo(This,pGuid,pamvaUncompDataInfo,pamvaInternalMemInfo)
  447.  
  448. #define IAMVideoAccelerator_GetCompBufferInfo(This,pGuid,pamvaUncompDataInfo,pdwNumTypesCompBuffers,pamvaCompBufferInfo)    \
  449.     (This)->lpVtbl -> GetCompBufferInfo(This,pGuid,pamvaUncompDataInfo,pdwNumTypesCompBuffers,pamvaCompBufferInfo)
  450.  
  451. #define IAMVideoAccelerator_GetInternalCompBufferInfo(This,pdwNumTypesCompBuffers,pamvaCompBufferInfo)    \
  452.     (This)->lpVtbl -> GetInternalCompBufferInfo(This,pdwNumTypesCompBuffers,pamvaCompBufferInfo)
  453.  
  454. #define IAMVideoAccelerator_BeginFrame(This,amvaBeginFrameInfo)    \
  455.     (This)->lpVtbl -> BeginFrame(This,amvaBeginFrameInfo)
  456.  
  457. #define IAMVideoAccelerator_EndFrame(This,pEndFrameInfo)    \
  458.     (This)->lpVtbl -> EndFrame(This,pEndFrameInfo)
  459.  
  460. #define IAMVideoAccelerator_GetBuffer(This,dwTypeIndex,dwBufferIndex,bReadOnly,ppBuffer,lpStride)    \
  461.     (This)->lpVtbl -> GetBuffer(This,dwTypeIndex,dwBufferIndex,bReadOnly,ppBuffer,lpStride)
  462.  
  463. #define IAMVideoAccelerator_ReleaseBuffer(This,dwTypeIndex,dwBufferIndex)    \
  464.     (This)->lpVtbl -> ReleaseBuffer(This,dwTypeIndex,dwBufferIndex)
  465.  
  466. #define IAMVideoAccelerator_Execute(This,dwFunction,lpPrivateInputData,cbPrivateInputData,lpPrivateOutputDat,cbPrivateOutputData,dwNumBuffers,pamvaBufferInfo)    \
  467.     (This)->lpVtbl -> Execute(This,dwFunction,lpPrivateInputData,cbPrivateInputData,lpPrivateOutputDat,cbPrivateOutputData,dwNumBuffers,pamvaBufferInfo)
  468.  
  469. #define IAMVideoAccelerator_QueryRenderStatus(This,dwTypeIndex,dwBufferIndex,dwFlags)    \
  470.     (This)->lpVtbl -> QueryRenderStatus(This,dwTypeIndex,dwBufferIndex,dwFlags)
  471.  
  472. #define IAMVideoAccelerator_DisplayFrame(This,dwFlipToIndex,pMediaSample)    \
  473.     (This)->lpVtbl -> DisplayFrame(This,dwFlipToIndex,pMediaSample)
  474.  
  475. #endif /* COBJMACROS */
  476.  
  477.  
  478. #endif     /* C style interface */
  479.  
  480.  
  481.  
  482. HRESULT STDMETHODCALLTYPE IAMVideoAccelerator_GetVideoAcceleratorGUIDs_Proxy( 
  483.     IAMVideoAccelerator __RPC_FAR * This,
  484.     /* [out][in] */ LPDWORD pdwNumGuidsSupported,
  485.     /* [out][in] */ LPGUID pGuidsSupported);
  486.  
  487.  
  488. void __RPC_STUB IAMVideoAccelerator_GetVideoAcceleratorGUIDs_Stub(
  489.     IRpcStubBuffer *This,
  490.     IRpcChannelBuffer *_pRpcChannelBuffer,
  491.     PRPC_MESSAGE _pRpcMessage,
  492.     DWORD *_pdwStubPhase);
  493.  
  494.  
  495. HRESULT STDMETHODCALLTYPE IAMVideoAccelerator_GetUncompFormatsSupported_Proxy( 
  496.     IAMVideoAccelerator __RPC_FAR * This,
  497.     /* [in] */ const GUID __RPC_FAR *pGuid,
  498.     /* [out][in] */ LPDWORD pdwNumFormatsSupported,
  499.     /* [out][in] */ LPDDPIXELFORMAT pFormatsSupported);
  500.  
  501.  
  502. void __RPC_STUB IAMVideoAccelerator_GetUncompFormatsSupported_Stub(
  503.     IRpcStubBuffer *This,
  504.     IRpcChannelBuffer *_pRpcChannelBuffer,
  505.     PRPC_MESSAGE _pRpcMessage,
  506.     DWORD *_pdwStubPhase);
  507.  
  508.  
  509. HRESULT STDMETHODCALLTYPE IAMVideoAccelerator_GetInternalMemInfo_Proxy( 
  510.     IAMVideoAccelerator __RPC_FAR * This,
  511.     /* [in] */ const GUID __RPC_FAR *pGuid,
  512.     /* [in] */ const AMVAUncompDataInfo __RPC_FAR *pamvaUncompDataInfo,
  513.     /* [out][in] */ LPAMVAInternalMemInfo pamvaInternalMemInfo);
  514.  
  515.  
  516. void __RPC_STUB IAMVideoAccelerator_GetInternalMemInfo_Stub(
  517.     IRpcStubBuffer *This,
  518.     IRpcChannelBuffer *_pRpcChannelBuffer,
  519.     PRPC_MESSAGE _pRpcMessage,
  520.     DWORD *_pdwStubPhase);
  521.  
  522.  
  523. HRESULT STDMETHODCALLTYPE IAMVideoAccelerator_GetCompBufferInfo_Proxy( 
  524.     IAMVideoAccelerator __RPC_FAR * This,
  525.     /* [in] */ const GUID __RPC_FAR *pGuid,
  526.     /* [in] */ const AMVAUncompDataInfo __RPC_FAR *pamvaUncompDataInfo,
  527.     /* [out][in] */ LPDWORD pdwNumTypesCompBuffers,
  528.     /* [out] */ LPAMVACompBufferInfo pamvaCompBufferInfo);
  529.  
  530.  
  531. void __RPC_STUB IAMVideoAccelerator_GetCompBufferInfo_Stub(
  532.     IRpcStubBuffer *This,
  533.     IRpcChannelBuffer *_pRpcChannelBuffer,
  534.     PRPC_MESSAGE _pRpcMessage,
  535.     DWORD *_pdwStubPhase);
  536.  
  537.  
  538. HRESULT STDMETHODCALLTYPE IAMVideoAccelerator_GetInternalCompBufferInfo_Proxy( 
  539.     IAMVideoAccelerator __RPC_FAR * This,
  540.     /* [out][in] */ LPDWORD pdwNumTypesCompBuffers,
  541.     /* [out] */ LPAMVACompBufferInfo pamvaCompBufferInfo);
  542.  
  543.  
  544. void __RPC_STUB IAMVideoAccelerator_GetInternalCompBufferInfo_Stub(
  545.     IRpcStubBuffer *This,
  546.     IRpcChannelBuffer *_pRpcChannelBuffer,
  547.     PRPC_MESSAGE _pRpcMessage,
  548.     DWORD *_pdwStubPhase);
  549.  
  550.  
  551. HRESULT STDMETHODCALLTYPE IAMVideoAccelerator_BeginFrame_Proxy( 
  552.     IAMVideoAccelerator __RPC_FAR * This,
  553.     /* [in] */ const AMVABeginFrameInfo __RPC_FAR *amvaBeginFrameInfo);
  554.  
  555.  
  556. void __RPC_STUB IAMVideoAccelerator_BeginFrame_Stub(
  557.     IRpcStubBuffer *This,
  558.     IRpcChannelBuffer *_pRpcChannelBuffer,
  559.     PRPC_MESSAGE _pRpcMessage,
  560.     DWORD *_pdwStubPhase);
  561.  
  562.  
  563. HRESULT STDMETHODCALLTYPE IAMVideoAccelerator_EndFrame_Proxy( 
  564.     IAMVideoAccelerator __RPC_FAR * This,
  565.     /* [in] */ const AMVAEndFrameInfo __RPC_FAR *pEndFrameInfo);
  566.  
  567.  
  568. void __RPC_STUB IAMVideoAccelerator_EndFrame_Stub(
  569.     IRpcStubBuffer *This,
  570.     IRpcChannelBuffer *_pRpcChannelBuffer,
  571.     PRPC_MESSAGE _pRpcMessage,
  572.     DWORD *_pdwStubPhase);
  573.  
  574.  
  575. HRESULT STDMETHODCALLTYPE IAMVideoAccelerator_GetBuffer_Proxy( 
  576.     IAMVideoAccelerator __RPC_FAR * This,
  577.     /* [in] */ DWORD dwTypeIndex,
  578.     /* [in] */ DWORD dwBufferIndex,
  579.     /* [in] */ BOOL bReadOnly,
  580.     /* [out] */ LPVOID __RPC_FAR *ppBuffer,
  581.     /* [out] */ LONG __RPC_FAR *lpStride);
  582.  
  583.  
  584. void __RPC_STUB IAMVideoAccelerator_GetBuffer_Stub(
  585.     IRpcStubBuffer *This,
  586.     IRpcChannelBuffer *_pRpcChannelBuffer,
  587.     PRPC_MESSAGE _pRpcMessage,
  588.     DWORD *_pdwStubPhase);
  589.  
  590.  
  591. HRESULT STDMETHODCALLTYPE IAMVideoAccelerator_ReleaseBuffer_Proxy( 
  592.     IAMVideoAccelerator __RPC_FAR * This,
  593.     /* [in] */ DWORD dwTypeIndex,
  594.     /* [in] */ DWORD dwBufferIndex);
  595.  
  596.  
  597. void __RPC_STUB IAMVideoAccelerator_ReleaseBuffer_Stub(
  598.     IRpcStubBuffer *This,
  599.     IRpcChannelBuffer *_pRpcChannelBuffer,
  600.     PRPC_MESSAGE _pRpcMessage,
  601.     DWORD *_pdwStubPhase);
  602.  
  603.  
  604. HRESULT STDMETHODCALLTYPE IAMVideoAccelerator_Execute_Proxy( 
  605.     IAMVideoAccelerator __RPC_FAR * This,
  606.     /* [in] */ DWORD dwFunction,
  607.     /* [in] */ LPVOID lpPrivateInputData,
  608.     /* [in] */ DWORD cbPrivateInputData,
  609.     /* [in] */ LPVOID lpPrivateOutputDat,
  610.     /* [in] */ DWORD cbPrivateOutputData,
  611.     /* [in] */ DWORD dwNumBuffers,
  612.     /* [in] */ const AMVABUFFERINFO __RPC_FAR *pamvaBufferInfo);
  613.  
  614.  
  615. void __RPC_STUB IAMVideoAccelerator_Execute_Stub(
  616.     IRpcStubBuffer *This,
  617.     IRpcChannelBuffer *_pRpcChannelBuffer,
  618.     PRPC_MESSAGE _pRpcMessage,
  619.     DWORD *_pdwStubPhase);
  620.  
  621.  
  622. HRESULT STDMETHODCALLTYPE IAMVideoAccelerator_QueryRenderStatus_Proxy( 
  623.     IAMVideoAccelerator __RPC_FAR * This,
  624.     /* [in] */ DWORD dwTypeIndex,
  625.     /* [in] */ DWORD dwBufferIndex,
  626.     /* [in] */ DWORD dwFlags);
  627.  
  628.  
  629. void __RPC_STUB IAMVideoAccelerator_QueryRenderStatus_Stub(
  630.     IRpcStubBuffer *This,
  631.     IRpcChannelBuffer *_pRpcChannelBuffer,
  632.     PRPC_MESSAGE _pRpcMessage,
  633.     DWORD *_pdwStubPhase);
  634.  
  635.  
  636. HRESULT STDMETHODCALLTYPE IAMVideoAccelerator_DisplayFrame_Proxy( 
  637.     IAMVideoAccelerator __RPC_FAR * This,
  638.     /* [in] */ DWORD dwFlipToIndex,
  639.     /* [in] */ IMediaSample __RPC_FAR *pMediaSample);
  640.  
  641.  
  642. void __RPC_STUB IAMVideoAccelerator_DisplayFrame_Stub(
  643.     IRpcStubBuffer *This,
  644.     IRpcChannelBuffer *_pRpcChannelBuffer,
  645.     PRPC_MESSAGE _pRpcMessage,
  646.     DWORD *_pdwStubPhase);
  647.  
  648.  
  649.  
  650. #endif     /* __IAMVideoAccelerator_INTERFACE_DEFINED__ */
  651.  
  652.  
  653. /* Additional Prototypes for ALL interfaces */
  654.  
  655. /* end of Additional Prototypes */
  656.  
  657. #ifdef __cplusplus
  658. }
  659. #endif
  660.  
  661. #endif
  662.  
  663.  
  664. #pragma option pop /*P_O_Pop*/
  665.