dxtrans.h
上传用户:hylc_2004
上传日期:2014-01-23
资源大小:46800k
文件大小:155k
源码类别:

Delphi控件源码

开发平台:

Delphi

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