dxtrans.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:155k
源码类别:

模拟服务器

开发平台:

C/C++

  1. #define IDXSurface_AddRef(This)
  2.     (This)->lpVtbl -> AddRef(This)
  3. #define IDXSurface_Release(This)
  4.     (This)->lpVtbl -> Release(This)
  5. #define IDXSurface_GetGenerationId(This,pID)
  6.     (This)->lpVtbl -> GetGenerationId(This,pID)
  7. #define IDXSurface_IncrementGenerationId(This,bRefresh)
  8.     (This)->lpVtbl -> IncrementGenerationId(This,bRefresh)
  9. #define IDXSurface_GetObjectSize(This,pcbSize)
  10.     (This)->lpVtbl -> GetObjectSize(This,pcbSize)
  11. #define IDXSurface_GetPixelFormat(This,pFormatID,pSampleFormatEnum)
  12.     (This)->lpVtbl -> GetPixelFormat(This,pFormatID,pSampleFormatEnum)
  13. #define IDXSurface_GetBounds(This,pBounds)
  14.     (This)->lpVtbl -> GetBounds(This,pBounds)
  15. #define IDXSurface_GetStatusFlags(This,pdwStatusFlags)
  16.     (This)->lpVtbl -> GetStatusFlags(This,pdwStatusFlags)
  17. #define IDXSurface_SetStatusFlags(This,dwStatusFlags)
  18.     (This)->lpVtbl -> SetStatusFlags(This,dwStatusFlags)
  19. #define IDXSurface_LockSurface(This,pBounds,ulTimeOut,dwFlags,riid,ppPointer,pulGenerationId)
  20.     (This)->lpVtbl -> LockSurface(This,pBounds,ulTimeOut,dwFlags,riid,ppPointer,pulGenerationId)
  21. #define IDXSurface_GetDirectDrawSurface(This,riid,ppSurface)
  22.     (This)->lpVtbl -> GetDirectDrawSurface(This,riid,ppSurface)
  23. #define IDXSurface_GetColorKey(This,pColorKey)
  24.     (This)->lpVtbl -> GetColorKey(This,pColorKey)
  25. #define IDXSurface_SetColorKey(This,ColorKey)
  26.     (This)->lpVtbl -> SetColorKey(This,ColorKey)
  27. #define IDXSurface_LockSurfaceDC(This,pBounds,ulTimeOut,dwFlags,ppDCLock)
  28.     (This)->lpVtbl -> LockSurfaceDC(This,pBounds,ulTimeOut,dwFlags,ppDCLock)
  29. #define IDXSurface_SetAppData(This,dwAppData)
  30.     (This)->lpVtbl -> SetAppData(This,dwAppData)
  31. #define IDXSurface_GetAppData(This,pdwAppData)
  32.     (This)->lpVtbl -> GetAppData(This,pdwAppData)
  33. #endif /* COBJMACROS */
  34. #endif  /* C style interface */
  35. HRESULT STDMETHODCALLTYPE IDXSurface_GetPixelFormat_Proxy( 
  36.     IDXSurface * This,
  37.     /* [out] */ GUID *pFormatID,
  38.     /* [out] */ DXSAMPLEFORMATENUM *pSampleFormatEnum);
  39. void __RPC_STUB IDXSurface_GetPixelFormat_Stub(
  40.     IRpcStubBuffer *This,
  41.     IRpcChannelBuffer *_pRpcChannelBuffer,
  42.     PRPC_MESSAGE _pRpcMessage,
  43.     DWORD *_pdwStubPhase);
  44. HRESULT STDMETHODCALLTYPE IDXSurface_GetBounds_Proxy( 
  45.     IDXSurface * This,
  46.     /* [out] */ DXBNDS *pBounds);
  47. void __RPC_STUB IDXSurface_GetBounds_Stub(
  48.     IRpcStubBuffer *This,
  49.     IRpcChannelBuffer *_pRpcChannelBuffer,
  50.     PRPC_MESSAGE _pRpcMessage,
  51.     DWORD *_pdwStubPhase);
  52. HRESULT STDMETHODCALLTYPE IDXSurface_GetStatusFlags_Proxy( 
  53.     IDXSurface * This,
  54.     /* [out] */ DWORD *pdwStatusFlags);
  55. void __RPC_STUB IDXSurface_GetStatusFlags_Stub(
  56.     IRpcStubBuffer *This,
  57.     IRpcChannelBuffer *_pRpcChannelBuffer,
  58.     PRPC_MESSAGE _pRpcMessage,
  59.     DWORD *_pdwStubPhase);
  60. HRESULT STDMETHODCALLTYPE IDXSurface_SetStatusFlags_Proxy( 
  61.     IDXSurface * This,
  62.     /* [in] */ DWORD dwStatusFlags);
  63. void __RPC_STUB IDXSurface_SetStatusFlags_Stub(
  64.     IRpcStubBuffer *This,
  65.     IRpcChannelBuffer *_pRpcChannelBuffer,
  66.     PRPC_MESSAGE _pRpcMessage,
  67.     DWORD *_pdwStubPhase);
  68. HRESULT STDMETHODCALLTYPE IDXSurface_LockSurface_Proxy( 
  69.     IDXSurface * This,
  70.     /* [in] */ const DXBNDS *pBounds,
  71.     /* [in] */ ULONG ulTimeOut,
  72.     /* [in] */ DWORD dwFlags,
  73.     /* [in] */ REFIID riid,
  74.     /* [iid_is][out] */ void **ppPointer,
  75.     /* [out] */ ULONG *pulGenerationId);
  76. void __RPC_STUB IDXSurface_LockSurface_Stub(
  77.     IRpcStubBuffer *This,
  78.     IRpcChannelBuffer *_pRpcChannelBuffer,
  79.     PRPC_MESSAGE _pRpcMessage,
  80.     DWORD *_pdwStubPhase);
  81. HRESULT STDMETHODCALLTYPE IDXSurface_GetDirectDrawSurface_Proxy( 
  82.     IDXSurface * This,
  83.     /* [in] */ REFIID riid,
  84.     /* [iid_is][out] */ void **ppSurface);
  85. void __RPC_STUB IDXSurface_GetDirectDrawSurface_Stub(
  86.     IRpcStubBuffer *This,
  87.     IRpcChannelBuffer *_pRpcChannelBuffer,
  88.     PRPC_MESSAGE _pRpcMessage,
  89.     DWORD *_pdwStubPhase);
  90. HRESULT STDMETHODCALLTYPE IDXSurface_GetColorKey_Proxy( 
  91.     IDXSurface * This,
  92.     DXSAMPLE *pColorKey);
  93. void __RPC_STUB IDXSurface_GetColorKey_Stub(
  94.     IRpcStubBuffer *This,
  95.     IRpcChannelBuffer *_pRpcChannelBuffer,
  96.     PRPC_MESSAGE _pRpcMessage,
  97.     DWORD *_pdwStubPhase);
  98. HRESULT STDMETHODCALLTYPE IDXSurface_SetColorKey_Proxy( 
  99.     IDXSurface * This,
  100.     DXSAMPLE ColorKey);
  101. void __RPC_STUB IDXSurface_SetColorKey_Stub(
  102.     IRpcStubBuffer *This,
  103.     IRpcChannelBuffer *_pRpcChannelBuffer,
  104.     PRPC_MESSAGE _pRpcMessage,
  105.     DWORD *_pdwStubPhase);
  106. HRESULT STDMETHODCALLTYPE IDXSurface_LockSurfaceDC_Proxy( 
  107.     IDXSurface * This,
  108.     /* [in] */ const DXBNDS *pBounds,
  109.     /* [in] */ ULONG ulTimeOut,
  110.     /* [in] */ DWORD dwFlags,
  111.     /* [out] */ IDXDCLock **ppDCLock);
  112. void __RPC_STUB IDXSurface_LockSurfaceDC_Stub(
  113.     IRpcStubBuffer *This,
  114.     IRpcChannelBuffer *_pRpcChannelBuffer,
  115.     PRPC_MESSAGE _pRpcMessage,
  116.     DWORD *_pdwStubPhase);
  117. HRESULT STDMETHODCALLTYPE IDXSurface_SetAppData_Proxy( 
  118.     IDXSurface * This,
  119.     DWORD_PTR dwAppData);
  120. void __RPC_STUB IDXSurface_SetAppData_Stub(
  121.     IRpcStubBuffer *This,
  122.     IRpcChannelBuffer *_pRpcChannelBuffer,
  123.     PRPC_MESSAGE _pRpcMessage,
  124.     DWORD *_pdwStubPhase);
  125. HRESULT STDMETHODCALLTYPE IDXSurface_GetAppData_Proxy( 
  126.     IDXSurface * This,
  127.     DWORD_PTR *pdwAppData);
  128. void __RPC_STUB IDXSurface_GetAppData_Stub(
  129.     IRpcStubBuffer *This,
  130.     IRpcChannelBuffer *_pRpcChannelBuffer,
  131.     PRPC_MESSAGE _pRpcMessage,
  132.     DWORD *_pdwStubPhase);
  133. #endif  /* __IDXSurface_INTERFACE_DEFINED__ */
  134. #ifndef __IDXSurfaceInit_INTERFACE_DEFINED__
  135. #define __IDXSurfaceInit_INTERFACE_DEFINED__
  136. /* interface IDXSurfaceInit */
  137. /* [local][unique][helpstring][uuid][object] */ 
  138. EXTERN_C const IID IID_IDXSurfaceInit;
  139. #if defined(__cplusplus) && !defined(CINTERFACE)
  140.     
  141.     MIDL_INTERFACE("9EA3B639-C37D-11d1-905E-00C04FD9189D")
  142.     IDXSurfaceInit : public IUnknown
  143.     {
  144.     public:
  145.         virtual HRESULT STDMETHODCALLTYPE InitSurface( 
  146.             /* [in] */ IUnknown *pDirectDraw,
  147.             /* [in] */ const DDSURFACEDESC *pDDSurfaceDesc,
  148.             /* [in] */ const GUID *pFormatID,
  149.             /* [in] */ const DXBNDS *pBounds,
  150.             /* [in] */ DWORD dwFlags) = 0;
  151.         
  152.     };
  153.     
  154. #else  /* C style interface */
  155.     typedef struct IDXSurfaceInitVtbl
  156.     {
  157.         BEGIN_INTERFACE
  158.         
  159.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  160.             IDXSurfaceInit * This,
  161.             /* [in] */ REFIID riid,
  162.             /* [iid_is][out] */ void **ppvObject);
  163.         
  164.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  165.             IDXSurfaceInit * This);
  166.         
  167.         ULONG ( STDMETHODCALLTYPE *Release )( 
  168.             IDXSurfaceInit * This);
  169.         
  170.         HRESULT ( STDMETHODCALLTYPE *InitSurface )( 
  171.             IDXSurfaceInit * This,
  172.             /* [in] */ IUnknown *pDirectDraw,
  173.             /* [in] */ const DDSURFACEDESC *pDDSurfaceDesc,
  174.             /* [in] */ const GUID *pFormatID,
  175.             /* [in] */ const DXBNDS *pBounds,
  176.             /* [in] */ DWORD dwFlags);
  177.         
  178.         END_INTERFACE
  179.     } IDXSurfaceInitVtbl;
  180.     interface IDXSurfaceInit
  181.     {
  182.         CONST_VTBL struct IDXSurfaceInitVtbl *lpVtbl;
  183.     };
  184.     
  185. #ifdef COBJMACROS
  186. #define IDXSurfaceInit_QueryInterface(This,riid,ppvObject)
  187.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  188. #define IDXSurfaceInit_AddRef(This)
  189.     (This)->lpVtbl -> AddRef(This)
  190. #define IDXSurfaceInit_Release(This)
  191.     (This)->lpVtbl -> Release(This)
  192. #define IDXSurfaceInit_InitSurface(This,pDirectDraw,pDDSurfaceDesc,pFormatID,pBounds,dwFlags)
  193.     (This)->lpVtbl -> InitSurface(This,pDirectDraw,pDDSurfaceDesc,pFormatID,pBounds,dwFlags)
  194. #endif /* COBJMACROS */
  195. #endif  /* C style interface */
  196. HRESULT STDMETHODCALLTYPE IDXSurfaceInit_InitSurface_Proxy( 
  197.     IDXSurfaceInit * This,
  198.     /* [in] */ IUnknown *pDirectDraw,
  199.     /* [in] */ const DDSURFACEDESC *pDDSurfaceDesc,
  200.     /* [in] */ const GUID *pFormatID,
  201.     /* [in] */ const DXBNDS *pBounds,
  202.     /* [in] */ DWORD dwFlags);
  203. void __RPC_STUB IDXSurfaceInit_InitSurface_Stub(
  204.     IRpcStubBuffer *This,
  205.     IRpcChannelBuffer *_pRpcChannelBuffer,
  206.     PRPC_MESSAGE _pRpcMessage,
  207.     DWORD *_pdwStubPhase);
  208. #endif  /* __IDXSurfaceInit_INTERFACE_DEFINED__ */
  209. #ifndef __IDXARGBSurfaceInit_INTERFACE_DEFINED__
  210. #define __IDXARGBSurfaceInit_INTERFACE_DEFINED__
  211. /* interface IDXARGBSurfaceInit */
  212. /* [local][unique][helpstring][uuid][object] */ 
  213. EXTERN_C const IID IID_IDXARGBSurfaceInit;
  214. #if defined(__cplusplus) && !defined(CINTERFACE)
  215.     
  216.     MIDL_INTERFACE("9EA3B63A-C37D-11d1-905E-00C04FD9189D")
  217.     IDXARGBSurfaceInit : public IDXSurfaceInit
  218.     {
  219.     public:
  220.         virtual HRESULT STDMETHODCALLTYPE InitFromDDSurface( 
  221.             /* [in] */ IUnknown *pDDrawSurface,
  222.             /* [in] */ const GUID *pFormatID,
  223.             /* [in] */ DWORD dwFlags) = 0;
  224.         
  225.         virtual HRESULT STDMETHODCALLTYPE InitFromRawSurface( 
  226.             /* [in] */ IDXRawSurface *pRawSurface) = 0;
  227.         
  228.     };
  229.     
  230. #else  /* C style interface */
  231.     typedef struct IDXARGBSurfaceInitVtbl
  232.     {
  233.         BEGIN_INTERFACE
  234.         
  235.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  236.             IDXARGBSurfaceInit * This,
  237.             /* [in] */ REFIID riid,
  238.             /* [iid_is][out] */ void **ppvObject);
  239.         
  240.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  241.             IDXARGBSurfaceInit * This);
  242.         
  243.         ULONG ( STDMETHODCALLTYPE *Release )( 
  244.             IDXARGBSurfaceInit * This);
  245.         
  246.         HRESULT ( STDMETHODCALLTYPE *InitSurface )( 
  247.             IDXARGBSurfaceInit * This,
  248.             /* [in] */ IUnknown *pDirectDraw,
  249.             /* [in] */ const DDSURFACEDESC *pDDSurfaceDesc,
  250.             /* [in] */ const GUID *pFormatID,
  251.             /* [in] */ const DXBNDS *pBounds,
  252.             /* [in] */ DWORD dwFlags);
  253.         
  254.         HRESULT ( STDMETHODCALLTYPE *InitFromDDSurface )( 
  255.             IDXARGBSurfaceInit * This,
  256.             /* [in] */ IUnknown *pDDrawSurface,
  257.             /* [in] */ const GUID *pFormatID,
  258.             /* [in] */ DWORD dwFlags);
  259.         
  260.         HRESULT ( STDMETHODCALLTYPE *InitFromRawSurface )( 
  261.             IDXARGBSurfaceInit * This,
  262.             /* [in] */ IDXRawSurface *pRawSurface);
  263.         
  264.         END_INTERFACE
  265.     } IDXARGBSurfaceInitVtbl;
  266.     interface IDXARGBSurfaceInit
  267.     {
  268.         CONST_VTBL struct IDXARGBSurfaceInitVtbl *lpVtbl;
  269.     };
  270.     
  271. #ifdef COBJMACROS
  272. #define IDXARGBSurfaceInit_QueryInterface(This,riid,ppvObject)
  273.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  274. #define IDXARGBSurfaceInit_AddRef(This)
  275.     (This)->lpVtbl -> AddRef(This)
  276. #define IDXARGBSurfaceInit_Release(This)
  277.     (This)->lpVtbl -> Release(This)
  278. #define IDXARGBSurfaceInit_InitSurface(This,pDirectDraw,pDDSurfaceDesc,pFormatID,pBounds,dwFlags)
  279.     (This)->lpVtbl -> InitSurface(This,pDirectDraw,pDDSurfaceDesc,pFormatID,pBounds,dwFlags)
  280. #define IDXARGBSurfaceInit_InitFromDDSurface(This,pDDrawSurface,pFormatID,dwFlags)
  281.     (This)->lpVtbl -> InitFromDDSurface(This,pDDrawSurface,pFormatID,dwFlags)
  282. #define IDXARGBSurfaceInit_InitFromRawSurface(This,pRawSurface)
  283.     (This)->lpVtbl -> InitFromRawSurface(This,pRawSurface)
  284. #endif /* COBJMACROS */
  285. #endif  /* C style interface */
  286. HRESULT STDMETHODCALLTYPE IDXARGBSurfaceInit_InitFromDDSurface_Proxy( 
  287.     IDXARGBSurfaceInit * This,
  288.     /* [in] */ IUnknown *pDDrawSurface,
  289.     /* [in] */ const GUID *pFormatID,
  290.     /* [in] */ DWORD dwFlags);
  291. void __RPC_STUB IDXARGBSurfaceInit_InitFromDDSurface_Stub(
  292.     IRpcStubBuffer *This,
  293.     IRpcChannelBuffer *_pRpcChannelBuffer,
  294.     PRPC_MESSAGE _pRpcMessage,
  295.     DWORD *_pdwStubPhase);
  296. HRESULT STDMETHODCALLTYPE IDXARGBSurfaceInit_InitFromRawSurface_Proxy( 
  297.     IDXARGBSurfaceInit * This,
  298.     /* [in] */ IDXRawSurface *pRawSurface);
  299. void __RPC_STUB IDXARGBSurfaceInit_InitFromRawSurface_Stub(
  300.     IRpcStubBuffer *This,
  301.     IRpcChannelBuffer *_pRpcChannelBuffer,
  302.     PRPC_MESSAGE _pRpcMessage,
  303.     DWORD *_pdwStubPhase);
  304. #endif  /* __IDXARGBSurfaceInit_INTERFACE_DEFINED__ */
  305. /* interface __MIDL_itf_dxtrans_0268 */
  306. /* [local] */ 
  307. typedef struct tagDXNATIVETYPEINFO
  308.     {
  309.     BYTE *pCurrentData;
  310.     BYTE *pFirstByte;
  311.     long lPitch;
  312.     DWORD dwColorKey;
  313.     }  DXNATIVETYPEINFO;
  314. typedef struct tagDXPACKEDRECTDESC
  315.     {
  316.     DXBASESAMPLE *pSamples;
  317.     BOOL bPremult;
  318.     RECT rect;
  319.     long lRowPadding;
  320.     }  DXPACKEDRECTDESC;
  321. typedef struct tagDXOVERSAMPLEDESC
  322.     {
  323.     POINT p;
  324.     DXPMSAMPLE Color;
  325.     }  DXOVERSAMPLEDESC;
  326. extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0268_v0_0_c_ifspec;
  327. extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0268_v0_0_s_ifspec;
  328. #ifndef __IDXARGBReadPtr_INTERFACE_DEFINED__
  329. #define __IDXARGBReadPtr_INTERFACE_DEFINED__
  330. /* interface IDXARGBReadPtr */
  331. /* [local][unique][helpstring][uuid][object] */ 
  332. EXTERN_C const IID IID_IDXARGBReadPtr;
  333. #if defined(__cplusplus) && !defined(CINTERFACE)
  334.     
  335.     MIDL_INTERFACE("EAAAC2D6-C290-11d1-905D-00C04FD9189D")
  336.     IDXARGBReadPtr : public IUnknown
  337.     {
  338.     public:
  339.         virtual HRESULT STDMETHODCALLTYPE GetSurface( 
  340.             /* [in] */ REFIID riid,
  341.             /* [iid_is][out] */ void **ppSurface) = 0;
  342.         
  343.         virtual DXSAMPLEFORMATENUM STDMETHODCALLTYPE GetNativeType( 
  344.             /* [out] */ DXNATIVETYPEINFO *pInfo) = 0;
  345.         
  346.         virtual void STDMETHODCALLTYPE Move( 
  347.             /* [in] */ long cSamples) = 0;
  348.         
  349.         virtual void STDMETHODCALLTYPE MoveToRow( 
  350.             /* [in] */ ULONG y) = 0;
  351.         
  352.         virtual void STDMETHODCALLTYPE MoveToXY( 
  353.             /* [in] */ ULONG x,
  354.             /* [in] */ ULONG y) = 0;
  355.         
  356.         virtual ULONG STDMETHODCALLTYPE MoveAndGetRunInfo( 
  357.             /* [in] */ ULONG Row,
  358.             /* [out] */ const DXRUNINFO **ppInfo) = 0;
  359.         
  360.         virtual DXSAMPLE *STDMETHODCALLTYPE Unpack( 
  361.             /* [in] */ DXSAMPLE *pSamples,
  362.             /* [in] */ ULONG cSamples,
  363.             /* [in] */ BOOL bMove) = 0;
  364.         
  365.         virtual DXPMSAMPLE *STDMETHODCALLTYPE UnpackPremult( 
  366.             /* [in] */ DXPMSAMPLE *pSamples,
  367.             /* [in] */ ULONG cSamples,
  368.             /* [in] */ BOOL bMove) = 0;
  369.         
  370.         virtual void STDMETHODCALLTYPE UnpackRect( 
  371.             /* [in] */ const DXPACKEDRECTDESC *pRectDesc) = 0;
  372.         
  373.     };
  374.     
  375. #else  /* C style interface */
  376.     typedef struct IDXARGBReadPtrVtbl
  377.     {
  378.         BEGIN_INTERFACE
  379.         
  380.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  381.             IDXARGBReadPtr * This,
  382.             /* [in] */ REFIID riid,
  383.             /* [iid_is][out] */ void **ppvObject);
  384.         
  385.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  386.             IDXARGBReadPtr * This);
  387.         
  388.         ULONG ( STDMETHODCALLTYPE *Release )( 
  389.             IDXARGBReadPtr * This);
  390.         
  391.         HRESULT ( STDMETHODCALLTYPE *GetSurface )( 
  392.             IDXARGBReadPtr * This,
  393.             /* [in] */ REFIID riid,
  394.             /* [iid_is][out] */ void **ppSurface);
  395.         
  396.         DXSAMPLEFORMATENUM ( STDMETHODCALLTYPE *GetNativeType )( 
  397.             IDXARGBReadPtr * This,
  398.             /* [out] */ DXNATIVETYPEINFO *pInfo);
  399.         
  400.         void ( STDMETHODCALLTYPE *Move )( 
  401.             IDXARGBReadPtr * This,
  402.             /* [in] */ long cSamples);
  403.         
  404.         void ( STDMETHODCALLTYPE *MoveToRow )( 
  405.             IDXARGBReadPtr * This,
  406.             /* [in] */ ULONG y);
  407.         
  408.         void ( STDMETHODCALLTYPE *MoveToXY )( 
  409.             IDXARGBReadPtr * This,
  410.             /* [in] */ ULONG x,
  411.             /* [in] */ ULONG y);
  412.         
  413.         ULONG ( STDMETHODCALLTYPE *MoveAndGetRunInfo )( 
  414.             IDXARGBReadPtr * This,
  415.             /* [in] */ ULONG Row,
  416.             /* [out] */ const DXRUNINFO **ppInfo);
  417.         
  418.         DXSAMPLE *( STDMETHODCALLTYPE *Unpack )( 
  419.             IDXARGBReadPtr * This,
  420.             /* [in] */ DXSAMPLE *pSamples,
  421.             /* [in] */ ULONG cSamples,
  422.             /* [in] */ BOOL bMove);
  423.         
  424.         DXPMSAMPLE *( STDMETHODCALLTYPE *UnpackPremult )( 
  425.             IDXARGBReadPtr * This,
  426.             /* [in] */ DXPMSAMPLE *pSamples,
  427.             /* [in] */ ULONG cSamples,
  428.             /* [in] */ BOOL bMove);
  429.         
  430.         void ( STDMETHODCALLTYPE *UnpackRect )( 
  431.             IDXARGBReadPtr * This,
  432.             /* [in] */ const DXPACKEDRECTDESC *pRectDesc);
  433.         
  434.         END_INTERFACE
  435.     } IDXARGBReadPtrVtbl;
  436.     interface IDXARGBReadPtr
  437.     {
  438.         CONST_VTBL struct IDXARGBReadPtrVtbl *lpVtbl;
  439.     };
  440.     
  441. #ifdef COBJMACROS
  442. #define IDXARGBReadPtr_QueryInterface(This,riid,ppvObject)
  443.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  444. #define IDXARGBReadPtr_AddRef(This)
  445.     (This)->lpVtbl -> AddRef(This)
  446. #define IDXARGBReadPtr_Release(This)
  447.     (This)->lpVtbl -> Release(This)
  448. #define IDXARGBReadPtr_GetSurface(This,riid,ppSurface)
  449.     (This)->lpVtbl -> GetSurface(This,riid,ppSurface)
  450. #define IDXARGBReadPtr_GetNativeType(This,pInfo)
  451.     (This)->lpVtbl -> GetNativeType(This,pInfo)
  452. #define IDXARGBReadPtr_Move(This,cSamples)
  453.     (This)->lpVtbl -> Move(This,cSamples)
  454. #define IDXARGBReadPtr_MoveToRow(This,y)
  455.     (This)->lpVtbl -> MoveToRow(This,y)
  456. #define IDXARGBReadPtr_MoveToXY(This,x,y)
  457.     (This)->lpVtbl -> MoveToXY(This,x,y)
  458. #define IDXARGBReadPtr_MoveAndGetRunInfo(This,Row,ppInfo)
  459.     (This)->lpVtbl -> MoveAndGetRunInfo(This,Row,ppInfo)
  460. #define IDXARGBReadPtr_Unpack(This,pSamples,cSamples,bMove)
  461.     (This)->lpVtbl -> Unpack(This,pSamples,cSamples,bMove)
  462. #define IDXARGBReadPtr_UnpackPremult(This,pSamples,cSamples,bMove)
  463.     (This)->lpVtbl -> UnpackPremult(This,pSamples,cSamples,bMove)
  464. #define IDXARGBReadPtr_UnpackRect(This,pRectDesc)
  465.     (This)->lpVtbl -> UnpackRect(This,pRectDesc)
  466. #endif /* COBJMACROS */
  467. #endif  /* C style interface */
  468. HRESULT STDMETHODCALLTYPE IDXARGBReadPtr_GetSurface_Proxy( 
  469.     IDXARGBReadPtr * This,
  470.     /* [in] */ REFIID riid,
  471.     /* [iid_is][out] */ void **ppSurface);
  472. void __RPC_STUB IDXARGBReadPtr_GetSurface_Stub(
  473.     IRpcStubBuffer *This,
  474.     IRpcChannelBuffer *_pRpcChannelBuffer,
  475.     PRPC_MESSAGE _pRpcMessage,
  476.     DWORD *_pdwStubPhase);
  477. DXSAMPLEFORMATENUM STDMETHODCALLTYPE IDXARGBReadPtr_GetNativeType_Proxy( 
  478.     IDXARGBReadPtr * This,
  479.     /* [out] */ DXNATIVETYPEINFO *pInfo);
  480. void __RPC_STUB IDXARGBReadPtr_GetNativeType_Stub(
  481.     IRpcStubBuffer *This,
  482.     IRpcChannelBuffer *_pRpcChannelBuffer,
  483.     PRPC_MESSAGE _pRpcMessage,
  484.     DWORD *_pdwStubPhase);
  485. void STDMETHODCALLTYPE IDXARGBReadPtr_Move_Proxy( 
  486.     IDXARGBReadPtr * This,
  487.     /* [in] */ long cSamples);
  488. void __RPC_STUB IDXARGBReadPtr_Move_Stub(
  489.     IRpcStubBuffer *This,
  490.     IRpcChannelBuffer *_pRpcChannelBuffer,
  491.     PRPC_MESSAGE _pRpcMessage,
  492.     DWORD *_pdwStubPhase);
  493. void STDMETHODCALLTYPE IDXARGBReadPtr_MoveToRow_Proxy( 
  494.     IDXARGBReadPtr * This,
  495.     /* [in] */ ULONG y);
  496. void __RPC_STUB IDXARGBReadPtr_MoveToRow_Stub(
  497.     IRpcStubBuffer *This,
  498.     IRpcChannelBuffer *_pRpcChannelBuffer,
  499.     PRPC_MESSAGE _pRpcMessage,
  500.     DWORD *_pdwStubPhase);
  501. void STDMETHODCALLTYPE IDXARGBReadPtr_MoveToXY_Proxy( 
  502.     IDXARGBReadPtr * This,
  503.     /* [in] */ ULONG x,
  504.     /* [in] */ ULONG y);
  505. void __RPC_STUB IDXARGBReadPtr_MoveToXY_Stub(
  506.     IRpcStubBuffer *This,
  507.     IRpcChannelBuffer *_pRpcChannelBuffer,
  508.     PRPC_MESSAGE _pRpcMessage,
  509.     DWORD *_pdwStubPhase);
  510. ULONG STDMETHODCALLTYPE IDXARGBReadPtr_MoveAndGetRunInfo_Proxy( 
  511.     IDXARGBReadPtr * This,
  512.     /* [in] */ ULONG Row,
  513.     /* [out] */ const DXRUNINFO **ppInfo);
  514. void __RPC_STUB IDXARGBReadPtr_MoveAndGetRunInfo_Stub(
  515.     IRpcStubBuffer *This,
  516.     IRpcChannelBuffer *_pRpcChannelBuffer,
  517.     PRPC_MESSAGE _pRpcMessage,
  518.     DWORD *_pdwStubPhase);
  519. DXSAMPLE *STDMETHODCALLTYPE IDXARGBReadPtr_Unpack_Proxy( 
  520.     IDXARGBReadPtr * This,
  521.     /* [in] */ DXSAMPLE *pSamples,
  522.     /* [in] */ ULONG cSamples,
  523.     /* [in] */ BOOL bMove);
  524. void __RPC_STUB IDXARGBReadPtr_Unpack_Stub(
  525.     IRpcStubBuffer *This,
  526.     IRpcChannelBuffer *_pRpcChannelBuffer,
  527.     PRPC_MESSAGE _pRpcMessage,
  528.     DWORD *_pdwStubPhase);
  529. DXPMSAMPLE *STDMETHODCALLTYPE IDXARGBReadPtr_UnpackPremult_Proxy( 
  530.     IDXARGBReadPtr * This,
  531.     /* [in] */ DXPMSAMPLE *pSamples,
  532.     /* [in] */ ULONG cSamples,
  533.     /* [in] */ BOOL bMove);
  534. void __RPC_STUB IDXARGBReadPtr_UnpackPremult_Stub(
  535.     IRpcStubBuffer *This,
  536.     IRpcChannelBuffer *_pRpcChannelBuffer,
  537.     PRPC_MESSAGE _pRpcMessage,
  538.     DWORD *_pdwStubPhase);
  539. void STDMETHODCALLTYPE IDXARGBReadPtr_UnpackRect_Proxy( 
  540.     IDXARGBReadPtr * This,
  541.     /* [in] */ const DXPACKEDRECTDESC *pRectDesc);
  542. void __RPC_STUB IDXARGBReadPtr_UnpackRect_Stub(
  543.     IRpcStubBuffer *This,
  544.     IRpcChannelBuffer *_pRpcChannelBuffer,
  545.     PRPC_MESSAGE _pRpcMessage,
  546.     DWORD *_pdwStubPhase);
  547. #endif  /* __IDXARGBReadPtr_INTERFACE_DEFINED__ */
  548. #ifndef __IDXARGBReadWritePtr_INTERFACE_DEFINED__
  549. #define __IDXARGBReadWritePtr_INTERFACE_DEFINED__
  550. /* interface IDXARGBReadWritePtr */
  551. /* [local][unique][helpstring][uuid][object] */ 
  552. EXTERN_C const IID IID_IDXARGBReadWritePtr;
  553. #if defined(__cplusplus) && !defined(CINTERFACE)
  554.     
  555.     MIDL_INTERFACE("EAAAC2D7-C290-11d1-905D-00C04FD9189D")
  556.     IDXARGBReadWritePtr : public IDXARGBReadPtr
  557.     {
  558.     public:
  559.         virtual void STDMETHODCALLTYPE PackAndMove( 
  560.             /* [in] */ const DXSAMPLE *pSamples,
  561.             /* [in] */ ULONG cSamples) = 0;
  562.         
  563.         virtual void STDMETHODCALLTYPE PackPremultAndMove( 
  564.             /* [in] */ const DXPMSAMPLE *pSamples,
  565.             /* [in] */ ULONG cSamples) = 0;
  566.         
  567.         virtual void STDMETHODCALLTYPE PackRect( 
  568.             /* [in] */ const DXPACKEDRECTDESC *pRectDesc) = 0;
  569.         
  570.         virtual void STDMETHODCALLTYPE CopyAndMoveBoth( 
  571.             /* [in] */ DXBASESAMPLE *pScratchBuffer,
  572.             /* [in] */ IDXARGBReadPtr *pSrc,
  573.             /* [in] */ ULONG cSamples,
  574.             /* [in] */ BOOL bIsOpaque) = 0;
  575.         
  576.         virtual void STDMETHODCALLTYPE CopyRect( 
  577.             /* [in] */ DXBASESAMPLE *pScratchBuffer,
  578.             /* [in] */ const RECT *pDestRect,
  579.             /* [in] */ IDXARGBReadPtr *pSrc,
  580.             /* [in] */ const POINT *pSrcOrigin,
  581.             /* [in] */ BOOL bIsOpaque) = 0;
  582.         
  583.         virtual void STDMETHODCALLTYPE FillAndMove( 
  584.             /* [in] */ DXBASESAMPLE *pScratchBuffer,
  585.             /* [in] */ DXPMSAMPLE SampVal,
  586.             /* [in] */ ULONG cSamples,
  587.             /* [in] */ BOOL bDoOver) = 0;
  588.         
  589.         virtual void STDMETHODCALLTYPE FillRect( 
  590.             /* [in] */ const RECT *pRect,
  591.             /* [in] */ DXPMSAMPLE SampVal,
  592.             /* [in] */ BOOL bDoOver) = 0;
  593.         
  594.         virtual void STDMETHODCALLTYPE OverSample( 
  595.             /* [in] */ const DXOVERSAMPLEDESC *pOverDesc) = 0;
  596.         
  597.         virtual void STDMETHODCALLTYPE OverArrayAndMove( 
  598.             /* [in] */ DXBASESAMPLE *pScratchBuffer,
  599.             /* [in] */ const DXPMSAMPLE *pSrc,
  600.             /* [in] */ ULONG cSamples) = 0;
  601.         
  602.     };
  603.     
  604. #else  /* C style interface */
  605.     typedef struct IDXARGBReadWritePtrVtbl
  606.     {
  607.         BEGIN_INTERFACE
  608.         
  609.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  610.             IDXARGBReadWritePtr * This,
  611.             /* [in] */ REFIID riid,
  612.             /* [iid_is][out] */ void **ppvObject);
  613.         
  614.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  615.             IDXARGBReadWritePtr * This);
  616.         
  617.         ULONG ( STDMETHODCALLTYPE *Release )( 
  618.             IDXARGBReadWritePtr * This);
  619.         
  620.         HRESULT ( STDMETHODCALLTYPE *GetSurface )( 
  621.             IDXARGBReadWritePtr * This,
  622.             /* [in] */ REFIID riid,
  623.             /* [iid_is][out] */ void **ppSurface);
  624.         
  625.         DXSAMPLEFORMATENUM ( STDMETHODCALLTYPE *GetNativeType )( 
  626.             IDXARGBReadWritePtr * This,
  627.             /* [out] */ DXNATIVETYPEINFO *pInfo);
  628.         
  629.         void ( STDMETHODCALLTYPE *Move )( 
  630.             IDXARGBReadWritePtr * This,
  631.             /* [in] */ long cSamples);
  632.         
  633.         void ( STDMETHODCALLTYPE *MoveToRow )( 
  634.             IDXARGBReadWritePtr * This,
  635.             /* [in] */ ULONG y);
  636.         
  637.         void ( STDMETHODCALLTYPE *MoveToXY )( 
  638.             IDXARGBReadWritePtr * This,
  639.             /* [in] */ ULONG x,
  640.             /* [in] */ ULONG y);
  641.         
  642.         ULONG ( STDMETHODCALLTYPE *MoveAndGetRunInfo )( 
  643.             IDXARGBReadWritePtr * This,
  644.             /* [in] */ ULONG Row,
  645.             /* [out] */ const DXRUNINFO **ppInfo);
  646.         
  647.         DXSAMPLE *( STDMETHODCALLTYPE *Unpack )( 
  648.             IDXARGBReadWritePtr * This,
  649.             /* [in] */ DXSAMPLE *pSamples,
  650.             /* [in] */ ULONG cSamples,
  651.             /* [in] */ BOOL bMove);
  652.         
  653.         DXPMSAMPLE *( STDMETHODCALLTYPE *UnpackPremult )( 
  654.             IDXARGBReadWritePtr * This,
  655.             /* [in] */ DXPMSAMPLE *pSamples,
  656.             /* [in] */ ULONG cSamples,
  657.             /* [in] */ BOOL bMove);
  658.         
  659.         void ( STDMETHODCALLTYPE *UnpackRect )( 
  660.             IDXARGBReadWritePtr * This,
  661.             /* [in] */ const DXPACKEDRECTDESC *pRectDesc);
  662.         
  663.         void ( STDMETHODCALLTYPE *PackAndMove )( 
  664.             IDXARGBReadWritePtr * This,
  665.             /* [in] */ const DXSAMPLE *pSamples,
  666.             /* [in] */ ULONG cSamples);
  667.         
  668.         void ( STDMETHODCALLTYPE *PackPremultAndMove )( 
  669.             IDXARGBReadWritePtr * This,
  670.             /* [in] */ const DXPMSAMPLE *pSamples,
  671.             /* [in] */ ULONG cSamples);
  672.         
  673.         void ( STDMETHODCALLTYPE *PackRect )( 
  674.             IDXARGBReadWritePtr * This,
  675.             /* [in] */ const DXPACKEDRECTDESC *pRectDesc);
  676.         
  677.         void ( STDMETHODCALLTYPE *CopyAndMoveBoth )( 
  678.             IDXARGBReadWritePtr * This,
  679.             /* [in] */ DXBASESAMPLE *pScratchBuffer,
  680.             /* [in] */ IDXARGBReadPtr *pSrc,
  681.             /* [in] */ ULONG cSamples,
  682.             /* [in] */ BOOL bIsOpaque);
  683.         
  684.         void ( STDMETHODCALLTYPE *CopyRect )( 
  685.             IDXARGBReadWritePtr * This,
  686.             /* [in] */ DXBASESAMPLE *pScratchBuffer,
  687.             /* [in] */ const RECT *pDestRect,
  688.             /* [in] */ IDXARGBReadPtr *pSrc,
  689.             /* [in] */ const POINT *pSrcOrigin,
  690.             /* [in] */ BOOL bIsOpaque);
  691.         
  692.         void ( STDMETHODCALLTYPE *FillAndMove )( 
  693.             IDXARGBReadWritePtr * This,
  694.             /* [in] */ DXBASESAMPLE *pScratchBuffer,
  695.             /* [in] */ DXPMSAMPLE SampVal,
  696.             /* [in] */ ULONG cSamples,
  697.             /* [in] */ BOOL bDoOver);
  698.         
  699.         void ( STDMETHODCALLTYPE *FillRect )( 
  700.             IDXARGBReadWritePtr * This,
  701.             /* [in] */ const RECT *pRect,
  702.             /* [in] */ DXPMSAMPLE SampVal,
  703.             /* [in] */ BOOL bDoOver);
  704.         
  705.         void ( STDMETHODCALLTYPE *OverSample )( 
  706.             IDXARGBReadWritePtr * This,
  707.             /* [in] */ const DXOVERSAMPLEDESC *pOverDesc);
  708.         
  709.         void ( STDMETHODCALLTYPE *OverArrayAndMove )( 
  710.             IDXARGBReadWritePtr * This,
  711.             /* [in] */ DXBASESAMPLE *pScratchBuffer,
  712.             /* [in] */ const DXPMSAMPLE *pSrc,
  713.             /* [in] */ ULONG cSamples);
  714.         
  715.         END_INTERFACE
  716.     } IDXARGBReadWritePtrVtbl;
  717.     interface IDXARGBReadWritePtr
  718.     {
  719.         CONST_VTBL struct IDXARGBReadWritePtrVtbl *lpVtbl;
  720.     };
  721.     
  722. #ifdef COBJMACROS
  723. #define IDXARGBReadWritePtr_QueryInterface(This,riid,ppvObject)
  724.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  725. #define IDXARGBReadWritePtr_AddRef(This)
  726.     (This)->lpVtbl -> AddRef(This)
  727. #define IDXARGBReadWritePtr_Release(This)
  728.     (This)->lpVtbl -> Release(This)
  729. #define IDXARGBReadWritePtr_GetSurface(This,riid,ppSurface)
  730.     (This)->lpVtbl -> GetSurface(This,riid,ppSurface)
  731. #define IDXARGBReadWritePtr_GetNativeType(This,pInfo)
  732.     (This)->lpVtbl -> GetNativeType(This,pInfo)
  733. #define IDXARGBReadWritePtr_Move(This,cSamples)
  734.     (This)->lpVtbl -> Move(This,cSamples)
  735. #define IDXARGBReadWritePtr_MoveToRow(This,y)
  736.     (This)->lpVtbl -> MoveToRow(This,y)
  737. #define IDXARGBReadWritePtr_MoveToXY(This,x,y)
  738.     (This)->lpVtbl -> MoveToXY(This,x,y)
  739. #define IDXARGBReadWritePtr_MoveAndGetRunInfo(This,Row,ppInfo)
  740.     (This)->lpVtbl -> MoveAndGetRunInfo(This,Row,ppInfo)
  741. #define IDXARGBReadWritePtr_Unpack(This,pSamples,cSamples,bMove)
  742.     (This)->lpVtbl -> Unpack(This,pSamples,cSamples,bMove)
  743. #define IDXARGBReadWritePtr_UnpackPremult(This,pSamples,cSamples,bMove)
  744.     (This)->lpVtbl -> UnpackPremult(This,pSamples,cSamples,bMove)
  745. #define IDXARGBReadWritePtr_UnpackRect(This,pRectDesc)
  746.     (This)->lpVtbl -> UnpackRect(This,pRectDesc)
  747. #define IDXARGBReadWritePtr_PackAndMove(This,pSamples,cSamples)
  748.     (This)->lpVtbl -> PackAndMove(This,pSamples,cSamples)
  749. #define IDXARGBReadWritePtr_PackPremultAndMove(This,pSamples,cSamples)
  750.     (This)->lpVtbl -> PackPremultAndMove(This,pSamples,cSamples)
  751. #define IDXARGBReadWritePtr_PackRect(This,pRectDesc)
  752.     (This)->lpVtbl -> PackRect(This,pRectDesc)
  753. #define IDXARGBReadWritePtr_CopyAndMoveBoth(This,pScratchBuffer,pSrc,cSamples,bIsOpaque)
  754.     (This)->lpVtbl -> CopyAndMoveBoth(This,pScratchBuffer,pSrc,cSamples,bIsOpaque)
  755. #define IDXARGBReadWritePtr_CopyRect(This,pScratchBuffer,pDestRect,pSrc,pSrcOrigin,bIsOpaque)
  756.     (This)->lpVtbl -> CopyRect(This,pScratchBuffer,pDestRect,pSrc,pSrcOrigin,bIsOpaque)
  757. #define IDXARGBReadWritePtr_FillAndMove(This,pScratchBuffer,SampVal,cSamples,bDoOver)
  758.     (This)->lpVtbl -> FillAndMove(This,pScratchBuffer,SampVal,cSamples,bDoOver)
  759. #define IDXARGBReadWritePtr_FillRect(This,pRect,SampVal,bDoOver)
  760.     (This)->lpVtbl -> FillRect(This,pRect,SampVal,bDoOver)
  761. #define IDXARGBReadWritePtr_OverSample(This,pOverDesc)
  762.     (This)->lpVtbl -> OverSample(This,pOverDesc)
  763. #define IDXARGBReadWritePtr_OverArrayAndMove(This,pScratchBuffer,pSrc,cSamples)
  764.     (This)->lpVtbl -> OverArrayAndMove(This,pScratchBuffer,pSrc,cSamples)
  765. #endif /* COBJMACROS */
  766. #endif  /* C style interface */
  767. void STDMETHODCALLTYPE IDXARGBReadWritePtr_PackAndMove_Proxy( 
  768.     IDXARGBReadWritePtr * This,
  769.     /* [in] */ const DXSAMPLE *pSamples,
  770.     /* [in] */ ULONG cSamples);
  771. void __RPC_STUB IDXARGBReadWritePtr_PackAndMove_Stub(
  772.     IRpcStubBuffer *This,
  773.     IRpcChannelBuffer *_pRpcChannelBuffer,
  774.     PRPC_MESSAGE _pRpcMessage,
  775.     DWORD *_pdwStubPhase);
  776. void STDMETHODCALLTYPE IDXARGBReadWritePtr_PackPremultAndMove_Proxy( 
  777.     IDXARGBReadWritePtr * This,
  778.     /* [in] */ const DXPMSAMPLE *pSamples,
  779.     /* [in] */ ULONG cSamples);
  780. void __RPC_STUB IDXARGBReadWritePtr_PackPremultAndMove_Stub(
  781.     IRpcStubBuffer *This,
  782.     IRpcChannelBuffer *_pRpcChannelBuffer,
  783.     PRPC_MESSAGE _pRpcMessage,
  784.     DWORD *_pdwStubPhase);
  785. void STDMETHODCALLTYPE IDXARGBReadWritePtr_PackRect_Proxy( 
  786.     IDXARGBReadWritePtr * This,
  787.     /* [in] */ const DXPACKEDRECTDESC *pRectDesc);
  788. void __RPC_STUB IDXARGBReadWritePtr_PackRect_Stub(
  789.     IRpcStubBuffer *This,
  790.     IRpcChannelBuffer *_pRpcChannelBuffer,
  791.     PRPC_MESSAGE _pRpcMessage,
  792.     DWORD *_pdwStubPhase);
  793. void STDMETHODCALLTYPE IDXARGBReadWritePtr_CopyAndMoveBoth_Proxy( 
  794.     IDXARGBReadWritePtr * This,
  795.     /* [in] */ DXBASESAMPLE *pScratchBuffer,
  796.     /* [in] */ IDXARGBReadPtr *pSrc,
  797.     /* [in] */ ULONG cSamples,
  798.     /* [in] */ BOOL bIsOpaque);
  799. void __RPC_STUB IDXARGBReadWritePtr_CopyAndMoveBoth_Stub(
  800.     IRpcStubBuffer *This,
  801.     IRpcChannelBuffer *_pRpcChannelBuffer,
  802.     PRPC_MESSAGE _pRpcMessage,
  803.     DWORD *_pdwStubPhase);
  804. void STDMETHODCALLTYPE IDXARGBReadWritePtr_CopyRect_Proxy( 
  805.     IDXARGBReadWritePtr * This,
  806.     /* [in] */ DXBASESAMPLE *pScratchBuffer,
  807.     /* [in] */ const RECT *pDestRect,
  808.     /* [in] */ IDXARGBReadPtr *pSrc,
  809.     /* [in] */ const POINT *pSrcOrigin,
  810.     /* [in] */ BOOL bIsOpaque);
  811. void __RPC_STUB IDXARGBReadWritePtr_CopyRect_Stub(
  812.     IRpcStubBuffer *This,
  813.     IRpcChannelBuffer *_pRpcChannelBuffer,
  814.     PRPC_MESSAGE _pRpcMessage,
  815.     DWORD *_pdwStubPhase);
  816. void STDMETHODCALLTYPE IDXARGBReadWritePtr_FillAndMove_Proxy( 
  817.     IDXARGBReadWritePtr * This,
  818.     /* [in] */ DXBASESAMPLE *pScratchBuffer,
  819.     /* [in] */ DXPMSAMPLE SampVal,
  820.     /* [in] */ ULONG cSamples,
  821.     /* [in] */ BOOL bDoOver);
  822. void __RPC_STUB IDXARGBReadWritePtr_FillAndMove_Stub(
  823.     IRpcStubBuffer *This,
  824.     IRpcChannelBuffer *_pRpcChannelBuffer,
  825.     PRPC_MESSAGE _pRpcMessage,
  826.     DWORD *_pdwStubPhase);
  827. void STDMETHODCALLTYPE IDXARGBReadWritePtr_FillRect_Proxy( 
  828.     IDXARGBReadWritePtr * This,
  829.     /* [in] */ const RECT *pRect,
  830.     /* [in] */ DXPMSAMPLE SampVal,
  831.     /* [in] */ BOOL bDoOver);
  832. void __RPC_STUB IDXARGBReadWritePtr_FillRect_Stub(
  833.     IRpcStubBuffer *This,
  834.     IRpcChannelBuffer *_pRpcChannelBuffer,
  835.     PRPC_MESSAGE _pRpcMessage,
  836.     DWORD *_pdwStubPhase);
  837. void STDMETHODCALLTYPE IDXARGBReadWritePtr_OverSample_Proxy( 
  838.     IDXARGBReadWritePtr * This,
  839.     /* [in] */ const DXOVERSAMPLEDESC *pOverDesc);
  840. void __RPC_STUB IDXARGBReadWritePtr_OverSample_Stub(
  841.     IRpcStubBuffer *This,
  842.     IRpcChannelBuffer *_pRpcChannelBuffer,
  843.     PRPC_MESSAGE _pRpcMessage,
  844.     DWORD *_pdwStubPhase);
  845. void STDMETHODCALLTYPE IDXARGBReadWritePtr_OverArrayAndMove_Proxy( 
  846.     IDXARGBReadWritePtr * This,
  847.     /* [in] */ DXBASESAMPLE *pScratchBuffer,
  848.     /* [in] */ const DXPMSAMPLE *pSrc,
  849.     /* [in] */ ULONG cSamples);
  850. void __RPC_STUB IDXARGBReadWritePtr_OverArrayAndMove_Stub(
  851.     IRpcStubBuffer *This,
  852.     IRpcChannelBuffer *_pRpcChannelBuffer,
  853.     PRPC_MESSAGE _pRpcMessage,
  854.     DWORD *_pdwStubPhase);
  855. #endif  /* __IDXARGBReadWritePtr_INTERFACE_DEFINED__ */
  856. #ifndef __IDXDCLock_INTERFACE_DEFINED__
  857. #define __IDXDCLock_INTERFACE_DEFINED__
  858. /* interface IDXDCLock */
  859. /* [local][unique][helpstring][uuid][object] */ 
  860. EXTERN_C const IID IID_IDXDCLock;
  861. #if defined(__cplusplus) && !defined(CINTERFACE)
  862.     
  863.     MIDL_INTERFACE("0F619456-CF39-11d1-905E-00C04FD9189D")
  864.     IDXDCLock : public IUnknown
  865.     {
  866.     public:
  867.         virtual HDC STDMETHODCALLTYPE GetDC( void) = 0;
  868.         
  869.     };
  870.     
  871. #else  /* C style interface */
  872.     typedef struct IDXDCLockVtbl
  873.     {
  874.         BEGIN_INTERFACE
  875.         
  876.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  877.             IDXDCLock * This,
  878.             /* [in] */ REFIID riid,
  879.             /* [iid_is][out] */ void **ppvObject);
  880.         
  881.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  882.             IDXDCLock * This);
  883.         
  884.         ULONG ( STDMETHODCALLTYPE *Release )( 
  885.             IDXDCLock * This);
  886.         
  887.         HDC ( STDMETHODCALLTYPE *GetDC )( 
  888.             IDXDCLock * This);
  889.         
  890.         END_INTERFACE
  891.     } IDXDCLockVtbl;
  892.     interface IDXDCLock
  893.     {
  894.         CONST_VTBL struct IDXDCLockVtbl *lpVtbl;
  895.     };
  896.     
  897. #ifdef COBJMACROS
  898. #define IDXDCLock_QueryInterface(This,riid,ppvObject)
  899.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  900. #define IDXDCLock_AddRef(This)
  901.     (This)->lpVtbl -> AddRef(This)
  902. #define IDXDCLock_Release(This)
  903.     (This)->lpVtbl -> Release(This)
  904. #define IDXDCLock_GetDC(This)
  905.     (This)->lpVtbl -> GetDC(This)
  906. #endif /* COBJMACROS */
  907. #endif  /* C style interface */
  908. HDC STDMETHODCALLTYPE IDXDCLock_GetDC_Proxy( 
  909.     IDXDCLock * This);
  910. void __RPC_STUB IDXDCLock_GetDC_Stub(
  911.     IRpcStubBuffer *This,
  912.     IRpcChannelBuffer *_pRpcChannelBuffer,
  913.     PRPC_MESSAGE _pRpcMessage,
  914.     DWORD *_pdwStubPhase);
  915. #endif  /* __IDXDCLock_INTERFACE_DEFINED__ */
  916. #ifndef __IDXTScaleOutput_INTERFACE_DEFINED__
  917. #define __IDXTScaleOutput_INTERFACE_DEFINED__
  918. /* interface IDXTScaleOutput */
  919. /* [local][unique][helpstring][uuid][object] */ 
  920. EXTERN_C const IID IID_IDXTScaleOutput;
  921. #if defined(__cplusplus) && !defined(CINTERFACE)
  922.     
  923.     MIDL_INTERFACE("B2024B50-EE77-11d1-9066-00C04FD9189D")
  924.     IDXTScaleOutput : public IUnknown
  925.     {
  926.     public:
  927.         virtual HRESULT STDMETHODCALLTYPE SetOutputSize( 
  928.             /* [in] */ const SIZE OutSize,
  929.             /* [in] */ BOOL bMaintainAspect) = 0;
  930.         
  931.     };
  932.     
  933. #else  /* C style interface */
  934.     typedef struct IDXTScaleOutputVtbl
  935.     {
  936.         BEGIN_INTERFACE
  937.         
  938.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  939.             IDXTScaleOutput * This,
  940.             /* [in] */ REFIID riid,
  941.             /* [iid_is][out] */ void **ppvObject);
  942.         
  943.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  944.             IDXTScaleOutput * This);
  945.         
  946.         ULONG ( STDMETHODCALLTYPE *Release )( 
  947.             IDXTScaleOutput * This);
  948.         
  949.         HRESULT ( STDMETHODCALLTYPE *SetOutputSize )( 
  950.             IDXTScaleOutput * This,
  951.             /* [in] */ const SIZE OutSize,
  952.             /* [in] */ BOOL bMaintainAspect);
  953.         
  954.         END_INTERFACE
  955.     } IDXTScaleOutputVtbl;
  956.     interface IDXTScaleOutput
  957.     {
  958.         CONST_VTBL struct IDXTScaleOutputVtbl *lpVtbl;
  959.     };
  960.     
  961. #ifdef COBJMACROS
  962. #define IDXTScaleOutput_QueryInterface(This,riid,ppvObject)
  963.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  964. #define IDXTScaleOutput_AddRef(This)
  965.     (This)->lpVtbl -> AddRef(This)
  966. #define IDXTScaleOutput_Release(This)
  967.     (This)->lpVtbl -> Release(This)
  968. #define IDXTScaleOutput_SetOutputSize(This,OutSize,bMaintainAspect)
  969.     (This)->lpVtbl -> SetOutputSize(This,OutSize,bMaintainAspect)
  970. #endif /* COBJMACROS */
  971. #endif  /* C style interface */
  972. HRESULT STDMETHODCALLTYPE IDXTScaleOutput_SetOutputSize_Proxy( 
  973.     IDXTScaleOutput * This,
  974.     /* [in] */ const SIZE OutSize,
  975.     /* [in] */ BOOL bMaintainAspect);
  976. void __RPC_STUB IDXTScaleOutput_SetOutputSize_Stub(
  977.     IRpcStubBuffer *This,
  978.     IRpcChannelBuffer *_pRpcChannelBuffer,
  979.     PRPC_MESSAGE _pRpcMessage,
  980.     DWORD *_pdwStubPhase);
  981. #endif  /* __IDXTScaleOutput_INTERFACE_DEFINED__ */
  982. #ifndef __IDXGradient_INTERFACE_DEFINED__
  983. #define __IDXGradient_INTERFACE_DEFINED__
  984. /* interface IDXGradient */
  985. /* [local][unique][helpstring][uuid][object] */ 
  986. EXTERN_C const IID IID_IDXGradient;
  987. #if defined(__cplusplus) && !defined(CINTERFACE)
  988.     
  989.     MIDL_INTERFACE("B2024B51-EE77-11d1-9066-00C04FD9189D")
  990.     IDXGradient : public IDXTScaleOutput
  991.     {
  992.     public:
  993.         virtual HRESULT STDMETHODCALLTYPE SetGradient( 
  994.             DXSAMPLE StartColor,
  995.             DXSAMPLE EndColor,
  996.             BOOL bHorizontal) = 0;
  997.         
  998.         virtual HRESULT STDMETHODCALLTYPE GetOutputSize( 
  999.             /* [out] */ SIZE *pOutSize) = 0;
  1000.         
  1001.     };
  1002.     
  1003. #else  /* C style interface */
  1004.     typedef struct IDXGradientVtbl
  1005.     {
  1006.         BEGIN_INTERFACE
  1007.         
  1008.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1009.             IDXGradient * This,
  1010.             /* [in] */ REFIID riid,
  1011.             /* [iid_is][out] */ void **ppvObject);
  1012.         
  1013.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1014.             IDXGradient * This);
  1015.         
  1016.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1017.             IDXGradient * This);
  1018.         
  1019.         HRESULT ( STDMETHODCALLTYPE *SetOutputSize )( 
  1020.             IDXGradient * This,
  1021.             /* [in] */ const SIZE OutSize,
  1022.             /* [in] */ BOOL bMaintainAspect);
  1023.         
  1024.         HRESULT ( STDMETHODCALLTYPE *SetGradient )( 
  1025.             IDXGradient * This,
  1026.             DXSAMPLE StartColor,
  1027.             DXSAMPLE EndColor,
  1028.             BOOL bHorizontal);
  1029.         
  1030.         HRESULT ( STDMETHODCALLTYPE *GetOutputSize )( 
  1031.             IDXGradient * This,
  1032.             /* [out] */ SIZE *pOutSize);
  1033.         
  1034.         END_INTERFACE
  1035.     } IDXGradientVtbl;
  1036.     interface IDXGradient
  1037.     {
  1038.         CONST_VTBL struct IDXGradientVtbl *lpVtbl;
  1039.     };
  1040.     
  1041. #ifdef COBJMACROS
  1042. #define IDXGradient_QueryInterface(This,riid,ppvObject)
  1043.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1044. #define IDXGradient_AddRef(This)
  1045.     (This)->lpVtbl -> AddRef(This)
  1046. #define IDXGradient_Release(This)
  1047.     (This)->lpVtbl -> Release(This)
  1048. #define IDXGradient_SetOutputSize(This,OutSize,bMaintainAspect)
  1049.     (This)->lpVtbl -> SetOutputSize(This,OutSize,bMaintainAspect)
  1050. #define IDXGradient_SetGradient(This,StartColor,EndColor,bHorizontal)
  1051.     (This)->lpVtbl -> SetGradient(This,StartColor,EndColor,bHorizontal)
  1052. #define IDXGradient_GetOutputSize(This,pOutSize)
  1053.     (This)->lpVtbl -> GetOutputSize(This,pOutSize)
  1054. #endif /* COBJMACROS */
  1055. #endif  /* C style interface */
  1056. HRESULT STDMETHODCALLTYPE IDXGradient_SetGradient_Proxy( 
  1057.     IDXGradient * This,
  1058.     DXSAMPLE StartColor,
  1059.     DXSAMPLE EndColor,
  1060.     BOOL bHorizontal);
  1061. void __RPC_STUB IDXGradient_SetGradient_Stub(
  1062.     IRpcStubBuffer *This,
  1063.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1064.     PRPC_MESSAGE _pRpcMessage,
  1065.     DWORD *_pdwStubPhase);
  1066. HRESULT STDMETHODCALLTYPE IDXGradient_GetOutputSize_Proxy( 
  1067.     IDXGradient * This,
  1068.     /* [out] */ SIZE *pOutSize);
  1069. void __RPC_STUB IDXGradient_GetOutputSize_Stub(
  1070.     IRpcStubBuffer *This,
  1071.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1072.     PRPC_MESSAGE _pRpcMessage,
  1073.     DWORD *_pdwStubPhase);
  1074. #endif  /* __IDXGradient_INTERFACE_DEFINED__ */
  1075. #ifndef __IDXTScale_INTERFACE_DEFINED__
  1076. #define __IDXTScale_INTERFACE_DEFINED__
  1077. /* interface IDXTScale */
  1078. /* [local][unique][helpstring][uuid][object] */ 
  1079. EXTERN_C const IID IID_IDXTScale;
  1080. #if defined(__cplusplus) && !defined(CINTERFACE)
  1081.     
  1082.     MIDL_INTERFACE("B39FD742-E139-11d1-9065-00C04FD9189D")
  1083.     IDXTScale : public IUnknown
  1084.     {
  1085.     public:
  1086.         virtual HRESULT STDMETHODCALLTYPE SetScales( 
  1087.             /* [in] */ float Scales[ 2 ]) = 0;
  1088.         
  1089.         virtual HRESULT STDMETHODCALLTYPE GetScales( 
  1090.             /* [out] */ float Scales[ 2 ]) = 0;
  1091.         
  1092.         virtual HRESULT STDMETHODCALLTYPE ScaleFitToSize( 
  1093.             /* [out][in] */ DXBNDS *pClipBounds,
  1094.             /* [in] */ SIZE FitToSize,
  1095.             /* [in] */ BOOL bMaintainAspect) = 0;
  1096.         
  1097.     };
  1098.     
  1099. #else  /* C style interface */
  1100.     typedef struct IDXTScaleVtbl
  1101.     {
  1102.         BEGIN_INTERFACE
  1103.         
  1104.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1105.             IDXTScale * This,
  1106.             /* [in] */ REFIID riid,
  1107.             /* [iid_is][out] */ void **ppvObject);
  1108.         
  1109.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1110.             IDXTScale * This);
  1111.         
  1112.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1113.             IDXTScale * This);
  1114.         
  1115.         HRESULT ( STDMETHODCALLTYPE *SetScales )( 
  1116.             IDXTScale * This,
  1117.             /* [in] */ float Scales[ 2 ]);
  1118.         
  1119.         HRESULT ( STDMETHODCALLTYPE *GetScales )( 
  1120.             IDXTScale * This,
  1121.             /* [out] */ float Scales[ 2 ]);
  1122.         
  1123.         HRESULT ( STDMETHODCALLTYPE *ScaleFitToSize )( 
  1124.             IDXTScale * This,
  1125.             /* [out][in] */ DXBNDS *pClipBounds,
  1126.             /* [in] */ SIZE FitToSize,
  1127.             /* [in] */ BOOL bMaintainAspect);
  1128.         
  1129.         END_INTERFACE
  1130.     } IDXTScaleVtbl;
  1131.     interface IDXTScale
  1132.     {
  1133.         CONST_VTBL struct IDXTScaleVtbl *lpVtbl;
  1134.     };
  1135.     
  1136. #ifdef COBJMACROS
  1137. #define IDXTScale_QueryInterface(This,riid,ppvObject)
  1138.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1139. #define IDXTScale_AddRef(This)
  1140.     (This)->lpVtbl -> AddRef(This)
  1141. #define IDXTScale_Release(This)
  1142.     (This)->lpVtbl -> Release(This)
  1143. #define IDXTScale_SetScales(This,Scales)
  1144.     (This)->lpVtbl -> SetScales(This,Scales)
  1145. #define IDXTScale_GetScales(This,Scales)
  1146.     (This)->lpVtbl -> GetScales(This,Scales)
  1147. #define IDXTScale_ScaleFitToSize(This,pClipBounds,FitToSize,bMaintainAspect)
  1148.     (This)->lpVtbl -> ScaleFitToSize(This,pClipBounds,FitToSize,bMaintainAspect)
  1149. #endif /* COBJMACROS */
  1150. #endif  /* C style interface */
  1151. HRESULT STDMETHODCALLTYPE IDXTScale_SetScales_Proxy( 
  1152.     IDXTScale * This,
  1153.     /* [in] */ float Scales[ 2 ]);
  1154. void __RPC_STUB IDXTScale_SetScales_Stub(
  1155.     IRpcStubBuffer *This,
  1156.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1157.     PRPC_MESSAGE _pRpcMessage,
  1158.     DWORD *_pdwStubPhase);
  1159. HRESULT STDMETHODCALLTYPE IDXTScale_GetScales_Proxy( 
  1160.     IDXTScale * This,
  1161.     /* [out] */ float Scales[ 2 ]);
  1162. void __RPC_STUB IDXTScale_GetScales_Stub(
  1163.     IRpcStubBuffer *This,
  1164.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1165.     PRPC_MESSAGE _pRpcMessage,
  1166.     DWORD *_pdwStubPhase);
  1167. HRESULT STDMETHODCALLTYPE IDXTScale_ScaleFitToSize_Proxy( 
  1168.     IDXTScale * This,
  1169.     /* [out][in] */ DXBNDS *pClipBounds,
  1170.     /* [in] */ SIZE FitToSize,
  1171.     /* [in] */ BOOL bMaintainAspect);
  1172. void __RPC_STUB IDXTScale_ScaleFitToSize_Stub(
  1173.     IRpcStubBuffer *This,
  1174.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1175.     PRPC_MESSAGE _pRpcMessage,
  1176.     DWORD *_pdwStubPhase);
  1177. #endif  /* __IDXTScale_INTERFACE_DEFINED__ */
  1178. /* interface __MIDL_itf_dxtrans_0274 */
  1179. /* [local] */ 
  1180. typedef 
  1181. enum DISPIDDXEFFECT
  1182.     { DISPID_DXECAPABILITIES = 10000,
  1183. DISPID_DXEPROGRESS = DISPID_DXECAPABILITIES + 1,
  1184. DISPID_DXESTEP = DISPID_DXEPROGRESS + 1,
  1185. DISPID_DXEDURATION = DISPID_DXESTEP + 1,
  1186. DISPID_DXE_NEXT_ID = DISPID_DXEDURATION + 1
  1187.     }  DISPIDDXBOUNDEDEFFECT;
  1188. typedef 
  1189. enum DXEFFECTTYPE
  1190.     { DXTET_PERIODIC = 1 << 0,
  1191. DXTET_MORPH = 1 << 1
  1192.     }  DXEFFECTTYPE;
  1193. extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0274_v0_0_c_ifspec;
  1194. extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0274_v0_0_s_ifspec;
  1195. #ifndef __IDXEffect_INTERFACE_DEFINED__
  1196. #define __IDXEffect_INTERFACE_DEFINED__
  1197. /* interface IDXEffect */
  1198. /* [dual][unique][helpstring][uuid][object] */ 
  1199. EXTERN_C const IID IID_IDXEffect;
  1200. #if defined(__cplusplus) && !defined(CINTERFACE)
  1201.     
  1202.     MIDL_INTERFACE("E31FB81B-1335-11d1-8189-0000F87557DB")
  1203.     IDXEffect : public IDispatch
  1204.     {
  1205.     public:
  1206.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Capabilities( 
  1207.             /* [retval][out] */ long *pVal) = 0;
  1208.         
  1209.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Progress( 
  1210.             /* [retval][out] */ float *pVal) = 0;
  1211.         
  1212.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_Progress( 
  1213.             /* [in] */ float newVal) = 0;
  1214.         
  1215.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_StepResolution( 
  1216.             /* [retval][out] */ float *pVal) = 0;
  1217.         
  1218.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Duration( 
  1219.             /* [retval][out] */ float *pVal) = 0;
  1220.         
  1221.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_Duration( 
  1222.             /* [in] */ float newVal) = 0;
  1223.         
  1224.     };
  1225.     
  1226. #else  /* C style interface */
  1227.     typedef struct IDXEffectVtbl
  1228.     {
  1229.         BEGIN_INTERFACE
  1230.         
  1231.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1232.             IDXEffect * This,
  1233.             /* [in] */ REFIID riid,
  1234.             /* [iid_is][out] */ void **ppvObject);
  1235.         
  1236.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1237.             IDXEffect * This);
  1238.         
  1239.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1240.             IDXEffect * This);
  1241.         
  1242.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1243.             IDXEffect * This,
  1244.             /* [out] */ UINT *pctinfo);
  1245.         
  1246.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1247.             IDXEffect * This,
  1248.             /* [in] */ UINT iTInfo,
  1249.             /* [in] */ LCID lcid,
  1250.             /* [out] */ ITypeInfo **ppTInfo);
  1251.         
  1252.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1253.             IDXEffect * This,
  1254.             /* [in] */ REFIID riid,
  1255.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1256.             /* [in] */ UINT cNames,
  1257.             /* [in] */ LCID lcid,
  1258.             /* [size_is][out] */ DISPID *rgDispId);
  1259.         
  1260.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1261.             IDXEffect * This,
  1262.             /* [in] */ DISPID dispIdMember,
  1263.             /* [in] */ REFIID riid,
  1264.             /* [in] */ LCID lcid,
  1265.             /* [in] */ WORD wFlags,
  1266.             /* [out][in] */ DISPPARAMS *pDispParams,
  1267.             /* [out] */ VARIANT *pVarResult,
  1268.             /* [out] */ EXCEPINFO *pExcepInfo,
  1269.             /* [out] */ UINT *puArgErr);
  1270.         
  1271.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Capabilities )( 
  1272.             IDXEffect * This,
  1273.             /* [retval][out] */ long *pVal);
  1274.         
  1275.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Progress )( 
  1276.             IDXEffect * This,
  1277.             /* [retval][out] */ float *pVal);
  1278.         
  1279.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Progress )( 
  1280.             IDXEffect * This,
  1281.             /* [in] */ float newVal);
  1282.         
  1283.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StepResolution )( 
  1284.             IDXEffect * This,
  1285.             /* [retval][out] */ float *pVal);
  1286.         
  1287.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Duration )( 
  1288.             IDXEffect * This,
  1289.             /* [retval][out] */ float *pVal);
  1290.         
  1291.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Duration )( 
  1292.             IDXEffect * This,
  1293.             /* [in] */ float newVal);
  1294.         
  1295.         END_INTERFACE
  1296.     } IDXEffectVtbl;
  1297.     interface IDXEffect
  1298.     {
  1299.         CONST_VTBL struct IDXEffectVtbl *lpVtbl;
  1300.     };
  1301.     
  1302. #ifdef COBJMACROS
  1303. #define IDXEffect_QueryInterface(This,riid,ppvObject)
  1304.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1305. #define IDXEffect_AddRef(This)
  1306.     (This)->lpVtbl -> AddRef(This)
  1307. #define IDXEffect_Release(This)
  1308.     (This)->lpVtbl -> Release(This)
  1309. #define IDXEffect_GetTypeInfoCount(This,pctinfo)
  1310.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1311. #define IDXEffect_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1312.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1313. #define IDXEffect_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1314.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1315. #define IDXEffect_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1316.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1317. #define IDXEffect_get_Capabilities(This,pVal)
  1318.     (This)->lpVtbl -> get_Capabilities(This,pVal)
  1319. #define IDXEffect_get_Progress(This,pVal)
  1320.     (This)->lpVtbl -> get_Progress(This,pVal)
  1321. #define IDXEffect_put_Progress(This,newVal)
  1322.     (This)->lpVtbl -> put_Progress(This,newVal)
  1323. #define IDXEffect_get_StepResolution(This,pVal)
  1324.     (This)->lpVtbl -> get_StepResolution(This,pVal)
  1325. #define IDXEffect_get_Duration(This,pVal)
  1326.     (This)->lpVtbl -> get_Duration(This,pVal)
  1327. #define IDXEffect_put_Duration(This,newVal)
  1328.     (This)->lpVtbl -> put_Duration(This,newVal)
  1329. #endif /* COBJMACROS */
  1330. #endif  /* C style interface */
  1331. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IDXEffect_get_Capabilities_Proxy( 
  1332.     IDXEffect * This,
  1333.     /* [retval][out] */ long *pVal);
  1334. void __RPC_STUB IDXEffect_get_Capabilities_Stub(
  1335.     IRpcStubBuffer *This,
  1336.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1337.     PRPC_MESSAGE _pRpcMessage,
  1338.     DWORD *_pdwStubPhase);
  1339. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IDXEffect_get_Progress_Proxy( 
  1340.     IDXEffect * This,
  1341.     /* [retval][out] */ float *pVal);
  1342. void __RPC_STUB IDXEffect_get_Progress_Stub(
  1343.     IRpcStubBuffer *This,
  1344.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1345.     PRPC_MESSAGE _pRpcMessage,
  1346.     DWORD *_pdwStubPhase);
  1347. /* [id][propput] */ HRESULT STDMETHODCALLTYPE IDXEffect_put_Progress_Proxy( 
  1348.     IDXEffect * This,
  1349.     /* [in] */ float newVal);
  1350. void __RPC_STUB IDXEffect_put_Progress_Stub(
  1351.     IRpcStubBuffer *This,
  1352.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1353.     PRPC_MESSAGE _pRpcMessage,
  1354.     DWORD *_pdwStubPhase);
  1355. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IDXEffect_get_StepResolution_Proxy( 
  1356.     IDXEffect * This,
  1357.     /* [retval][out] */ float *pVal);
  1358. void __RPC_STUB IDXEffect_get_StepResolution_Stub(
  1359.     IRpcStubBuffer *This,
  1360.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1361.     PRPC_MESSAGE _pRpcMessage,
  1362.     DWORD *_pdwStubPhase);
  1363. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IDXEffect_get_Duration_Proxy( 
  1364.     IDXEffect * This,
  1365.     /* [retval][out] */ float *pVal);
  1366. void __RPC_STUB IDXEffect_get_Duration_Stub(
  1367.     IRpcStubBuffer *This,
  1368.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1369.     PRPC_MESSAGE _pRpcMessage,
  1370.     DWORD *_pdwStubPhase);
  1371. /* [id][propput] */ HRESULT STDMETHODCALLTYPE IDXEffect_put_Duration_Proxy( 
  1372.     IDXEffect * This,
  1373.     /* [in] */ float newVal);
  1374. void __RPC_STUB IDXEffect_put_Duration_Stub(
  1375.     IRpcStubBuffer *This,
  1376.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1377.     PRPC_MESSAGE _pRpcMessage,
  1378.     DWORD *_pdwStubPhase);
  1379. #endif  /* __IDXEffect_INTERFACE_DEFINED__ */
  1380. #ifndef __IDXLookupTable_INTERFACE_DEFINED__
  1381. #define __IDXLookupTable_INTERFACE_DEFINED__
  1382. /* interface IDXLookupTable */
  1383. /* [local][unique][helpstring][uuid][object] */ 
  1384. EXTERN_C const IID IID_IDXLookupTable;
  1385. #if defined(__cplusplus) && !defined(CINTERFACE)
  1386.     
  1387.     MIDL_INTERFACE("01BAFC7F-9E63-11d1-9053-00C04FD9189D")
  1388.     IDXLookupTable : public IDXBaseObject
  1389.     {
  1390.     public:
  1391.         virtual HRESULT STDMETHODCALLTYPE GetTables( 
  1392.             /* [out] */ BYTE RedLUT[ 256 ],
  1393.             /* [out] */ BYTE GreenLUT[ 256 ],
  1394.             /* [out] */ BYTE BlueLUT[ 256 ],
  1395.             /* [out] */ BYTE AlphaLUT[ 256 ]) = 0;
  1396.         
  1397.         virtual HRESULT STDMETHODCALLTYPE IsChannelIdentity( 
  1398.             /* [out] */ DXBASESAMPLE *pSampleBools) = 0;
  1399.         
  1400.         virtual HRESULT STDMETHODCALLTYPE GetIndexValues( 
  1401.             /* [in] */ ULONG Index,
  1402.             /* [out] */ DXBASESAMPLE *pSample) = 0;
  1403.         
  1404.         virtual HRESULT STDMETHODCALLTYPE ApplyTables( 
  1405.             /* [out][in] */ DXSAMPLE *pSamples,
  1406.             /* [in] */ ULONG cSamples) = 0;
  1407.         
  1408.     };
  1409.     
  1410. #else  /* C style interface */
  1411.     typedef struct IDXLookupTableVtbl
  1412.     {
  1413.         BEGIN_INTERFACE
  1414.         
  1415.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1416.             IDXLookupTable * This,
  1417.             /* [in] */ REFIID riid,
  1418.             /* [iid_is][out] */ void **ppvObject);
  1419.         
  1420.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1421.             IDXLookupTable * This);
  1422.         
  1423.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1424.             IDXLookupTable * This);
  1425.         
  1426.         HRESULT ( STDMETHODCALLTYPE *GetGenerationId )( 
  1427.             IDXLookupTable * This,
  1428.             /* [out] */ ULONG *pID);
  1429.         
  1430.         HRESULT ( STDMETHODCALLTYPE *IncrementGenerationId )( 
  1431.             IDXLookupTable * This,
  1432.             /* [in] */ BOOL bRefresh);
  1433.         
  1434.         HRESULT ( STDMETHODCALLTYPE *GetObjectSize )( 
  1435.             IDXLookupTable * This,
  1436.             /* [out] */ ULONG *pcbSize);
  1437.         
  1438.         HRESULT ( STDMETHODCALLTYPE *GetTables )( 
  1439.             IDXLookupTable * This,
  1440.             /* [out] */ BYTE RedLUT[ 256 ],
  1441.             /* [out] */ BYTE GreenLUT[ 256 ],
  1442.             /* [out] */ BYTE BlueLUT[ 256 ],
  1443.             /* [out] */ BYTE AlphaLUT[ 256 ]);
  1444.         
  1445.         HRESULT ( STDMETHODCALLTYPE *IsChannelIdentity )( 
  1446.             IDXLookupTable * This,
  1447.             /* [out] */ DXBASESAMPLE *pSampleBools);
  1448.         
  1449.         HRESULT ( STDMETHODCALLTYPE *GetIndexValues )( 
  1450.             IDXLookupTable * This,
  1451.             /* [in] */ ULONG Index,
  1452.             /* [out] */ DXBASESAMPLE *pSample);
  1453.         
  1454.         HRESULT ( STDMETHODCALLTYPE *ApplyTables )( 
  1455.             IDXLookupTable * This,
  1456.             /* [out][in] */ DXSAMPLE *pSamples,
  1457.             /* [in] */ ULONG cSamples);
  1458.         
  1459.         END_INTERFACE
  1460.     } IDXLookupTableVtbl;
  1461.     interface IDXLookupTable
  1462.     {
  1463.         CONST_VTBL struct IDXLookupTableVtbl *lpVtbl;
  1464.     };
  1465.     
  1466. #ifdef COBJMACROS
  1467. #define IDXLookupTable_QueryInterface(This,riid,ppvObject)
  1468.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1469. #define IDXLookupTable_AddRef(This)
  1470.     (This)->lpVtbl -> AddRef(This)
  1471. #define IDXLookupTable_Release(This)
  1472.     (This)->lpVtbl -> Release(This)
  1473. #define IDXLookupTable_GetGenerationId(This,pID)
  1474.     (This)->lpVtbl -> GetGenerationId(This,pID)
  1475. #define IDXLookupTable_IncrementGenerationId(This,bRefresh)
  1476.     (This)->lpVtbl -> IncrementGenerationId(This,bRefresh)
  1477. #define IDXLookupTable_GetObjectSize(This,pcbSize)
  1478.     (This)->lpVtbl -> GetObjectSize(This,pcbSize)
  1479. #define IDXLookupTable_GetTables(This,RedLUT,GreenLUT,BlueLUT,AlphaLUT)
  1480.     (This)->lpVtbl -> GetTables(This,RedLUT,GreenLUT,BlueLUT,AlphaLUT)
  1481. #define IDXLookupTable_IsChannelIdentity(This,pSampleBools)
  1482.     (This)->lpVtbl -> IsChannelIdentity(This,pSampleBools)
  1483. #define IDXLookupTable_GetIndexValues(This,Index,pSample)
  1484.     (This)->lpVtbl -> GetIndexValues(This,Index,pSample)
  1485. #define IDXLookupTable_ApplyTables(This,pSamples,cSamples)
  1486.     (This)->lpVtbl -> ApplyTables(This,pSamples,cSamples)
  1487. #endif /* COBJMACROS */
  1488. #endif  /* C style interface */
  1489. HRESULT STDMETHODCALLTYPE IDXLookupTable_GetTables_Proxy( 
  1490.     IDXLookupTable * This,
  1491.     /* [out] */ BYTE RedLUT[ 256 ],
  1492.     /* [out] */ BYTE GreenLUT[ 256 ],
  1493.     /* [out] */ BYTE BlueLUT[ 256 ],
  1494.     /* [out] */ BYTE AlphaLUT[ 256 ]);
  1495. void __RPC_STUB IDXLookupTable_GetTables_Stub(
  1496.     IRpcStubBuffer *This,
  1497.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1498.     PRPC_MESSAGE _pRpcMessage,
  1499.     DWORD *_pdwStubPhase);
  1500. HRESULT STDMETHODCALLTYPE IDXLookupTable_IsChannelIdentity_Proxy( 
  1501.     IDXLookupTable * This,
  1502.     /* [out] */ DXBASESAMPLE *pSampleBools);
  1503. void __RPC_STUB IDXLookupTable_IsChannelIdentity_Stub(
  1504.     IRpcStubBuffer *This,
  1505.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1506.     PRPC_MESSAGE _pRpcMessage,
  1507.     DWORD *_pdwStubPhase);
  1508. HRESULT STDMETHODCALLTYPE IDXLookupTable_GetIndexValues_Proxy( 
  1509.     IDXLookupTable * This,
  1510.     /* [in] */ ULONG Index,
  1511.     /* [out] */ DXBASESAMPLE *pSample);
  1512. void __RPC_STUB IDXLookupTable_GetIndexValues_Stub(
  1513.     IRpcStubBuffer *This,
  1514.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1515.     PRPC_MESSAGE _pRpcMessage,
  1516.     DWORD *_pdwStubPhase);
  1517. HRESULT STDMETHODCALLTYPE IDXLookupTable_ApplyTables_Proxy( 
  1518.     IDXLookupTable * This,
  1519.     /* [out][in] */ DXSAMPLE *pSamples,
  1520.     /* [in] */ ULONG cSamples);
  1521. void __RPC_STUB IDXLookupTable_ApplyTables_Stub(
  1522.     IRpcStubBuffer *This,
  1523.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1524.     PRPC_MESSAGE _pRpcMessage,
  1525.     DWORD *_pdwStubPhase);
  1526. #endif  /* __IDXLookupTable_INTERFACE_DEFINED__ */
  1527. /* interface __MIDL_itf_dxtrans_0276 */
  1528. /* [local] */ 
  1529. typedef struct DXRAWSURFACEINFO
  1530.     {
  1531.     BYTE *pFirstByte;
  1532.     long lPitch;
  1533.     ULONG Width;
  1534.     ULONG Height;
  1535.     const GUID *pPixelFormat;
  1536.     HDC hdc;
  1537.     DWORD dwColorKey;
  1538.     DXBASESAMPLE *pPalette;
  1539.     }  DXRAWSURFACEINFO;
  1540. extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0276_v0_0_c_ifspec;
  1541. extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0276_v0_0_s_ifspec;
  1542. #ifndef __IDXRawSurface_INTERFACE_DEFINED__
  1543. #define __IDXRawSurface_INTERFACE_DEFINED__
  1544. /* interface IDXRawSurface */
  1545. /* [local][unique][helpstring][uuid][object] */ 
  1546. EXTERN_C const IID IID_IDXRawSurface;
  1547. #if defined(__cplusplus) && !defined(CINTERFACE)
  1548.     
  1549.     MIDL_INTERFACE("09756C8A-D96A-11d1-9062-00C04FD9189D")
  1550.     IDXRawSurface : public IUnknown
  1551.     {
  1552.     public:
  1553.         virtual HRESULT STDMETHODCALLTYPE GetSurfaceInfo( 
  1554.             DXRAWSURFACEINFO *pSurfaceInfo) = 0;
  1555.         
  1556.     };
  1557.     
  1558. #else  /* C style interface */
  1559.     typedef struct IDXRawSurfaceVtbl
  1560.     {
  1561.         BEGIN_INTERFACE
  1562.         
  1563.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1564.             IDXRawSurface * This,
  1565.             /* [in] */ REFIID riid,
  1566.             /* [iid_is][out] */ void **ppvObject);
  1567.         
  1568.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1569.             IDXRawSurface * This);
  1570.         
  1571.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1572.             IDXRawSurface * This);
  1573.         
  1574.         HRESULT ( STDMETHODCALLTYPE *GetSurfaceInfo )( 
  1575.             IDXRawSurface * This,
  1576.             DXRAWSURFACEINFO *pSurfaceInfo);
  1577.         
  1578.         END_INTERFACE
  1579.     } IDXRawSurfaceVtbl;
  1580.     interface IDXRawSurface
  1581.     {
  1582.         CONST_VTBL struct IDXRawSurfaceVtbl *lpVtbl;
  1583.     };
  1584.     
  1585. #ifdef COBJMACROS
  1586. #define IDXRawSurface_QueryInterface(This,riid,ppvObject)
  1587.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1588. #define IDXRawSurface_AddRef(This)
  1589.     (This)->lpVtbl -> AddRef(This)
  1590. #define IDXRawSurface_Release(This)
  1591.     (This)->lpVtbl -> Release(This)
  1592. #define IDXRawSurface_GetSurfaceInfo(This,pSurfaceInfo)
  1593.     (This)->lpVtbl -> GetSurfaceInfo(This,pSurfaceInfo)
  1594. #endif /* COBJMACROS */
  1595. #endif  /* C style interface */
  1596. HRESULT STDMETHODCALLTYPE IDXRawSurface_GetSurfaceInfo_Proxy( 
  1597.     IDXRawSurface * This,
  1598.     DXRAWSURFACEINFO *pSurfaceInfo);
  1599. void __RPC_STUB IDXRawSurface_GetSurfaceInfo_Stub(
  1600.     IRpcStubBuffer *This,
  1601.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1602.     PRPC_MESSAGE _pRpcMessage,
  1603.     DWORD *_pdwStubPhase);
  1604. #endif  /* __IDXRawSurface_INTERFACE_DEFINED__ */
  1605. #ifndef __IHTMLDXTransform_INTERFACE_DEFINED__
  1606. #define __IHTMLDXTransform_INTERFACE_DEFINED__
  1607. /* interface IHTMLDXTransform */
  1608. /* [local][unique][helpstring][uuid][object] */ 
  1609. EXTERN_C const IID IID_IHTMLDXTransform;
  1610. #if defined(__cplusplus) && !defined(CINTERFACE)
  1611.     
  1612.     MIDL_INTERFACE("30E2AB7D-4FDD-4159-B7EA-DC722BF4ADE5")
  1613.     IHTMLDXTransform : public IUnknown
  1614.     {
  1615.     public:
  1616.         virtual HRESULT STDMETHODCALLTYPE SetHostUrl( 
  1617.             BSTR bstrHostUrl) = 0;
  1618.         
  1619.     };
  1620.     
  1621. #else  /* C style interface */
  1622.     typedef struct IHTMLDXTransformVtbl
  1623.     {
  1624.         BEGIN_INTERFACE
  1625.         
  1626.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1627.             IHTMLDXTransform * This,
  1628.             /* [in] */ REFIID riid,
  1629.             /* [iid_is][out] */ void **ppvObject);
  1630.         
  1631.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1632.             IHTMLDXTransform * This);
  1633.         
  1634.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1635.             IHTMLDXTransform * This);
  1636.         
  1637.         HRESULT ( STDMETHODCALLTYPE *SetHostUrl )( 
  1638.             IHTMLDXTransform * This,
  1639.             BSTR bstrHostUrl);
  1640.         
  1641.         END_INTERFACE
  1642.     } IHTMLDXTransformVtbl;
  1643.     interface IHTMLDXTransform
  1644.     {
  1645.         CONST_VTBL struct IHTMLDXTransformVtbl *lpVtbl;
  1646.     };
  1647.     
  1648. #ifdef COBJMACROS
  1649. #define IHTMLDXTransform_QueryInterface(This,riid,ppvObject)
  1650.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1651. #define IHTMLDXTransform_AddRef(This)
  1652.     (This)->lpVtbl -> AddRef(This)
  1653. #define IHTMLDXTransform_Release(This)
  1654.     (This)->lpVtbl -> Release(This)
  1655. #define IHTMLDXTransform_SetHostUrl(This,bstrHostUrl)
  1656.     (This)->lpVtbl -> SetHostUrl(This,bstrHostUrl)
  1657. #endif /* COBJMACROS */
  1658. #endif  /* C style interface */
  1659. HRESULT STDMETHODCALLTYPE IHTMLDXTransform_SetHostUrl_Proxy( 
  1660.     IHTMLDXTransform * This,
  1661.     BSTR bstrHostUrl);
  1662. void __RPC_STUB IHTMLDXTransform_SetHostUrl_Stub(
  1663.     IRpcStubBuffer *This,
  1664.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1665.     PRPC_MESSAGE _pRpcMessage,
  1666.     DWORD *_pdwStubPhase);
  1667. #endif  /* __IHTMLDXTransform_INTERFACE_DEFINED__ */
  1668. /* interface __MIDL_itf_dxtrans_0278 */
  1669. /* [local] */ 
  1670. typedef 
  1671. enum DXTFILTER_STATUS
  1672.     { DXTFILTER_STATUS_Stopped = 0,
  1673. DXTFILTER_STATUS_Applied = DXTFILTER_STATUS_Stopped + 1,
  1674. DXTFILTER_STATUS_Playing = DXTFILTER_STATUS_Applied + 1,
  1675. DXTFILTER_STATUS_MAX = DXTFILTER_STATUS_Playing + 1
  1676.     }  DXTFILTER_STATUS;
  1677. typedef 
  1678. enum DXTFILTER_DISPID
  1679.     { DISPID_DXTFilter_Percent = 1,
  1680. DISPID_DXTFilter_Duration = DISPID_DXTFilter_Percent + 1,
  1681. DISPID_DXTFilter_Enabled = DISPID_DXTFilter_Duration + 1,
  1682. DISPID_DXTFilter_Status = DISPID_DXTFilter_Enabled + 1,
  1683. DISPID_DXTFilter_Apply = DISPID_DXTFilter_Status + 1,
  1684. DISPID_DXTFilter_Play = DISPID_DXTFilter_Apply + 1,
  1685. DISPID_DXTFilter_Stop = DISPID_DXTFilter_Play + 1,
  1686. DISPID_DXTFilter_MAX = DISPID_DXTFilter_Stop + 1
  1687.     }  DXTFILTER_DISPID;
  1688. extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0278_v0_0_c_ifspec;
  1689. extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0278_v0_0_s_ifspec;
  1690. #ifndef __ICSSFilterDispatch_INTERFACE_DEFINED__
  1691. #define __ICSSFilterDispatch_INTERFACE_DEFINED__
  1692. /* interface ICSSFilterDispatch */
  1693. /* [dual][unique][helpstring][uuid][object] */ 
  1694. EXTERN_C const IID IID_ICSSFilterDispatch;
  1695. #if defined(__cplusplus) && !defined(CINTERFACE)
  1696.     
  1697.     MIDL_INTERFACE("9519152B-9484-4A6C-B6A7-4F25E92D6C6B")
  1698.     ICSSFilterDispatch : public IDispatch
  1699.     {
  1700.     public:
  1701.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Percent( 
  1702.             /* [retval][out] */ float *pVal) = 0;
  1703.         
  1704.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_Percent( 
  1705.             /* [in] */ float newVal) = 0;
  1706.         
  1707.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Duration( 
  1708.             /* [retval][out] */ float *pVal) = 0;
  1709.         
  1710.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_Duration( 
  1711.             /* [in] */ float newVal) = 0;
  1712.         
  1713.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Enabled( 
  1714.             /* [retval][out] */ VARIANT_BOOL *pfVal) = 0;
  1715.         
  1716.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_Enabled( 
  1717.             /* [in] */ VARIANT_BOOL fVal) = 0;
  1718.         
  1719.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Status( 
  1720.             /* [retval][out] */ DXTFILTER_STATUS *peVal) = 0;
  1721.         
  1722.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE Apply( void) = 0;
  1723.         
  1724.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE Play( 
  1725.             /* [optional][in] */ VARIANT varDuration) = 0;
  1726.         
  1727.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE Stop( void) = 0;
  1728.         
  1729.     };
  1730.     
  1731. #else  /* C style interface */
  1732.     typedef struct ICSSFilterDispatchVtbl
  1733.     {
  1734.         BEGIN_INTERFACE
  1735.         
  1736.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1737.             ICSSFilterDispatch * This,
  1738.             /* [in] */ REFIID riid,
  1739.             /* [iid_is][out] */ void **ppvObject);
  1740.         
  1741.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1742.             ICSSFilterDispatch * This);
  1743.         
  1744.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1745.             ICSSFilterDispatch * This);
  1746.         
  1747.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1748.             ICSSFilterDispatch * This,
  1749.             /* [out] */ UINT *pctinfo);
  1750.         
  1751.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1752.             ICSSFilterDispatch * This,
  1753.             /* [in] */ UINT iTInfo,
  1754.             /* [in] */ LCID lcid,
  1755.             /* [out] */ ITypeInfo **ppTInfo);
  1756.         
  1757.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1758.             ICSSFilterDispatch * This,
  1759.             /* [in] */ REFIID riid,
  1760.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1761.             /* [in] */ UINT cNames,
  1762.             /* [in] */ LCID lcid,
  1763.             /* [size_is][out] */ DISPID *rgDispId);
  1764.         
  1765.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1766.             ICSSFilterDispatch * This,
  1767.             /* [in] */ DISPID dispIdMember,
  1768.             /* [in] */ REFIID riid,
  1769.             /* [in] */ LCID lcid,
  1770.             /* [in] */ WORD wFlags,
  1771.             /* [out][in] */ DISPPARAMS *pDispParams,
  1772.             /* [out] */ VARIANT *pVarResult,
  1773.             /* [out] */ EXCEPINFO *pExcepInfo,
  1774.             /* [out] */ UINT *puArgErr);
  1775.         
  1776.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Percent )( 
  1777.             ICSSFilterDispatch * This,
  1778.             /* [retval][out] */ float *pVal);
  1779.         
  1780.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Percent )( 
  1781.             ICSSFilterDispatch * This,
  1782.             /* [in] */ float newVal);
  1783.         
  1784.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Duration )( 
  1785.             ICSSFilterDispatch * This,
  1786.             /* [retval][out] */ float *pVal);
  1787.         
  1788.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Duration )( 
  1789.             ICSSFilterDispatch * This,
  1790.             /* [in] */ float newVal);
  1791.         
  1792.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Enabled )( 
  1793.             ICSSFilterDispatch * This,
  1794.             /* [retval][out] */ VARIANT_BOOL *pfVal);
  1795.         
  1796.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Enabled )( 
  1797.             ICSSFilterDispatch * This,
  1798.             /* [in] */ VARIANT_BOOL fVal);
  1799.         
  1800.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Status )( 
  1801.             ICSSFilterDispatch * This,
  1802.             /* [retval][out] */ DXTFILTER_STATUS *peVal);
  1803.         
  1804.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *Apply )( 
  1805.             ICSSFilterDispatch * This);
  1806.         
  1807.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *Play )( 
  1808.             ICSSFilterDispatch * This,
  1809.             /* [optional][in] */ VARIANT varDuration);
  1810.         
  1811.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *Stop )( 
  1812.             ICSSFilterDispatch * This);
  1813.         
  1814.         END_INTERFACE
  1815.     } ICSSFilterDispatchVtbl;
  1816.     interface ICSSFilterDispatch
  1817.     {
  1818.         CONST_VTBL struct ICSSFilterDispatchVtbl *lpVtbl;
  1819.     };
  1820.     
  1821. #ifdef COBJMACROS
  1822. #define ICSSFilterDispatch_QueryInterface(This,riid,ppvObject)
  1823.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1824. #define ICSSFilterDispatch_AddRef(This)
  1825.     (This)->lpVtbl -> AddRef(This)
  1826. #define ICSSFilterDispatch_Release(This)
  1827.     (This)->lpVtbl -> Release(This)
  1828. #define ICSSFilterDispatch_GetTypeInfoCount(This,pctinfo)
  1829.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1830. #define ICSSFilterDispatch_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1831.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1832. #define ICSSFilterDispatch_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1833.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1834. #define ICSSFilterDispatch_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1835.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1836. #define ICSSFilterDispatch_get_Percent(This,pVal)
  1837.     (This)->lpVtbl -> get_Percent(This,pVal)
  1838. #define ICSSFilterDispatch_put_Percent(This,newVal)
  1839.     (This)->lpVtbl -> put_Percent(This,newVal)
  1840. #define ICSSFilterDispatch_get_Duration(This,pVal)
  1841.     (This)->lpVtbl -> get_Duration(This,pVal)
  1842. #define ICSSFilterDispatch_put_Duration(This,newVal)
  1843.     (This)->lpVtbl -> put_Duration(This,newVal)
  1844. #define ICSSFilterDispatch_get_Enabled(This,pfVal)
  1845.     (This)->lpVtbl -> get_Enabled(This,pfVal)
  1846. #define ICSSFilterDispatch_put_Enabled(This,fVal)
  1847.     (This)->lpVtbl -> put_Enabled(This,fVal)
  1848. #define ICSSFilterDispatch_get_Status(This,peVal)
  1849.     (This)->lpVtbl -> get_Status(This,peVal)
  1850. #define ICSSFilterDispatch_Apply(This)
  1851.     (This)->lpVtbl -> Apply(This)
  1852. #define ICSSFilterDispatch_Play(This,varDuration)
  1853.     (This)->lpVtbl -> Play(This,varDuration)
  1854. #define ICSSFilterDispatch_Stop(This)
  1855.     (This)->lpVtbl -> Stop(This)
  1856. #endif /* COBJMACROS */
  1857. #endif  /* C style interface */
  1858. /* [id][propget] */ HRESULT STDMETHODCALLTYPE ICSSFilterDispatch_get_Percent_Proxy( 
  1859.     ICSSFilterDispatch * This,
  1860.     /* [retval][out] */ float *pVal);
  1861. void __RPC_STUB ICSSFilterDispatch_get_Percent_Stub(
  1862.     IRpcStubBuffer *This,
  1863.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1864.     PRPC_MESSAGE _pRpcMessage,
  1865.     DWORD *_pdwStubPhase);
  1866. /* [id][propput] */ HRESULT STDMETHODCALLTYPE ICSSFilterDispatch_put_Percent_Proxy( 
  1867.     ICSSFilterDispatch * This,
  1868.     /* [in] */ float newVal);
  1869. void __RPC_STUB ICSSFilterDispatch_put_Percent_Stub(
  1870.     IRpcStubBuffer *This,
  1871.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1872.     PRPC_MESSAGE _pRpcMessage,
  1873.     DWORD *_pdwStubPhase);
  1874. /* [id][propget] */ HRESULT STDMETHODCALLTYPE ICSSFilterDispatch_get_Duration_Proxy( 
  1875.     ICSSFilterDispatch * This,
  1876.     /* [retval][out] */ float *pVal);
  1877. void __RPC_STUB ICSSFilterDispatch_get_Duration_Stub(
  1878.     IRpcStubBuffer *This,
  1879.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1880.     PRPC_MESSAGE _pRpcMessage,
  1881.     DWORD *_pdwStubPhase);
  1882. /* [id][propput] */ HRESULT STDMETHODCALLTYPE ICSSFilterDispatch_put_Duration_Proxy( 
  1883.     ICSSFilterDispatch * This,
  1884.     /* [in] */ float newVal);
  1885. void __RPC_STUB ICSSFilterDispatch_put_Duration_Stub(
  1886.     IRpcStubBuffer *This,
  1887.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1888.     PRPC_MESSAGE _pRpcMessage,
  1889.     DWORD *_pdwStubPhase);
  1890. /* [id][propget] */ HRESULT STDMETHODCALLTYPE ICSSFilterDispatch_get_Enabled_Proxy( 
  1891.     ICSSFilterDispatch * This,
  1892.     /* [retval][out] */ VARIANT_BOOL *pfVal);
  1893. void __RPC_STUB ICSSFilterDispatch_get_Enabled_Stub(
  1894.     IRpcStubBuffer *This,
  1895.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1896.     PRPC_MESSAGE _pRpcMessage,
  1897.     DWORD *_pdwStubPhase);
  1898. /* [id][propput] */ HRESULT STDMETHODCALLTYPE ICSSFilterDispatch_put_Enabled_Proxy( 
  1899.     ICSSFilterDispatch * This,
  1900.     /* [in] */ VARIANT_BOOL fVal);
  1901. void __RPC_STUB ICSSFilterDispatch_put_Enabled_Stub(
  1902.     IRpcStubBuffer *This,
  1903.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1904.     PRPC_MESSAGE _pRpcMessage,
  1905.     DWORD *_pdwStubPhase);
  1906. /* [id][propget] */ HRESULT STDMETHODCALLTYPE ICSSFilterDispatch_get_Status_Proxy( 
  1907.     ICSSFilterDispatch * This,
  1908.     /* [retval][out] */ DXTFILTER_STATUS *peVal);
  1909. void __RPC_STUB ICSSFilterDispatch_get_Status_Stub(
  1910.     IRpcStubBuffer *This,
  1911.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1912.     PRPC_MESSAGE _pRpcMessage,
  1913.     DWORD *_pdwStubPhase);
  1914. /* [id] */ HRESULT STDMETHODCALLTYPE ICSSFilterDispatch_Apply_Proxy( 
  1915.     ICSSFilterDispatch * This);
  1916. void __RPC_STUB ICSSFilterDispatch_Apply_Stub(
  1917.     IRpcStubBuffer *This,
  1918.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1919.     PRPC_MESSAGE _pRpcMessage,
  1920.     DWORD *_pdwStubPhase);
  1921. /* [id] */ HRESULT STDMETHODCALLTYPE ICSSFilterDispatch_Play_Proxy( 
  1922.     ICSSFilterDispatch * This,
  1923.     /* [optional][in] */ VARIANT varDuration);
  1924. void __RPC_STUB ICSSFilterDispatch_Play_Stub(
  1925.     IRpcStubBuffer *This,
  1926.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1927.     PRPC_MESSAGE _pRpcMessage,
  1928.     DWORD *_pdwStubPhase);
  1929. /* [id] */ HRESULT STDMETHODCALLTYPE ICSSFilterDispatch_Stop_Proxy( 
  1930.     ICSSFilterDispatch * This);
  1931. void __RPC_STUB ICSSFilterDispatch_Stop_Stub(
  1932.     IRpcStubBuffer *This,
  1933.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1934.     PRPC_MESSAGE _pRpcMessage,
  1935.     DWORD *_pdwStubPhase);
  1936. #endif  /* __ICSSFilterDispatch_INTERFACE_DEFINED__ */
  1937. #ifndef __DXTRANSLib_LIBRARY_DEFINED__
  1938. #define __DXTRANSLib_LIBRARY_DEFINED__
  1939. /* library DXTRANSLib */
  1940. /* [helpstring][version][uuid] */ 
  1941. EXTERN_C const IID LIBID_DXTRANSLib;
  1942. EXTERN_C const CLSID CLSID_DXTransformFactory;
  1943. #ifdef __cplusplus
  1944. class DECLSPEC_UUID("D1FE6762-FC48-11D0-883A-3C8B00C10000")
  1945. DXTransformFactory;
  1946. #endif
  1947. EXTERN_C const CLSID CLSID_DXTaskManager;
  1948. #ifdef __cplusplus
  1949. class DECLSPEC_UUID("4CB26C03-FF93-11d0-817E-0000F87557DB")
  1950. DXTaskManager;
  1951. #endif
  1952. EXTERN_C const CLSID CLSID_DXTScale;
  1953. #ifdef __cplusplus
  1954. class DECLSPEC_UUID("555278E2-05DB-11D1-883A-3C8B00C10000")
  1955. DXTScale;
  1956. #endif
  1957. EXTERN_C const CLSID CLSID_DXSurface;
  1958. #ifdef __cplusplus
  1959. class DECLSPEC_UUID("0E890F83-5F79-11D1-9043-00C04FD9189D")
  1960. DXSurface;
  1961. #endif
  1962. EXTERN_C const CLSID CLSID_DXSurfaceModifier;
  1963. #ifdef __cplusplus
  1964. class DECLSPEC_UUID("3E669F1D-9C23-11d1-9053-00C04FD9189D")
  1965. DXSurfaceModifier;
  1966. #endif
  1967. EXTERN_C const CLSID CLSID_DXGradient;
  1968. #ifdef __cplusplus
  1969. class DECLSPEC_UUID("C6365470-F667-11d1-9067-00C04FD9189D")
  1970. DXGradient;
  1971. #endif
  1972. EXTERN_C const CLSID CLSID_DXTFilter;
  1973. #ifdef __cplusplus
  1974. class DECLSPEC_UUID("385A91BC-1E8A-4e4a-A7A6-F4FC1E6CA1BD")
  1975. DXTFilter;
  1976. #endif
  1977. #endif /* __DXTRANSLib_LIBRARY_DEFINED__ */
  1978. /* Additional Prototypes for ALL interfaces */
  1979. unsigned long             __RPC_USER  VARIANT_UserSize(     unsigned long *, unsigned long            , VARIANT * ); 
  1980. unsigned char * __RPC_USER  VARIANT_UserMarshal(  unsigned long *, unsigned char *, VARIANT * ); 
  1981. unsigned char * __RPC_USER  VARIANT_UserUnmarshal(unsigned long *, unsigned char *, VARIANT * ); 
  1982. void                      __RPC_USER  VARIANT_UserFree(     unsigned long *, VARIANT * ); 
  1983. /* end of Additional Prototypes */
  1984. #ifdef __cplusplus
  1985. }
  1986. #endif
  1987. #endif