Support unrar64.dll
[xy_vsfilter.git] / include / dx / dxtrans.h
blob504877ab5dd23107336bb4d88f627a3370d64dce
2 #pragma warning( disable: 4049 ) /* more than 64k source lines */
4 /* this ALWAYS GENERATED file contains the definitions for the interfaces */
7 /* File created by MIDL compiler version 6.00.0357 */
8 /* Compiler settings for dxtrans.idl:
9 Oicf, W1, Zp8, env=Win32 (32b run)
10 protocol : dce , ms_ext, c_ext
11 error checks: allocation ref bounds_check enum stub_data
12 VC __declspec() decoration level:
13 __declspec(uuid()), __declspec(selectany), __declspec(novtable)
14 DECLSPEC_UUID(), MIDL_INTERFACE()
16 //@@MIDL_FILE_HEADING( )
19 /* verify that the <rpcndr.h> version is high enough to compile this file*/
20 #ifndef __REQUIRED_RPCNDR_H_VERSION__
21 #define __REQUIRED_RPCNDR_H_VERSION__ 440
22 #endif
24 #include "rpc.h"
25 #include "rpcndr.h"
27 #ifndef __RPCNDR_H_VERSION__
28 #error this stub requires an updated version of <rpcndr.h>
29 #endif // __RPCNDR_H_VERSION__
31 #ifndef COM_NO_WINDOWS_H
32 #include "windows.h"
33 #include "ole2.h"
34 #endif /*COM_NO_WINDOWS_H*/
36 #ifndef __dxtrans_h__
37 #define __dxtrans_h__
39 #if defined(_MSC_VER) && (_MSC_VER >= 1020)
40 #pragma once
41 #endif
43 /* Forward Declarations */
45 #ifndef __IDXBaseObject_FWD_DEFINED__
46 #define __IDXBaseObject_FWD_DEFINED__
47 typedef interface IDXBaseObject IDXBaseObject;
48 #endif /* __IDXBaseObject_FWD_DEFINED__ */
51 #ifndef __IDXTransformFactory_FWD_DEFINED__
52 #define __IDXTransformFactory_FWD_DEFINED__
53 typedef interface IDXTransformFactory IDXTransformFactory;
54 #endif /* __IDXTransformFactory_FWD_DEFINED__ */
57 #ifndef __IDXTransform_FWD_DEFINED__
58 #define __IDXTransform_FWD_DEFINED__
59 typedef interface IDXTransform IDXTransform;
60 #endif /* __IDXTransform_FWD_DEFINED__ */
63 #ifndef __IDXSurfacePick_FWD_DEFINED__
64 #define __IDXSurfacePick_FWD_DEFINED__
65 typedef interface IDXSurfacePick IDXSurfacePick;
66 #endif /* __IDXSurfacePick_FWD_DEFINED__ */
69 #ifndef __IDXTBindHost_FWD_DEFINED__
70 #define __IDXTBindHost_FWD_DEFINED__
71 typedef interface IDXTBindHost IDXTBindHost;
72 #endif /* __IDXTBindHost_FWD_DEFINED__ */
75 #ifndef __IDXTaskManager_FWD_DEFINED__
76 #define __IDXTaskManager_FWD_DEFINED__
77 typedef interface IDXTaskManager IDXTaskManager;
78 #endif /* __IDXTaskManager_FWD_DEFINED__ */
81 #ifndef __IDXSurfaceFactory_FWD_DEFINED__
82 #define __IDXSurfaceFactory_FWD_DEFINED__
83 typedef interface IDXSurfaceFactory IDXSurfaceFactory;
84 #endif /* __IDXSurfaceFactory_FWD_DEFINED__ */
87 #ifndef __IDXSurfaceModifier_FWD_DEFINED__
88 #define __IDXSurfaceModifier_FWD_DEFINED__
89 typedef interface IDXSurfaceModifier IDXSurfaceModifier;
90 #endif /* __IDXSurfaceModifier_FWD_DEFINED__ */
93 #ifndef __IDXSurface_FWD_DEFINED__
94 #define __IDXSurface_FWD_DEFINED__
95 typedef interface IDXSurface IDXSurface;
96 #endif /* __IDXSurface_FWD_DEFINED__ */
99 #ifndef __IDXSurfaceInit_FWD_DEFINED__
100 #define __IDXSurfaceInit_FWD_DEFINED__
101 typedef interface IDXSurfaceInit IDXSurfaceInit;
102 #endif /* __IDXSurfaceInit_FWD_DEFINED__ */
105 #ifndef __IDXARGBSurfaceInit_FWD_DEFINED__
106 #define __IDXARGBSurfaceInit_FWD_DEFINED__
107 typedef interface IDXARGBSurfaceInit IDXARGBSurfaceInit;
108 #endif /* __IDXARGBSurfaceInit_FWD_DEFINED__ */
111 #ifndef __IDXARGBReadPtr_FWD_DEFINED__
112 #define __IDXARGBReadPtr_FWD_DEFINED__
113 typedef interface IDXARGBReadPtr IDXARGBReadPtr;
114 #endif /* __IDXARGBReadPtr_FWD_DEFINED__ */
117 #ifndef __IDXARGBReadWritePtr_FWD_DEFINED__
118 #define __IDXARGBReadWritePtr_FWD_DEFINED__
119 typedef interface IDXARGBReadWritePtr IDXARGBReadWritePtr;
120 #endif /* __IDXARGBReadWritePtr_FWD_DEFINED__ */
123 #ifndef __IDXDCLock_FWD_DEFINED__
124 #define __IDXDCLock_FWD_DEFINED__
125 typedef interface IDXDCLock IDXDCLock;
126 #endif /* __IDXDCLock_FWD_DEFINED__ */
129 #ifndef __IDXTScaleOutput_FWD_DEFINED__
130 #define __IDXTScaleOutput_FWD_DEFINED__
131 typedef interface IDXTScaleOutput IDXTScaleOutput;
132 #endif /* __IDXTScaleOutput_FWD_DEFINED__ */
135 #ifndef __IDXGradient_FWD_DEFINED__
136 #define __IDXGradient_FWD_DEFINED__
137 typedef interface IDXGradient IDXGradient;
138 #endif /* __IDXGradient_FWD_DEFINED__ */
141 #ifndef __IDXTScale_FWD_DEFINED__
142 #define __IDXTScale_FWD_DEFINED__
143 typedef interface IDXTScale IDXTScale;
144 #endif /* __IDXTScale_FWD_DEFINED__ */
147 #ifndef __IDXEffect_FWD_DEFINED__
148 #define __IDXEffect_FWD_DEFINED__
149 typedef interface IDXEffect IDXEffect;
150 #endif /* __IDXEffect_FWD_DEFINED__ */
153 #ifndef __IDXLookupTable_FWD_DEFINED__
154 #define __IDXLookupTable_FWD_DEFINED__
155 typedef interface IDXLookupTable IDXLookupTable;
156 #endif /* __IDXLookupTable_FWD_DEFINED__ */
159 #ifndef __IDXRawSurface_FWD_DEFINED__
160 #define __IDXRawSurface_FWD_DEFINED__
161 typedef interface IDXRawSurface IDXRawSurface;
162 #endif /* __IDXRawSurface_FWD_DEFINED__ */
165 #ifndef __IHTMLDXTransform_FWD_DEFINED__
166 #define __IHTMLDXTransform_FWD_DEFINED__
167 typedef interface IHTMLDXTransform IHTMLDXTransform;
168 #endif /* __IHTMLDXTransform_FWD_DEFINED__ */
171 #ifndef __ICSSFilterDispatch_FWD_DEFINED__
172 #define __ICSSFilterDispatch_FWD_DEFINED__
173 typedef interface ICSSFilterDispatch ICSSFilterDispatch;
174 #endif /* __ICSSFilterDispatch_FWD_DEFINED__ */
177 #ifndef __DXTransformFactory_FWD_DEFINED__
178 #define __DXTransformFactory_FWD_DEFINED__
180 #ifdef __cplusplus
181 typedef class DXTransformFactory DXTransformFactory;
182 #else
183 typedef struct DXTransformFactory DXTransformFactory;
184 #endif /* __cplusplus */
186 #endif /* __DXTransformFactory_FWD_DEFINED__ */
189 #ifndef __DXTaskManager_FWD_DEFINED__
190 #define __DXTaskManager_FWD_DEFINED__
192 #ifdef __cplusplus
193 typedef class DXTaskManager DXTaskManager;
194 #else
195 typedef struct DXTaskManager DXTaskManager;
196 #endif /* __cplusplus */
198 #endif /* __DXTaskManager_FWD_DEFINED__ */
201 #ifndef __DXTScale_FWD_DEFINED__
202 #define __DXTScale_FWD_DEFINED__
204 #ifdef __cplusplus
205 typedef class DXTScale DXTScale;
206 #else
207 typedef struct DXTScale DXTScale;
208 #endif /* __cplusplus */
210 #endif /* __DXTScale_FWD_DEFINED__ */
213 #ifndef __DXSurface_FWD_DEFINED__
214 #define __DXSurface_FWD_DEFINED__
216 #ifdef __cplusplus
217 typedef class DXSurface DXSurface;
218 #else
219 typedef struct DXSurface DXSurface;
220 #endif /* __cplusplus */
222 #endif /* __DXSurface_FWD_DEFINED__ */
225 #ifndef __DXSurfaceModifier_FWD_DEFINED__
226 #define __DXSurfaceModifier_FWD_DEFINED__
228 #ifdef __cplusplus
229 typedef class DXSurfaceModifier DXSurfaceModifier;
230 #else
231 typedef struct DXSurfaceModifier DXSurfaceModifier;
232 #endif /* __cplusplus */
234 #endif /* __DXSurfaceModifier_FWD_DEFINED__ */
237 #ifndef __DXGradient_FWD_DEFINED__
238 #define __DXGradient_FWD_DEFINED__
240 #ifdef __cplusplus
241 typedef class DXGradient DXGradient;
242 #else
243 typedef struct DXGradient DXGradient;
244 #endif /* __cplusplus */
246 #endif /* __DXGradient_FWD_DEFINED__ */
249 #ifndef __DXTFilter_FWD_DEFINED__
250 #define __DXTFilter_FWD_DEFINED__
252 #ifdef __cplusplus
253 typedef class DXTFilter DXTFilter;
254 #else
255 typedef struct DXTFilter DXTFilter;
256 #endif /* __cplusplus */
258 #endif /* __DXTFilter_FWD_DEFINED__ */
261 /* header files for imported files */
262 #include "oaidl.h"
263 #include "ocidl.h"
264 #include "comcat.h"
266 #ifdef __cplusplus
267 extern "C"{
268 #endif
270 void * __RPC_USER MIDL_user_allocate(size_t);
271 void __RPC_USER MIDL_user_free( void * );
273 /* interface __MIDL_itf_dxtrans_0000 */
274 /* [local] */
276 #include <servprov.h>
277 #include <ddraw.h>
278 #include <d3d.h>
279 #include <d3drm.h>
280 #include <urlmon.h>
281 #if 0
282 // Bogus definition used to make MIDL compiler happy
283 typedef void DDSURFACEDESC;
285 typedef void D3DRMBOX;
287 typedef void D3DVECTOR;
289 typedef void D3DRMMATRIX4D;
291 typedef void *LPSECURITY_ATTRIBUTES;
293 #endif
294 #ifdef _DXTRANSIMPL
295 #define _DXTRANS_IMPL_EXT _declspec(dllexport)
296 #else
297 #define _DXTRANS_IMPL_EXT _declspec(dllimport)
298 #endif
316 // All GUIDs for DXTransform are declared in DXTGUID.C in the SDK include directory
318 EXTERN_C const GUID DDPF_RGB1;
319 EXTERN_C const GUID DDPF_RGB2;
320 EXTERN_C const GUID DDPF_RGB4;
321 EXTERN_C const GUID DDPF_RGB8;
322 EXTERN_C const GUID DDPF_RGB332;
323 EXTERN_C const GUID DDPF_ARGB4444;
324 EXTERN_C const GUID DDPF_RGB565;
325 EXTERN_C const GUID DDPF_BGR565;
326 EXTERN_C const GUID DDPF_RGB555;
327 EXTERN_C const GUID DDPF_ARGB1555;
328 EXTERN_C const GUID DDPF_RGB24;
329 EXTERN_C const GUID DDPF_BGR24;
330 EXTERN_C const GUID DDPF_RGB32;
331 EXTERN_C const GUID DDPF_BGR32;
332 EXTERN_C const GUID DDPF_ABGR32;
333 EXTERN_C const GUID DDPF_ARGB32;
334 EXTERN_C const GUID DDPF_PMARGB32;
335 EXTERN_C const GUID DDPF_A1;
336 EXTERN_C const GUID DDPF_A2;
337 EXTERN_C const GUID DDPF_A4;
338 EXTERN_C const GUID DDPF_A8;
339 EXTERN_C const GUID DDPF_Z8;
340 EXTERN_C const GUID DDPF_Z16;
341 EXTERN_C const GUID DDPF_Z24;
342 EXTERN_C const GUID DDPF_Z32;
344 // Component categories
346 EXTERN_C const GUID CATID_DXImageTransform;
347 EXTERN_C const GUID CATID_DX3DTransform;
348 EXTERN_C const GUID CATID_DXAuthoringTransform;
349 EXTERN_C const GUID CATID_DXSurface;
351 // Service IDs
353 EXTERN_C const GUID SID_SDirectDraw;
354 EXTERN_C const GUID SID_SDirect3DRM;
355 #define SID_SDXTaskManager CLSID_DXTaskManager
356 #define SID_SDXSurfaceFactory IID_IDXSurfaceFactory
357 #define SID_SDXTransformFactory IID_IDXTransformFactory
359 // DXTransforms Core Type Library Version Info
361 #define DXTRANS_TLB_MAJOR_VER 1
362 #define DXTRANS_TLB_MINOR_VER 1
365 extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0000_v0_0_c_ifspec;
366 extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0000_v0_0_s_ifspec;
368 #ifndef __IDXBaseObject_INTERFACE_DEFINED__
369 #define __IDXBaseObject_INTERFACE_DEFINED__
371 /* interface IDXBaseObject */
372 /* [local][unique][helpstring][uuid][object] */
375 EXTERN_C const IID IID_IDXBaseObject;
377 #if defined(__cplusplus) && !defined(CINTERFACE)
379 MIDL_INTERFACE("17B59B2B-9CC8-11d1-9053-00C04FD9189D")
380 IDXBaseObject : public IUnknown
382 public:
383 virtual HRESULT STDMETHODCALLTYPE GetGenerationId(
384 /* [out] */ ULONG *pID) = 0;
386 virtual HRESULT STDMETHODCALLTYPE IncrementGenerationId(
387 /* [in] */ BOOL bRefresh) = 0;
389 virtual HRESULT STDMETHODCALLTYPE GetObjectSize(
390 /* [out] */ ULONG *pcbSize) = 0;
394 #else /* C style interface */
396 typedef struct IDXBaseObjectVtbl
398 BEGIN_INTERFACE
400 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
401 IDXBaseObject * This,
402 /* [in] */ REFIID riid,
403 /* [iid_is][out] */ void **ppvObject);
405 ULONG ( STDMETHODCALLTYPE *AddRef )(
406 IDXBaseObject * This);
408 ULONG ( STDMETHODCALLTYPE *Release )(
409 IDXBaseObject * This);
411 HRESULT ( STDMETHODCALLTYPE *GetGenerationId )(
412 IDXBaseObject * This,
413 /* [out] */ ULONG *pID);
415 HRESULT ( STDMETHODCALLTYPE *IncrementGenerationId )(
416 IDXBaseObject * This,
417 /* [in] */ BOOL bRefresh);
419 HRESULT ( STDMETHODCALLTYPE *GetObjectSize )(
420 IDXBaseObject * This,
421 /* [out] */ ULONG *pcbSize);
423 END_INTERFACE
424 } IDXBaseObjectVtbl;
426 interface IDXBaseObject
428 CONST_VTBL struct IDXBaseObjectVtbl *lpVtbl;
433 #ifdef COBJMACROS
436 #define IDXBaseObject_QueryInterface(This,riid,ppvObject) \
437 (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
439 #define IDXBaseObject_AddRef(This) \
440 (This)->lpVtbl -> AddRef(This)
442 #define IDXBaseObject_Release(This) \
443 (This)->lpVtbl -> Release(This)
446 #define IDXBaseObject_GetGenerationId(This,pID) \
447 (This)->lpVtbl -> GetGenerationId(This,pID)
449 #define IDXBaseObject_IncrementGenerationId(This,bRefresh) \
450 (This)->lpVtbl -> IncrementGenerationId(This,bRefresh)
452 #define IDXBaseObject_GetObjectSize(This,pcbSize) \
453 (This)->lpVtbl -> GetObjectSize(This,pcbSize)
455 #endif /* COBJMACROS */
458 #endif /* C style interface */
462 HRESULT STDMETHODCALLTYPE IDXBaseObject_GetGenerationId_Proxy(
463 IDXBaseObject * This,
464 /* [out] */ ULONG *pID);
467 void __RPC_STUB IDXBaseObject_GetGenerationId_Stub(
468 IRpcStubBuffer *This,
469 IRpcChannelBuffer *_pRpcChannelBuffer,
470 PRPC_MESSAGE _pRpcMessage,
471 DWORD *_pdwStubPhase);
474 HRESULT STDMETHODCALLTYPE IDXBaseObject_IncrementGenerationId_Proxy(
475 IDXBaseObject * This,
476 /* [in] */ BOOL bRefresh);
479 void __RPC_STUB IDXBaseObject_IncrementGenerationId_Stub(
480 IRpcStubBuffer *This,
481 IRpcChannelBuffer *_pRpcChannelBuffer,
482 PRPC_MESSAGE _pRpcMessage,
483 DWORD *_pdwStubPhase);
486 HRESULT STDMETHODCALLTYPE IDXBaseObject_GetObjectSize_Proxy(
487 IDXBaseObject * This,
488 /* [out] */ ULONG *pcbSize);
491 void __RPC_STUB IDXBaseObject_GetObjectSize_Stub(
492 IRpcStubBuffer *This,
493 IRpcChannelBuffer *_pRpcChannelBuffer,
494 PRPC_MESSAGE _pRpcMessage,
495 DWORD *_pdwStubPhase);
499 #endif /* __IDXBaseObject_INTERFACE_DEFINED__ */
502 /* interface __MIDL_itf_dxtrans_0260 */
503 /* [local] */
505 typedef
506 enum DXBNDID
507 { DXB_X = 0,
508 DXB_Y = 1,
509 DXB_Z = 2,
510 DXB_T = 3
511 } DXBNDID;
513 typedef
514 enum DXBNDTYPE
515 { DXBT_DISCRETE = 0,
516 DXBT_DISCRETE64 = DXBT_DISCRETE + 1,
517 DXBT_CONTINUOUS = DXBT_DISCRETE64 + 1,
518 DXBT_CONTINUOUS64 = DXBT_CONTINUOUS + 1
519 } DXBNDTYPE;
521 typedef struct DXDBND
523 long Min;
524 long Max;
525 } DXDBND;
527 typedef DXDBND DXDBNDS[ 4 ];
529 typedef struct DXDBND64
531 LONGLONG Min;
532 LONGLONG Max;
533 } DXDBND64;
535 typedef DXDBND64 DXDBNDS64[ 4 ];
537 typedef struct DXCBND
539 float Min;
540 float Max;
541 } DXCBND;
543 typedef DXCBND DXCBNDS[ 4 ];
545 typedef struct DXCBND64
547 double Min;
548 double Max;
549 } DXCBND64;
551 typedef DXCBND64 DXCBNDS64[ 4 ];
553 typedef struct DXBNDS
555 DXBNDTYPE eType;
556 /* [switch_is] */ /* [switch_type] */ union __MIDL___MIDL_itf_dxtrans_0260_0001
558 /* [case()] */ DXDBND D[ 4 ];
559 /* [case()] */ DXDBND64 LD[ 4 ];
560 /* [case()] */ DXCBND C[ 4 ];
561 /* [case()] */ DXCBND64 LC[ 4 ];
562 } u;
563 } DXBNDS;
565 typedef long DXDVEC[ 4 ];
567 typedef LONGLONG DXDVEC64[ 4 ];
569 typedef float DXCVEC[ 4 ];
571 typedef double DXCVEC64[ 4 ];
573 typedef struct DXVEC
575 DXBNDTYPE eType;
576 /* [switch_is] */ /* [switch_type] */ union __MIDL___MIDL_itf_dxtrans_0260_0002
578 /* [case()] */ long D[ 4 ];
579 /* [case()] */ LONGLONG LD[ 4 ];
580 /* [case()] */ float C[ 4 ];
581 /* [case()] */ double LC[ 4 ];
582 } u;
583 } DXVEC;
587 extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0260_v0_0_c_ifspec;
588 extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0260_v0_0_s_ifspec;
590 #ifndef __IDXTransformFactory_INTERFACE_DEFINED__
591 #define __IDXTransformFactory_INTERFACE_DEFINED__
593 /* interface IDXTransformFactory */
594 /* [local][unique][helpstring][uuid][object] */
597 EXTERN_C const IID IID_IDXTransformFactory;
599 #if defined(__cplusplus) && !defined(CINTERFACE)
601 MIDL_INTERFACE("6A950B2B-A971-11d1-81C8-0000F87557DB")
602 IDXTransformFactory : public IServiceProvider
604 public:
605 virtual HRESULT STDMETHODCALLTYPE SetService(
606 /* [in] */ REFGUID guidService,
607 /* [in] */ IUnknown *pUnkService,
608 /* [in] */ BOOL bWeakReference) = 0;
610 virtual HRESULT STDMETHODCALLTYPE CreateTransform(
611 /* [size_is][in] */ IUnknown **punkInputs,
612 /* [in] */ ULONG ulNumInputs,
613 /* [size_is][in] */ IUnknown **punkOutputs,
614 /* [in] */ ULONG ulNumOutputs,
615 /* [in] */ IPropertyBag *pInitProps,
616 /* [in] */ IErrorLog *pErrLog,
617 /* [in] */ REFCLSID TransCLSID,
618 /* [in] */ REFIID TransIID,
619 /* [iid_is][out] */ void **ppTransform) = 0;
621 virtual HRESULT STDMETHODCALLTYPE InitializeTransform(
622 /* [in] */ IDXTransform *pTransform,
623 /* [size_is][in] */ IUnknown **punkInputs,
624 /* [in] */ ULONG ulNumInputs,
625 /* [size_is][in] */ IUnknown **punkOutputs,
626 /* [in] */ ULONG ulNumOutputs,
627 /* [in] */ IPropertyBag *pInitProps,
628 /* [in] */ IErrorLog *pErrLog) = 0;
632 #else /* C style interface */
634 typedef struct IDXTransformFactoryVtbl
636 BEGIN_INTERFACE
638 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
639 IDXTransformFactory * This,
640 /* [in] */ REFIID riid,
641 /* [iid_is][out] */ void **ppvObject);
643 ULONG ( STDMETHODCALLTYPE *AddRef )(
644 IDXTransformFactory * This);
646 ULONG ( STDMETHODCALLTYPE *Release )(
647 IDXTransformFactory * This);
649 /* [local] */ HRESULT ( STDMETHODCALLTYPE *QueryService )(
650 IDXTransformFactory * This,
651 /* [in] */ REFGUID guidService,
652 /* [in] */ REFIID riid,
653 /* [out] */ void **ppvObject);
655 HRESULT ( STDMETHODCALLTYPE *SetService )(
656 IDXTransformFactory * This,
657 /* [in] */ REFGUID guidService,
658 /* [in] */ IUnknown *pUnkService,
659 /* [in] */ BOOL bWeakReference);
661 HRESULT ( STDMETHODCALLTYPE *CreateTransform )(
662 IDXTransformFactory * This,
663 /* [size_is][in] */ IUnknown **punkInputs,
664 /* [in] */ ULONG ulNumInputs,
665 /* [size_is][in] */ IUnknown **punkOutputs,
666 /* [in] */ ULONG ulNumOutputs,
667 /* [in] */ IPropertyBag *pInitProps,
668 /* [in] */ IErrorLog *pErrLog,
669 /* [in] */ REFCLSID TransCLSID,
670 /* [in] */ REFIID TransIID,
671 /* [iid_is][out] */ void **ppTransform);
673 HRESULT ( STDMETHODCALLTYPE *InitializeTransform )(
674 IDXTransformFactory * This,
675 /* [in] */ IDXTransform *pTransform,
676 /* [size_is][in] */ IUnknown **punkInputs,
677 /* [in] */ ULONG ulNumInputs,
678 /* [size_is][in] */ IUnknown **punkOutputs,
679 /* [in] */ ULONG ulNumOutputs,
680 /* [in] */ IPropertyBag *pInitProps,
681 /* [in] */ IErrorLog *pErrLog);
683 END_INTERFACE
684 } IDXTransformFactoryVtbl;
686 interface IDXTransformFactory
688 CONST_VTBL struct IDXTransformFactoryVtbl *lpVtbl;
693 #ifdef COBJMACROS
696 #define IDXTransformFactory_QueryInterface(This,riid,ppvObject) \
697 (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
699 #define IDXTransformFactory_AddRef(This) \
700 (This)->lpVtbl -> AddRef(This)
702 #define IDXTransformFactory_Release(This) \
703 (This)->lpVtbl -> Release(This)
706 #define IDXTransformFactory_QueryService(This,guidService,riid,ppvObject) \
707 (This)->lpVtbl -> QueryService(This,guidService,riid,ppvObject)
710 #define IDXTransformFactory_SetService(This,guidService,pUnkService,bWeakReference) \
711 (This)->lpVtbl -> SetService(This,guidService,pUnkService,bWeakReference)
713 #define IDXTransformFactory_CreateTransform(This,punkInputs,ulNumInputs,punkOutputs,ulNumOutputs,pInitProps,pErrLog,TransCLSID,TransIID,ppTransform) \
714 (This)->lpVtbl -> CreateTransform(This,punkInputs,ulNumInputs,punkOutputs,ulNumOutputs,pInitProps,pErrLog,TransCLSID,TransIID,ppTransform)
716 #define IDXTransformFactory_InitializeTransform(This,pTransform,punkInputs,ulNumInputs,punkOutputs,ulNumOutputs,pInitProps,pErrLog) \
717 (This)->lpVtbl -> InitializeTransform(This,pTransform,punkInputs,ulNumInputs,punkOutputs,ulNumOutputs,pInitProps,pErrLog)
719 #endif /* COBJMACROS */
722 #endif /* C style interface */
726 HRESULT STDMETHODCALLTYPE IDXTransformFactory_SetService_Proxy(
727 IDXTransformFactory * This,
728 /* [in] */ REFGUID guidService,
729 /* [in] */ IUnknown *pUnkService,
730 /* [in] */ BOOL bWeakReference);
733 void __RPC_STUB IDXTransformFactory_SetService_Stub(
734 IRpcStubBuffer *This,
735 IRpcChannelBuffer *_pRpcChannelBuffer,
736 PRPC_MESSAGE _pRpcMessage,
737 DWORD *_pdwStubPhase);
740 HRESULT STDMETHODCALLTYPE IDXTransformFactory_CreateTransform_Proxy(
741 IDXTransformFactory * This,
742 /* [size_is][in] */ IUnknown **punkInputs,
743 /* [in] */ ULONG ulNumInputs,
744 /* [size_is][in] */ IUnknown **punkOutputs,
745 /* [in] */ ULONG ulNumOutputs,
746 /* [in] */ IPropertyBag *pInitProps,
747 /* [in] */ IErrorLog *pErrLog,
748 /* [in] */ REFCLSID TransCLSID,
749 /* [in] */ REFIID TransIID,
750 /* [iid_is][out] */ void **ppTransform);
753 void __RPC_STUB IDXTransformFactory_CreateTransform_Stub(
754 IRpcStubBuffer *This,
755 IRpcChannelBuffer *_pRpcChannelBuffer,
756 PRPC_MESSAGE _pRpcMessage,
757 DWORD *_pdwStubPhase);
760 HRESULT STDMETHODCALLTYPE IDXTransformFactory_InitializeTransform_Proxy(
761 IDXTransformFactory * This,
762 /* [in] */ IDXTransform *pTransform,
763 /* [size_is][in] */ IUnknown **punkInputs,
764 /* [in] */ ULONG ulNumInputs,
765 /* [size_is][in] */ IUnknown **punkOutputs,
766 /* [in] */ ULONG ulNumOutputs,
767 /* [in] */ IPropertyBag *pInitProps,
768 /* [in] */ IErrorLog *pErrLog);
771 void __RPC_STUB IDXTransformFactory_InitializeTransform_Stub(
772 IRpcStubBuffer *This,
773 IRpcChannelBuffer *_pRpcChannelBuffer,
774 PRPC_MESSAGE _pRpcMessage,
775 DWORD *_pdwStubPhase);
779 #endif /* __IDXTransformFactory_INTERFACE_DEFINED__ */
782 /* interface __MIDL_itf_dxtrans_0261 */
783 /* [local] */
785 typedef
786 enum DXTMISCFLAGS
787 { DXTMF_BLEND_WITH_OUTPUT = 1L << 0,
788 DXTMF_DITHER_OUTPUT = 1L << 1,
789 DXTMF_OPTION_MASK = 0xffff,
790 DXTMF_VALID_OPTIONS = DXTMF_BLEND_WITH_OUTPUT | DXTMF_DITHER_OUTPUT,
791 DXTMF_BLEND_SUPPORTED = 1L << 16,
792 DXTMF_DITHER_SUPPORTED = 1L << 17,
793 DXTMF_INPLACE_OPERATION = 1L << 24,
794 DXTMF_BOUNDS_SUPPORTED = 1L << 25,
795 DXTMF_PLACEMENT_SUPPORTED = 1L << 26,
796 DXTMF_QUALITY_SUPPORTED = 1L << 27,
797 DXTMF_OPAQUE_RESULT = 1L << 28
798 } DXTMISCFLAGS;
800 typedef
801 enum DXINOUTINFOFLAGS
802 { DXINOUTF_OPTIONAL = 1L << 0
803 } DXINOUTINFOFLAGS;
807 extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0261_v0_0_c_ifspec;
808 extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0261_v0_0_s_ifspec;
810 #ifndef __IDXTransform_INTERFACE_DEFINED__
811 #define __IDXTransform_INTERFACE_DEFINED__
813 /* interface IDXTransform */
814 /* [local][unique][helpstring][uuid][object] */
817 EXTERN_C const IID IID_IDXTransform;
819 #if defined(__cplusplus) && !defined(CINTERFACE)
821 MIDL_INTERFACE("30A5FB78-E11F-11d1-9064-00C04FD9189D")
822 IDXTransform : public IDXBaseObject
824 public:
825 virtual HRESULT STDMETHODCALLTYPE Setup(
826 /* [size_is][in] */ IUnknown *const *punkInputs,
827 /* [in] */ ULONG ulNumInputs,
828 /* [size_is][in] */ IUnknown *const *punkOutputs,
829 /* [in] */ ULONG ulNumOutputs,
830 /* [in] */ DWORD dwFlags) = 0;
832 virtual HRESULT STDMETHODCALLTYPE Execute(
833 /* [in] */ const GUID *pRequestID,
834 /* [in] */ const DXBNDS *pClipBnds,
835 /* [in] */ const DXVEC *pPlacement) = 0;
837 virtual HRESULT STDMETHODCALLTYPE MapBoundsIn2Out(
838 /* [in] */ const DXBNDS *pInBounds,
839 /* [in] */ ULONG ulNumInBnds,
840 /* [in] */ ULONG ulOutIndex,
841 /* [out] */ DXBNDS *pOutBounds) = 0;
843 virtual HRESULT STDMETHODCALLTYPE MapBoundsOut2In(
844 /* [in] */ ULONG ulOutIndex,
845 /* [in] */ const DXBNDS *pOutBounds,
846 /* [in] */ ULONG ulInIndex,
847 /* [out] */ DXBNDS *pInBounds) = 0;
849 virtual HRESULT STDMETHODCALLTYPE SetMiscFlags(
850 /* [in] */ DWORD dwMiscFlags) = 0;
852 virtual HRESULT STDMETHODCALLTYPE GetMiscFlags(
853 /* [out] */ DWORD *pdwMiscFlags) = 0;
855 virtual HRESULT STDMETHODCALLTYPE GetInOutInfo(
856 /* [in] */ BOOL bIsOutput,
857 /* [in] */ ULONG ulIndex,
858 /* [out] */ DWORD *pdwFlags,
859 /* [size_is][out] */ GUID *pIDs,
860 /* [out][in] */ ULONG *pcIDs,
861 /* [out] */ IUnknown **ppUnkCurrentObject) = 0;
863 virtual HRESULT STDMETHODCALLTYPE SetQuality(
864 /* [in] */ float fQuality) = 0;
866 virtual HRESULT STDMETHODCALLTYPE GetQuality(
867 /* [out] */ float *fQuality) = 0;
871 #else /* C style interface */
873 typedef struct IDXTransformVtbl
875 BEGIN_INTERFACE
877 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
878 IDXTransform * This,
879 /* [in] */ REFIID riid,
880 /* [iid_is][out] */ void **ppvObject);
882 ULONG ( STDMETHODCALLTYPE *AddRef )(
883 IDXTransform * This);
885 ULONG ( STDMETHODCALLTYPE *Release )(
886 IDXTransform * This);
888 HRESULT ( STDMETHODCALLTYPE *GetGenerationId )(
889 IDXTransform * This,
890 /* [out] */ ULONG *pID);
892 HRESULT ( STDMETHODCALLTYPE *IncrementGenerationId )(
893 IDXTransform * This,
894 /* [in] */ BOOL bRefresh);
896 HRESULT ( STDMETHODCALLTYPE *GetObjectSize )(
897 IDXTransform * This,
898 /* [out] */ ULONG *pcbSize);
900 HRESULT ( STDMETHODCALLTYPE *Setup )(
901 IDXTransform * This,
902 /* [size_is][in] */ IUnknown *const *punkInputs,
903 /* [in] */ ULONG ulNumInputs,
904 /* [size_is][in] */ IUnknown *const *punkOutputs,
905 /* [in] */ ULONG ulNumOutputs,
906 /* [in] */ DWORD dwFlags);
908 HRESULT ( STDMETHODCALLTYPE *Execute )(
909 IDXTransform * This,
910 /* [in] */ const GUID *pRequestID,
911 /* [in] */ const DXBNDS *pClipBnds,
912 /* [in] */ const DXVEC *pPlacement);
914 HRESULT ( STDMETHODCALLTYPE *MapBoundsIn2Out )(
915 IDXTransform * This,
916 /* [in] */ const DXBNDS *pInBounds,
917 /* [in] */ ULONG ulNumInBnds,
918 /* [in] */ ULONG ulOutIndex,
919 /* [out] */ DXBNDS *pOutBounds);
921 HRESULT ( STDMETHODCALLTYPE *MapBoundsOut2In )(
922 IDXTransform * This,
923 /* [in] */ ULONG ulOutIndex,
924 /* [in] */ const DXBNDS *pOutBounds,
925 /* [in] */ ULONG ulInIndex,
926 /* [out] */ DXBNDS *pInBounds);
928 HRESULT ( STDMETHODCALLTYPE *SetMiscFlags )(
929 IDXTransform * This,
930 /* [in] */ DWORD dwMiscFlags);
932 HRESULT ( STDMETHODCALLTYPE *GetMiscFlags )(
933 IDXTransform * This,
934 /* [out] */ DWORD *pdwMiscFlags);
936 HRESULT ( STDMETHODCALLTYPE *GetInOutInfo )(
937 IDXTransform * This,
938 /* [in] */ BOOL bIsOutput,
939 /* [in] */ ULONG ulIndex,
940 /* [out] */ DWORD *pdwFlags,
941 /* [size_is][out] */ GUID *pIDs,
942 /* [out][in] */ ULONG *pcIDs,
943 /* [out] */ IUnknown **ppUnkCurrentObject);
945 HRESULT ( STDMETHODCALLTYPE *SetQuality )(
946 IDXTransform * This,
947 /* [in] */ float fQuality);
949 HRESULT ( STDMETHODCALLTYPE *GetQuality )(
950 IDXTransform * This,
951 /* [out] */ float *fQuality);
953 END_INTERFACE
954 } IDXTransformVtbl;
956 interface IDXTransform
958 CONST_VTBL struct IDXTransformVtbl *lpVtbl;
963 #ifdef COBJMACROS
966 #define IDXTransform_QueryInterface(This,riid,ppvObject) \
967 (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
969 #define IDXTransform_AddRef(This) \
970 (This)->lpVtbl -> AddRef(This)
972 #define IDXTransform_Release(This) \
973 (This)->lpVtbl -> Release(This)
976 #define IDXTransform_GetGenerationId(This,pID) \
977 (This)->lpVtbl -> GetGenerationId(This,pID)
979 #define IDXTransform_IncrementGenerationId(This,bRefresh) \
980 (This)->lpVtbl -> IncrementGenerationId(This,bRefresh)
982 #define IDXTransform_GetObjectSize(This,pcbSize) \
983 (This)->lpVtbl -> GetObjectSize(This,pcbSize)
986 #define IDXTransform_Setup(This,punkInputs,ulNumInputs,punkOutputs,ulNumOutputs,dwFlags) \
987 (This)->lpVtbl -> Setup(This,punkInputs,ulNumInputs,punkOutputs,ulNumOutputs,dwFlags)
989 #define IDXTransform_Execute(This,pRequestID,pClipBnds,pPlacement) \
990 (This)->lpVtbl -> Execute(This,pRequestID,pClipBnds,pPlacement)
992 #define IDXTransform_MapBoundsIn2Out(This,pInBounds,ulNumInBnds,ulOutIndex,pOutBounds) \
993 (This)->lpVtbl -> MapBoundsIn2Out(This,pInBounds,ulNumInBnds,ulOutIndex,pOutBounds)
995 #define IDXTransform_MapBoundsOut2In(This,ulOutIndex,pOutBounds,ulInIndex,pInBounds) \
996 (This)->lpVtbl -> MapBoundsOut2In(This,ulOutIndex,pOutBounds,ulInIndex,pInBounds)
998 #define IDXTransform_SetMiscFlags(This,dwMiscFlags) \
999 (This)->lpVtbl -> SetMiscFlags(This,dwMiscFlags)
1001 #define IDXTransform_GetMiscFlags(This,pdwMiscFlags) \
1002 (This)->lpVtbl -> GetMiscFlags(This,pdwMiscFlags)
1004 #define IDXTransform_GetInOutInfo(This,bIsOutput,ulIndex,pdwFlags,pIDs,pcIDs,ppUnkCurrentObject) \
1005 (This)->lpVtbl -> GetInOutInfo(This,bIsOutput,ulIndex,pdwFlags,pIDs,pcIDs,ppUnkCurrentObject)
1007 #define IDXTransform_SetQuality(This,fQuality) \
1008 (This)->lpVtbl -> SetQuality(This,fQuality)
1010 #define IDXTransform_GetQuality(This,fQuality) \
1011 (This)->lpVtbl -> GetQuality(This,fQuality)
1013 #endif /* COBJMACROS */
1016 #endif /* C style interface */
1020 HRESULT STDMETHODCALLTYPE IDXTransform_Setup_Proxy(
1021 IDXTransform * This,
1022 /* [size_is][in] */ IUnknown *const *punkInputs,
1023 /* [in] */ ULONG ulNumInputs,
1024 /* [size_is][in] */ IUnknown *const *punkOutputs,
1025 /* [in] */ ULONG ulNumOutputs,
1026 /* [in] */ DWORD dwFlags);
1029 void __RPC_STUB IDXTransform_Setup_Stub(
1030 IRpcStubBuffer *This,
1031 IRpcChannelBuffer *_pRpcChannelBuffer,
1032 PRPC_MESSAGE _pRpcMessage,
1033 DWORD *_pdwStubPhase);
1036 HRESULT STDMETHODCALLTYPE IDXTransform_Execute_Proxy(
1037 IDXTransform * This,
1038 /* [in] */ const GUID *pRequestID,
1039 /* [in] */ const DXBNDS *pClipBnds,
1040 /* [in] */ const DXVEC *pPlacement);
1043 void __RPC_STUB IDXTransform_Execute_Stub(
1044 IRpcStubBuffer *This,
1045 IRpcChannelBuffer *_pRpcChannelBuffer,
1046 PRPC_MESSAGE _pRpcMessage,
1047 DWORD *_pdwStubPhase);
1050 HRESULT STDMETHODCALLTYPE IDXTransform_MapBoundsIn2Out_Proxy(
1051 IDXTransform * This,
1052 /* [in] */ const DXBNDS *pInBounds,
1053 /* [in] */ ULONG ulNumInBnds,
1054 /* [in] */ ULONG ulOutIndex,
1055 /* [out] */ DXBNDS *pOutBounds);
1058 void __RPC_STUB IDXTransform_MapBoundsIn2Out_Stub(
1059 IRpcStubBuffer *This,
1060 IRpcChannelBuffer *_pRpcChannelBuffer,
1061 PRPC_MESSAGE _pRpcMessage,
1062 DWORD *_pdwStubPhase);
1065 HRESULT STDMETHODCALLTYPE IDXTransform_MapBoundsOut2In_Proxy(
1066 IDXTransform * This,
1067 /* [in] */ ULONG ulOutIndex,
1068 /* [in] */ const DXBNDS *pOutBounds,
1069 /* [in] */ ULONG ulInIndex,
1070 /* [out] */ DXBNDS *pInBounds);
1073 void __RPC_STUB IDXTransform_MapBoundsOut2In_Stub(
1074 IRpcStubBuffer *This,
1075 IRpcChannelBuffer *_pRpcChannelBuffer,
1076 PRPC_MESSAGE _pRpcMessage,
1077 DWORD *_pdwStubPhase);
1080 HRESULT STDMETHODCALLTYPE IDXTransform_SetMiscFlags_Proxy(
1081 IDXTransform * This,
1082 /* [in] */ DWORD dwMiscFlags);
1085 void __RPC_STUB IDXTransform_SetMiscFlags_Stub(
1086 IRpcStubBuffer *This,
1087 IRpcChannelBuffer *_pRpcChannelBuffer,
1088 PRPC_MESSAGE _pRpcMessage,
1089 DWORD *_pdwStubPhase);
1092 HRESULT STDMETHODCALLTYPE IDXTransform_GetMiscFlags_Proxy(
1093 IDXTransform * This,
1094 /* [out] */ DWORD *pdwMiscFlags);
1097 void __RPC_STUB IDXTransform_GetMiscFlags_Stub(
1098 IRpcStubBuffer *This,
1099 IRpcChannelBuffer *_pRpcChannelBuffer,
1100 PRPC_MESSAGE _pRpcMessage,
1101 DWORD *_pdwStubPhase);
1104 HRESULT STDMETHODCALLTYPE IDXTransform_GetInOutInfo_Proxy(
1105 IDXTransform * This,
1106 /* [in] */ BOOL bIsOutput,
1107 /* [in] */ ULONG ulIndex,
1108 /* [out] */ DWORD *pdwFlags,
1109 /* [size_is][out] */ GUID *pIDs,
1110 /* [out][in] */ ULONG *pcIDs,
1111 /* [out] */ IUnknown **ppUnkCurrentObject);
1114 void __RPC_STUB IDXTransform_GetInOutInfo_Stub(
1115 IRpcStubBuffer *This,
1116 IRpcChannelBuffer *_pRpcChannelBuffer,
1117 PRPC_MESSAGE _pRpcMessage,
1118 DWORD *_pdwStubPhase);
1121 HRESULT STDMETHODCALLTYPE IDXTransform_SetQuality_Proxy(
1122 IDXTransform * This,
1123 /* [in] */ float fQuality);
1126 void __RPC_STUB IDXTransform_SetQuality_Stub(
1127 IRpcStubBuffer *This,
1128 IRpcChannelBuffer *_pRpcChannelBuffer,
1129 PRPC_MESSAGE _pRpcMessage,
1130 DWORD *_pdwStubPhase);
1133 HRESULT STDMETHODCALLTYPE IDXTransform_GetQuality_Proxy(
1134 IDXTransform * This,
1135 /* [out] */ float *fQuality);
1138 void __RPC_STUB IDXTransform_GetQuality_Stub(
1139 IRpcStubBuffer *This,
1140 IRpcChannelBuffer *_pRpcChannelBuffer,
1141 PRPC_MESSAGE _pRpcMessage,
1142 DWORD *_pdwStubPhase);
1146 #endif /* __IDXTransform_INTERFACE_DEFINED__ */
1149 #ifndef __IDXSurfacePick_INTERFACE_DEFINED__
1150 #define __IDXSurfacePick_INTERFACE_DEFINED__
1152 /* interface IDXSurfacePick */
1153 /* [local][unique][helpstring][uuid][object] */
1156 EXTERN_C const IID IID_IDXSurfacePick;
1158 #if defined(__cplusplus) && !defined(CINTERFACE)
1160 MIDL_INTERFACE("30A5FB79-E11F-11d1-9064-00C04FD9189D")
1161 IDXSurfacePick : public IUnknown
1163 public:
1164 virtual HRESULT STDMETHODCALLTYPE PointPick(
1165 /* [in] */ const DXVEC *pPoint,
1166 /* [out] */ ULONG *pulInputSurfaceIndex,
1167 /* [out] */ DXVEC *pInputPoint) = 0;
1171 #else /* C style interface */
1173 typedef struct IDXSurfacePickVtbl
1175 BEGIN_INTERFACE
1177 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
1178 IDXSurfacePick * This,
1179 /* [in] */ REFIID riid,
1180 /* [iid_is][out] */ void **ppvObject);
1182 ULONG ( STDMETHODCALLTYPE *AddRef )(
1183 IDXSurfacePick * This);
1185 ULONG ( STDMETHODCALLTYPE *Release )(
1186 IDXSurfacePick * This);
1188 HRESULT ( STDMETHODCALLTYPE *PointPick )(
1189 IDXSurfacePick * This,
1190 /* [in] */ const DXVEC *pPoint,
1191 /* [out] */ ULONG *pulInputSurfaceIndex,
1192 /* [out] */ DXVEC *pInputPoint);
1194 END_INTERFACE
1195 } IDXSurfacePickVtbl;
1197 interface IDXSurfacePick
1199 CONST_VTBL struct IDXSurfacePickVtbl *lpVtbl;
1204 #ifdef COBJMACROS
1207 #define IDXSurfacePick_QueryInterface(This,riid,ppvObject) \
1208 (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
1210 #define IDXSurfacePick_AddRef(This) \
1211 (This)->lpVtbl -> AddRef(This)
1213 #define IDXSurfacePick_Release(This) \
1214 (This)->lpVtbl -> Release(This)
1217 #define IDXSurfacePick_PointPick(This,pPoint,pulInputSurfaceIndex,pInputPoint) \
1218 (This)->lpVtbl -> PointPick(This,pPoint,pulInputSurfaceIndex,pInputPoint)
1220 #endif /* COBJMACROS */
1223 #endif /* C style interface */
1227 HRESULT STDMETHODCALLTYPE IDXSurfacePick_PointPick_Proxy(
1228 IDXSurfacePick * This,
1229 /* [in] */ const DXVEC *pPoint,
1230 /* [out] */ ULONG *pulInputSurfaceIndex,
1231 /* [out] */ DXVEC *pInputPoint);
1234 void __RPC_STUB IDXSurfacePick_PointPick_Stub(
1235 IRpcStubBuffer *This,
1236 IRpcChannelBuffer *_pRpcChannelBuffer,
1237 PRPC_MESSAGE _pRpcMessage,
1238 DWORD *_pdwStubPhase);
1242 #endif /* __IDXSurfacePick_INTERFACE_DEFINED__ */
1245 #ifndef __IDXTBindHost_INTERFACE_DEFINED__
1246 #define __IDXTBindHost_INTERFACE_DEFINED__
1248 /* interface IDXTBindHost */
1249 /* [local][unique][helpstring][uuid][object] */
1252 EXTERN_C const IID IID_IDXTBindHost;
1254 #if defined(__cplusplus) && !defined(CINTERFACE)
1256 MIDL_INTERFACE("D26BCE55-E9DC-11d1-9066-00C04FD9189D")
1257 IDXTBindHost : public IUnknown
1259 public:
1260 virtual HRESULT STDMETHODCALLTYPE SetBindHost(
1261 /* [in] */ IBindHost *pBindHost) = 0;
1265 #else /* C style interface */
1267 typedef struct IDXTBindHostVtbl
1269 BEGIN_INTERFACE
1271 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
1272 IDXTBindHost * This,
1273 /* [in] */ REFIID riid,
1274 /* [iid_is][out] */ void **ppvObject);
1276 ULONG ( STDMETHODCALLTYPE *AddRef )(
1277 IDXTBindHost * This);
1279 ULONG ( STDMETHODCALLTYPE *Release )(
1280 IDXTBindHost * This);
1282 HRESULT ( STDMETHODCALLTYPE *SetBindHost )(
1283 IDXTBindHost * This,
1284 /* [in] */ IBindHost *pBindHost);
1286 END_INTERFACE
1287 } IDXTBindHostVtbl;
1289 interface IDXTBindHost
1291 CONST_VTBL struct IDXTBindHostVtbl *lpVtbl;
1296 #ifdef COBJMACROS
1299 #define IDXTBindHost_QueryInterface(This,riid,ppvObject) \
1300 (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
1302 #define IDXTBindHost_AddRef(This) \
1303 (This)->lpVtbl -> AddRef(This)
1305 #define IDXTBindHost_Release(This) \
1306 (This)->lpVtbl -> Release(This)
1309 #define IDXTBindHost_SetBindHost(This,pBindHost) \
1310 (This)->lpVtbl -> SetBindHost(This,pBindHost)
1312 #endif /* COBJMACROS */
1315 #endif /* C style interface */
1319 HRESULT STDMETHODCALLTYPE IDXTBindHost_SetBindHost_Proxy(
1320 IDXTBindHost * This,
1321 /* [in] */ IBindHost *pBindHost);
1324 void __RPC_STUB IDXTBindHost_SetBindHost_Stub(
1325 IRpcStubBuffer *This,
1326 IRpcChannelBuffer *_pRpcChannelBuffer,
1327 PRPC_MESSAGE _pRpcMessage,
1328 DWORD *_pdwStubPhase);
1332 #endif /* __IDXTBindHost_INTERFACE_DEFINED__ */
1335 /* interface __MIDL_itf_dxtrans_0264 */
1336 /* [local] */
1338 typedef void __stdcall __stdcall DXTASKPROC(
1339 void *pTaskData,
1340 BOOL *pbContinueProcessing);
1342 typedef DXTASKPROC *PFNDXTASKPROC;
1344 typedef void __stdcall __stdcall DXAPCPROC(
1345 DWORD dwData);
1347 typedef DXAPCPROC *PFNDXAPCPROC;
1349 #ifdef __cplusplus
1350 typedef struct DXTMTASKINFO
1352 PFNDXTASKPROC pfnTaskProc; // Pointer to function to execute
1353 PVOID pTaskData; // Pointer to argument data
1354 PFNDXAPCPROC pfnCompletionAPC; // Pointer to completion APC proc
1355 DWORD dwCompletionData; // Pointer to APC proc data
1356 const GUID* pRequestID; // Used to identify groups of tasks
1357 } DXTMTASKINFO;
1358 #else
1359 typedef struct DXTMTASKINFO
1361 PVOID pfnTaskProc;
1362 PVOID pTaskData;
1363 PVOID pfnCompletionAPC;
1364 DWORD dwCompletionData;
1365 const GUID *pRequestID;
1366 } DXTMTASKINFO;
1368 #endif
1371 extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0264_v0_0_c_ifspec;
1372 extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0264_v0_0_s_ifspec;
1374 #ifndef __IDXTaskManager_INTERFACE_DEFINED__
1375 #define __IDXTaskManager_INTERFACE_DEFINED__
1377 /* interface IDXTaskManager */
1378 /* [local][unique][helpstring][uuid][object] */
1381 EXTERN_C const IID IID_IDXTaskManager;
1383 #if defined(__cplusplus) && !defined(CINTERFACE)
1385 MIDL_INTERFACE("254DBBC1-F922-11d0-883A-3C8B00C10000")
1386 IDXTaskManager : public IUnknown
1388 public:
1389 virtual HRESULT STDMETHODCALLTYPE QueryNumProcessors(
1390 /* [out] */ ULONG *pulNumProc) = 0;
1392 virtual HRESULT STDMETHODCALLTYPE SetThreadPoolSize(
1393 /* [in] */ ULONG ulNumThreads) = 0;
1395 virtual HRESULT STDMETHODCALLTYPE GetThreadPoolSize(
1396 /* [out] */ ULONG *pulNumThreads) = 0;
1398 virtual HRESULT STDMETHODCALLTYPE SetConcurrencyLimit(
1399 /* [in] */ ULONG ulNumThreads) = 0;
1401 virtual HRESULT STDMETHODCALLTYPE GetConcurrencyLimit(
1402 /* [out] */ ULONG *pulNumThreads) = 0;
1404 virtual HRESULT STDMETHODCALLTYPE ScheduleTasks(
1405 /* [in] */ DXTMTASKINFO TaskInfo[ ],
1406 /* [in] */ HANDLE Events[ ],
1407 /* [out] */ DWORD TaskIDs[ ],
1408 /* [in] */ ULONG ulNumTasks,
1409 /* [in] */ ULONG ulWaitPeriod) = 0;
1411 virtual HRESULT STDMETHODCALLTYPE TerminateTasks(
1412 /* [in] */ DWORD TaskIDs[ ],
1413 /* [in] */ ULONG ulCount,
1414 /* [in] */ ULONG ulTimeOut) = 0;
1416 virtual HRESULT STDMETHODCALLTYPE TerminateRequest(
1417 /* [in] */ REFIID RequestID,
1418 /* [in] */ ULONG ulTimeOut) = 0;
1422 #else /* C style interface */
1424 typedef struct IDXTaskManagerVtbl
1426 BEGIN_INTERFACE
1428 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
1429 IDXTaskManager * This,
1430 /* [in] */ REFIID riid,
1431 /* [iid_is][out] */ void **ppvObject);
1433 ULONG ( STDMETHODCALLTYPE *AddRef )(
1434 IDXTaskManager * This);
1436 ULONG ( STDMETHODCALLTYPE *Release )(
1437 IDXTaskManager * This);
1439 HRESULT ( STDMETHODCALLTYPE *QueryNumProcessors )(
1440 IDXTaskManager * This,
1441 /* [out] */ ULONG *pulNumProc);
1443 HRESULT ( STDMETHODCALLTYPE *SetThreadPoolSize )(
1444 IDXTaskManager * This,
1445 /* [in] */ ULONG ulNumThreads);
1447 HRESULT ( STDMETHODCALLTYPE *GetThreadPoolSize )(
1448 IDXTaskManager * This,
1449 /* [out] */ ULONG *pulNumThreads);
1451 HRESULT ( STDMETHODCALLTYPE *SetConcurrencyLimit )(
1452 IDXTaskManager * This,
1453 /* [in] */ ULONG ulNumThreads);
1455 HRESULT ( STDMETHODCALLTYPE *GetConcurrencyLimit )(
1456 IDXTaskManager * This,
1457 /* [out] */ ULONG *pulNumThreads);
1459 HRESULT ( STDMETHODCALLTYPE *ScheduleTasks )(
1460 IDXTaskManager * This,
1461 /* [in] */ DXTMTASKINFO TaskInfo[ ],
1462 /* [in] */ HANDLE Events[ ],
1463 /* [out] */ DWORD TaskIDs[ ],
1464 /* [in] */ ULONG ulNumTasks,
1465 /* [in] */ ULONG ulWaitPeriod);
1467 HRESULT ( STDMETHODCALLTYPE *TerminateTasks )(
1468 IDXTaskManager * This,
1469 /* [in] */ DWORD TaskIDs[ ],
1470 /* [in] */ ULONG ulCount,
1471 /* [in] */ ULONG ulTimeOut);
1473 HRESULT ( STDMETHODCALLTYPE *TerminateRequest )(
1474 IDXTaskManager * This,
1475 /* [in] */ REFIID RequestID,
1476 /* [in] */ ULONG ulTimeOut);
1478 END_INTERFACE
1479 } IDXTaskManagerVtbl;
1481 interface IDXTaskManager
1483 CONST_VTBL struct IDXTaskManagerVtbl *lpVtbl;
1488 #ifdef COBJMACROS
1491 #define IDXTaskManager_QueryInterface(This,riid,ppvObject) \
1492 (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
1494 #define IDXTaskManager_AddRef(This) \
1495 (This)->lpVtbl -> AddRef(This)
1497 #define IDXTaskManager_Release(This) \
1498 (This)->lpVtbl -> Release(This)
1501 #define IDXTaskManager_QueryNumProcessors(This,pulNumProc) \
1502 (This)->lpVtbl -> QueryNumProcessors(This,pulNumProc)
1504 #define IDXTaskManager_SetThreadPoolSize(This,ulNumThreads) \
1505 (This)->lpVtbl -> SetThreadPoolSize(This,ulNumThreads)
1507 #define IDXTaskManager_GetThreadPoolSize(This,pulNumThreads) \
1508 (This)->lpVtbl -> GetThreadPoolSize(This,pulNumThreads)
1510 #define IDXTaskManager_SetConcurrencyLimit(This,ulNumThreads) \
1511 (This)->lpVtbl -> SetConcurrencyLimit(This,ulNumThreads)
1513 #define IDXTaskManager_GetConcurrencyLimit(This,pulNumThreads) \
1514 (This)->lpVtbl -> GetConcurrencyLimit(This,pulNumThreads)
1516 #define IDXTaskManager_ScheduleTasks(This,TaskInfo,Events,TaskIDs,ulNumTasks,ulWaitPeriod) \
1517 (This)->lpVtbl -> ScheduleTasks(This,TaskInfo,Events,TaskIDs,ulNumTasks,ulWaitPeriod)
1519 #define IDXTaskManager_TerminateTasks(This,TaskIDs,ulCount,ulTimeOut) \
1520 (This)->lpVtbl -> TerminateTasks(This,TaskIDs,ulCount,ulTimeOut)
1522 #define IDXTaskManager_TerminateRequest(This,RequestID,ulTimeOut) \
1523 (This)->lpVtbl -> TerminateRequest(This,RequestID,ulTimeOut)
1525 #endif /* COBJMACROS */
1528 #endif /* C style interface */
1532 HRESULT STDMETHODCALLTYPE IDXTaskManager_QueryNumProcessors_Proxy(
1533 IDXTaskManager * This,
1534 /* [out] */ ULONG *pulNumProc);
1537 void __RPC_STUB IDXTaskManager_QueryNumProcessors_Stub(
1538 IRpcStubBuffer *This,
1539 IRpcChannelBuffer *_pRpcChannelBuffer,
1540 PRPC_MESSAGE _pRpcMessage,
1541 DWORD *_pdwStubPhase);
1544 HRESULT STDMETHODCALLTYPE IDXTaskManager_SetThreadPoolSize_Proxy(
1545 IDXTaskManager * This,
1546 /* [in] */ ULONG ulNumThreads);
1549 void __RPC_STUB IDXTaskManager_SetThreadPoolSize_Stub(
1550 IRpcStubBuffer *This,
1551 IRpcChannelBuffer *_pRpcChannelBuffer,
1552 PRPC_MESSAGE _pRpcMessage,
1553 DWORD *_pdwStubPhase);
1556 HRESULT STDMETHODCALLTYPE IDXTaskManager_GetThreadPoolSize_Proxy(
1557 IDXTaskManager * This,
1558 /* [out] */ ULONG *pulNumThreads);
1561 void __RPC_STUB IDXTaskManager_GetThreadPoolSize_Stub(
1562 IRpcStubBuffer *This,
1563 IRpcChannelBuffer *_pRpcChannelBuffer,
1564 PRPC_MESSAGE _pRpcMessage,
1565 DWORD *_pdwStubPhase);
1568 HRESULT STDMETHODCALLTYPE IDXTaskManager_SetConcurrencyLimit_Proxy(
1569 IDXTaskManager * This,
1570 /* [in] */ ULONG ulNumThreads);
1573 void __RPC_STUB IDXTaskManager_SetConcurrencyLimit_Stub(
1574 IRpcStubBuffer *This,
1575 IRpcChannelBuffer *_pRpcChannelBuffer,
1576 PRPC_MESSAGE _pRpcMessage,
1577 DWORD *_pdwStubPhase);
1580 HRESULT STDMETHODCALLTYPE IDXTaskManager_GetConcurrencyLimit_Proxy(
1581 IDXTaskManager * This,
1582 /* [out] */ ULONG *pulNumThreads);
1585 void __RPC_STUB IDXTaskManager_GetConcurrencyLimit_Stub(
1586 IRpcStubBuffer *This,
1587 IRpcChannelBuffer *_pRpcChannelBuffer,
1588 PRPC_MESSAGE _pRpcMessage,
1589 DWORD *_pdwStubPhase);
1592 HRESULT STDMETHODCALLTYPE IDXTaskManager_ScheduleTasks_Proxy(
1593 IDXTaskManager * This,
1594 /* [in] */ DXTMTASKINFO TaskInfo[ ],
1595 /* [in] */ HANDLE Events[ ],
1596 /* [out] */ DWORD TaskIDs[ ],
1597 /* [in] */ ULONG ulNumTasks,
1598 /* [in] */ ULONG ulWaitPeriod);
1601 void __RPC_STUB IDXTaskManager_ScheduleTasks_Stub(
1602 IRpcStubBuffer *This,
1603 IRpcChannelBuffer *_pRpcChannelBuffer,
1604 PRPC_MESSAGE _pRpcMessage,
1605 DWORD *_pdwStubPhase);
1608 HRESULT STDMETHODCALLTYPE IDXTaskManager_TerminateTasks_Proxy(
1609 IDXTaskManager * This,
1610 /* [in] */ DWORD TaskIDs[ ],
1611 /* [in] */ ULONG ulCount,
1612 /* [in] */ ULONG ulTimeOut);
1615 void __RPC_STUB IDXTaskManager_TerminateTasks_Stub(
1616 IRpcStubBuffer *This,
1617 IRpcChannelBuffer *_pRpcChannelBuffer,
1618 PRPC_MESSAGE _pRpcMessage,
1619 DWORD *_pdwStubPhase);
1622 HRESULT STDMETHODCALLTYPE IDXTaskManager_TerminateRequest_Proxy(
1623 IDXTaskManager * This,
1624 /* [in] */ REFIID RequestID,
1625 /* [in] */ ULONG ulTimeOut);
1628 void __RPC_STUB IDXTaskManager_TerminateRequest_Stub(
1629 IRpcStubBuffer *This,
1630 IRpcChannelBuffer *_pRpcChannelBuffer,
1631 PRPC_MESSAGE _pRpcMessage,
1632 DWORD *_pdwStubPhase);
1636 #endif /* __IDXTaskManager_INTERFACE_DEFINED__ */
1639 /* interface __MIDL_itf_dxtrans_0265 */
1640 /* [local] */
1642 #ifdef __cplusplus
1643 /////////////////////////////////////////////////////
1645 class DXBASESAMPLE;
1646 class DXSAMPLE;
1647 class DXPMSAMPLE;
1649 /////////////////////////////////////////////////////
1651 class DXBASESAMPLE
1653 public:
1654 BYTE Blue;
1655 BYTE Green;
1656 BYTE Red;
1657 BYTE Alpha;
1658 DXBASESAMPLE() {}
1659 DXBASESAMPLE(const BYTE alpha, const BYTE red, const BYTE green, const BYTE blue) :
1660 Alpha(alpha),
1661 Red(red),
1662 Green(green),
1663 Blue(blue) {}
1664 DXBASESAMPLE(const DWORD val) { *this = (*(DXBASESAMPLE *)&val); }
1665 operator DWORD () const {return *((DWORD *)this); }
1666 DWORD operator=(const DWORD val) { return *this = *((DXBASESAMPLE *)&val); }
1667 }; // DXBASESAMPLE
1669 /////////////////////////////////////////////////////
1671 class DXSAMPLE : public DXBASESAMPLE
1673 public:
1674 DXSAMPLE() {}
1675 DXSAMPLE(const BYTE alpha, const BYTE red, const BYTE green, const BYTE blue) :
1676 DXBASESAMPLE(alpha, red, green, blue) {}
1677 DXSAMPLE(const DWORD val) { *this = (*(DXSAMPLE *)&val); }
1678 operator DWORD () const {return *((DWORD *)this); }
1679 DWORD operator=(const DWORD val) { return *this = *((DXSAMPLE *)&val); }
1680 operator DXPMSAMPLE() const;
1681 }; // DXSAMPLE
1683 /////////////////////////////////////////////////////
1685 class DXPMSAMPLE : public DXBASESAMPLE
1687 public:
1688 DXPMSAMPLE() {}
1689 DXPMSAMPLE(const BYTE alpha, const BYTE red, const BYTE green, const BYTE blue) :
1690 DXBASESAMPLE(alpha, red, green, blue) {}
1691 DXPMSAMPLE(const DWORD val) { *this = (*(DXPMSAMPLE *)&val); }
1692 operator DWORD () const {return *((DWORD *)this); }
1693 DWORD operator=(const DWORD val) { return *this = *((DXPMSAMPLE *)&val); }
1694 operator DXSAMPLE() const;
1695 }; // DXPMSAMPLE
1698 // The following cast operators are to prevent a direct assignment of a DXSAMPLE to a DXPMSAMPLE
1700 inline DXSAMPLE::operator DXPMSAMPLE() const { return *((DXPMSAMPLE *)this); }
1701 inline DXPMSAMPLE::operator DXSAMPLE() const { return *((DXSAMPLE *)this); }
1702 #else // !__cplusplus
1703 typedef struct DXBASESAMPLE
1705 BYTE Blue;
1706 BYTE Green;
1707 BYTE Red;
1708 BYTE Alpha;
1709 } DXBASESAMPLE;
1711 typedef struct DXSAMPLE
1713 BYTE Blue;
1714 BYTE Green;
1715 BYTE Red;
1716 BYTE Alpha;
1717 } DXSAMPLE;
1719 typedef struct DXPMSAMPLE
1721 BYTE Blue;
1722 BYTE Green;
1723 BYTE Red;
1724 BYTE Alpha;
1725 } DXPMSAMPLE;
1727 #endif // !__cplusplus
1728 typedef
1729 enum DXRUNTYPE
1730 { DXRUNTYPE_CLEAR = 0,
1731 DXRUNTYPE_OPAQUE = 1,
1732 DXRUNTYPE_TRANS = 2,
1733 DXRUNTYPE_UNKNOWN = 3
1734 } DXRUNTYPE;
1736 #define DX_MAX_RUN_INFO_COUNT ( 128 )
1738 // Ignore the definition used by MIDL for TLB generation
1739 #if 0
1740 typedef struct DXRUNINFO
1742 ULONG Bitfields;
1743 } DXRUNINFO;
1745 #endif // 0
1746 typedef struct DXRUNINFO
1748 ULONG Type : 2; // Type
1749 ULONG Count : 30; // Number of samples in run
1750 } DXRUNINFO;
1751 typedef
1752 enum DXSFCREATE
1753 { DXSF_FORMAT_IS_CLSID = 1L << 0,
1754 DXSF_NO_LAZY_DDRAW_LOCK = 1L << 1
1755 } DXSFCREATE;
1757 typedef
1758 enum DXBLTOPTIONS
1759 { DXBOF_DO_OVER = 1L << 0,
1760 DXBOF_DITHER = 1L << 1
1761 } DXBLTOPTIONS;
1765 extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0265_v0_0_c_ifspec;
1766 extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0265_v0_0_s_ifspec;
1768 #ifndef __IDXSurfaceFactory_INTERFACE_DEFINED__
1769 #define __IDXSurfaceFactory_INTERFACE_DEFINED__
1771 /* interface IDXSurfaceFactory */
1772 /* [local][unique][helpstring][uuid][object] */
1775 EXTERN_C const IID IID_IDXSurfaceFactory;
1777 #if defined(__cplusplus) && !defined(CINTERFACE)
1779 MIDL_INTERFACE("144946F5-C4D4-11d1-81D1-0000F87557DB")
1780 IDXSurfaceFactory : public IUnknown
1782 public:
1783 virtual HRESULT STDMETHODCALLTYPE CreateSurface(
1784 /* [in] */ IUnknown *pDirectDraw,
1785 /* [in] */ const DDSURFACEDESC *pDDSurfaceDesc,
1786 /* [in] */ const GUID *pFormatID,
1787 /* [in] */ const DXBNDS *pBounds,
1788 /* [in] */ DWORD dwFlags,
1789 /* [in] */ IUnknown *punkOuter,
1790 /* [in] */ REFIID riid,
1791 /* [iid_is][out] */ void **ppDXSurface) = 0;
1793 virtual HRESULT STDMETHODCALLTYPE CreateFromDDSurface(
1794 /* [in] */ IUnknown *pDDrawSurface,
1795 /* [in] */ const GUID *pFormatID,
1796 /* [in] */ DWORD dwFlags,
1797 /* [in] */ IUnknown *punkOuter,
1798 /* [in] */ REFIID riid,
1799 /* [iid_is][out] */ void **ppDXSurface) = 0;
1801 virtual HRESULT STDMETHODCALLTYPE LoadImage(
1802 /* [in] */ const LPWSTR pszFileName,
1803 /* [in] */ IUnknown *pDirectDraw,
1804 /* [in] */ const DDSURFACEDESC *pDDSurfaceDesc,
1805 /* [in] */ const GUID *pFormatID,
1806 /* [in] */ REFIID riid,
1807 /* [iid_is][out] */ void **ppDXSurface) = 0;
1809 virtual HRESULT STDMETHODCALLTYPE LoadImageFromStream(
1810 /* [in] */ IStream *pStream,
1811 /* [in] */ IUnknown *pDirectDraw,
1812 /* [in] */ const DDSURFACEDESC *pDDSurfaceDesc,
1813 /* [in] */ const GUID *pFormatID,
1814 /* [in] */ REFIID riid,
1815 /* [iid_is][out] */ void **ppDXSurface) = 0;
1817 virtual HRESULT STDMETHODCALLTYPE CopySurfaceToNewFormat(
1818 /* [in] */ IDXSurface *pSrc,
1819 /* [in] */ IUnknown *pDirectDraw,
1820 /* [in] */ const DDSURFACEDESC *pDDSurfaceDesc,
1821 /* [in] */ const GUID *pDestFormatID,
1822 /* [out] */ IDXSurface **ppNewSurface) = 0;
1824 virtual HRESULT STDMETHODCALLTYPE CreateD3DRMTexture(
1825 /* [in] */ IDXSurface *pSrc,
1826 /* [in] */ IUnknown *pDirectDraw,
1827 /* [in] */ IUnknown *pD3DRM3,
1828 /* [in] */ REFIID riid,
1829 /* [iid_is][out] */ void **ppTexture3) = 0;
1831 virtual HRESULT STDMETHODCALLTYPE BitBlt(
1832 /* [in] */ IDXSurface *pDest,
1833 /* [in] */ const DXVEC *pPlacement,
1834 /* [in] */ IDXSurface *pSrc,
1835 /* [in] */ const DXBNDS *pClipBounds,
1836 /* [in] */ DWORD dwFlags) = 0;
1840 #else /* C style interface */
1842 typedef struct IDXSurfaceFactoryVtbl
1844 BEGIN_INTERFACE
1846 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
1847 IDXSurfaceFactory * This,
1848 /* [in] */ REFIID riid,
1849 /* [iid_is][out] */ void **ppvObject);
1851 ULONG ( STDMETHODCALLTYPE *AddRef )(
1852 IDXSurfaceFactory * This);
1854 ULONG ( STDMETHODCALLTYPE *Release )(
1855 IDXSurfaceFactory * This);
1857 HRESULT ( STDMETHODCALLTYPE *CreateSurface )(
1858 IDXSurfaceFactory * This,
1859 /* [in] */ IUnknown *pDirectDraw,
1860 /* [in] */ const DDSURFACEDESC *pDDSurfaceDesc,
1861 /* [in] */ const GUID *pFormatID,
1862 /* [in] */ const DXBNDS *pBounds,
1863 /* [in] */ DWORD dwFlags,
1864 /* [in] */ IUnknown *punkOuter,
1865 /* [in] */ REFIID riid,
1866 /* [iid_is][out] */ void **ppDXSurface);
1868 HRESULT ( STDMETHODCALLTYPE *CreateFromDDSurface )(
1869 IDXSurfaceFactory * This,
1870 /* [in] */ IUnknown *pDDrawSurface,
1871 /* [in] */ const GUID *pFormatID,
1872 /* [in] */ DWORD dwFlags,
1873 /* [in] */ IUnknown *punkOuter,
1874 /* [in] */ REFIID riid,
1875 /* [iid_is][out] */ void **ppDXSurface);
1877 HRESULT ( STDMETHODCALLTYPE *LoadImage )(
1878 IDXSurfaceFactory * This,
1879 /* [in] */ const LPWSTR pszFileName,
1880 /* [in] */ IUnknown *pDirectDraw,
1881 /* [in] */ const DDSURFACEDESC *pDDSurfaceDesc,
1882 /* [in] */ const GUID *pFormatID,
1883 /* [in] */ REFIID riid,
1884 /* [iid_is][out] */ void **ppDXSurface);
1886 HRESULT ( STDMETHODCALLTYPE *LoadImageFromStream )(
1887 IDXSurfaceFactory * This,
1888 /* [in] */ IStream *pStream,
1889 /* [in] */ IUnknown *pDirectDraw,
1890 /* [in] */ const DDSURFACEDESC *pDDSurfaceDesc,
1891 /* [in] */ const GUID *pFormatID,
1892 /* [in] */ REFIID riid,
1893 /* [iid_is][out] */ void **ppDXSurface);
1895 HRESULT ( STDMETHODCALLTYPE *CopySurfaceToNewFormat )(
1896 IDXSurfaceFactory * This,
1897 /* [in] */ IDXSurface *pSrc,
1898 /* [in] */ IUnknown *pDirectDraw,
1899 /* [in] */ const DDSURFACEDESC *pDDSurfaceDesc,
1900 /* [in] */ const GUID *pDestFormatID,
1901 /* [out] */ IDXSurface **ppNewSurface);
1903 HRESULT ( STDMETHODCALLTYPE *CreateD3DRMTexture )(
1904 IDXSurfaceFactory * This,
1905 /* [in] */ IDXSurface *pSrc,
1906 /* [in] */ IUnknown *pDirectDraw,
1907 /* [in] */ IUnknown *pD3DRM3,
1908 /* [in] */ REFIID riid,
1909 /* [iid_is][out] */ void **ppTexture3);
1911 HRESULT ( STDMETHODCALLTYPE *BitBlt )(
1912 IDXSurfaceFactory * This,
1913 /* [in] */ IDXSurface *pDest,
1914 /* [in] */ const DXVEC *pPlacement,
1915 /* [in] */ IDXSurface *pSrc,
1916 /* [in] */ const DXBNDS *pClipBounds,
1917 /* [in] */ DWORD dwFlags);
1919 END_INTERFACE
1920 } IDXSurfaceFactoryVtbl;
1922 interface IDXSurfaceFactory
1924 CONST_VTBL struct IDXSurfaceFactoryVtbl *lpVtbl;
1929 #ifdef COBJMACROS
1932 #define IDXSurfaceFactory_QueryInterface(This,riid,ppvObject) \
1933 (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
1935 #define IDXSurfaceFactory_AddRef(This) \
1936 (This)->lpVtbl -> AddRef(This)
1938 #define IDXSurfaceFactory_Release(This) \
1939 (This)->lpVtbl -> Release(This)
1942 #define IDXSurfaceFactory_CreateSurface(This,pDirectDraw,pDDSurfaceDesc,pFormatID,pBounds,dwFlags,punkOuter,riid,ppDXSurface) \
1943 (This)->lpVtbl -> CreateSurface(This,pDirectDraw,pDDSurfaceDesc,pFormatID,pBounds,dwFlags,punkOuter,riid,ppDXSurface)
1945 #define IDXSurfaceFactory_CreateFromDDSurface(This,pDDrawSurface,pFormatID,dwFlags,punkOuter,riid,ppDXSurface) \
1946 (This)->lpVtbl -> CreateFromDDSurface(This,pDDrawSurface,pFormatID,dwFlags,punkOuter,riid,ppDXSurface)
1948 #define IDXSurfaceFactory_LoadImage(This,pszFileName,pDirectDraw,pDDSurfaceDesc,pFormatID,riid,ppDXSurface) \
1949 (This)->lpVtbl -> LoadImage(This,pszFileName,pDirectDraw,pDDSurfaceDesc,pFormatID,riid,ppDXSurface)
1951 #define IDXSurfaceFactory_LoadImageFromStream(This,pStream,pDirectDraw,pDDSurfaceDesc,pFormatID,riid,ppDXSurface) \
1952 (This)->lpVtbl -> LoadImageFromStream(This,pStream,pDirectDraw,pDDSurfaceDesc,pFormatID,riid,ppDXSurface)
1954 #define IDXSurfaceFactory_CopySurfaceToNewFormat(This,pSrc,pDirectDraw,pDDSurfaceDesc,pDestFormatID,ppNewSurface) \
1955 (This)->lpVtbl -> CopySurfaceToNewFormat(This,pSrc,pDirectDraw,pDDSurfaceDesc,pDestFormatID,ppNewSurface)
1957 #define IDXSurfaceFactory_CreateD3DRMTexture(This,pSrc,pDirectDraw,pD3DRM3,riid,ppTexture3) \
1958 (This)->lpVtbl -> CreateD3DRMTexture(This,pSrc,pDirectDraw,pD3DRM3,riid,ppTexture3)
1960 #define IDXSurfaceFactory_BitBlt(This,pDest,pPlacement,pSrc,pClipBounds,dwFlags) \
1961 (This)->lpVtbl -> BitBlt(This,pDest,pPlacement,pSrc,pClipBounds,dwFlags)
1963 #endif /* COBJMACROS */
1966 #endif /* C style interface */
1970 HRESULT STDMETHODCALLTYPE IDXSurfaceFactory_CreateSurface_Proxy(
1971 IDXSurfaceFactory * This,
1972 /* [in] */ IUnknown *pDirectDraw,
1973 /* [in] */ const DDSURFACEDESC *pDDSurfaceDesc,
1974 /* [in] */ const GUID *pFormatID,
1975 /* [in] */ const DXBNDS *pBounds,
1976 /* [in] */ DWORD dwFlags,
1977 /* [in] */ IUnknown *punkOuter,
1978 /* [in] */ REFIID riid,
1979 /* [iid_is][out] */ void **ppDXSurface);
1982 void __RPC_STUB IDXSurfaceFactory_CreateSurface_Stub(
1983 IRpcStubBuffer *This,
1984 IRpcChannelBuffer *_pRpcChannelBuffer,
1985 PRPC_MESSAGE _pRpcMessage,
1986 DWORD *_pdwStubPhase);
1989 HRESULT STDMETHODCALLTYPE IDXSurfaceFactory_CreateFromDDSurface_Proxy(
1990 IDXSurfaceFactory * This,
1991 /* [in] */ IUnknown *pDDrawSurface,
1992 /* [in] */ const GUID *pFormatID,
1993 /* [in] */ DWORD dwFlags,
1994 /* [in] */ IUnknown *punkOuter,
1995 /* [in] */ REFIID riid,
1996 /* [iid_is][out] */ void **ppDXSurface);
1999 void __RPC_STUB IDXSurfaceFactory_CreateFromDDSurface_Stub(
2000 IRpcStubBuffer *This,
2001 IRpcChannelBuffer *_pRpcChannelBuffer,
2002 PRPC_MESSAGE _pRpcMessage,
2003 DWORD *_pdwStubPhase);
2006 HRESULT STDMETHODCALLTYPE IDXSurfaceFactory_LoadImage_Proxy(
2007 IDXSurfaceFactory * This,
2008 /* [in] */ const LPWSTR pszFileName,
2009 /* [in] */ IUnknown *pDirectDraw,
2010 /* [in] */ const DDSURFACEDESC *pDDSurfaceDesc,
2011 /* [in] */ const GUID *pFormatID,
2012 /* [in] */ REFIID riid,
2013 /* [iid_is][out] */ void **ppDXSurface);
2016 void __RPC_STUB IDXSurfaceFactory_LoadImage_Stub(
2017 IRpcStubBuffer *This,
2018 IRpcChannelBuffer *_pRpcChannelBuffer,
2019 PRPC_MESSAGE _pRpcMessage,
2020 DWORD *_pdwStubPhase);
2023 HRESULT STDMETHODCALLTYPE IDXSurfaceFactory_LoadImageFromStream_Proxy(
2024 IDXSurfaceFactory * This,
2025 /* [in] */ IStream *pStream,
2026 /* [in] */ IUnknown *pDirectDraw,
2027 /* [in] */ const DDSURFACEDESC *pDDSurfaceDesc,
2028 /* [in] */ const GUID *pFormatID,
2029 /* [in] */ REFIID riid,
2030 /* [iid_is][out] */ void **ppDXSurface);
2033 void __RPC_STUB IDXSurfaceFactory_LoadImageFromStream_Stub(
2034 IRpcStubBuffer *This,
2035 IRpcChannelBuffer *_pRpcChannelBuffer,
2036 PRPC_MESSAGE _pRpcMessage,
2037 DWORD *_pdwStubPhase);
2040 HRESULT STDMETHODCALLTYPE IDXSurfaceFactory_CopySurfaceToNewFormat_Proxy(
2041 IDXSurfaceFactory * This,
2042 /* [in] */ IDXSurface *pSrc,
2043 /* [in] */ IUnknown *pDirectDraw,
2044 /* [in] */ const DDSURFACEDESC *pDDSurfaceDesc,
2045 /* [in] */ const GUID *pDestFormatID,
2046 /* [out] */ IDXSurface **ppNewSurface);
2049 void __RPC_STUB IDXSurfaceFactory_CopySurfaceToNewFormat_Stub(
2050 IRpcStubBuffer *This,
2051 IRpcChannelBuffer *_pRpcChannelBuffer,
2052 PRPC_MESSAGE _pRpcMessage,
2053 DWORD *_pdwStubPhase);
2056 HRESULT STDMETHODCALLTYPE IDXSurfaceFactory_CreateD3DRMTexture_Proxy(
2057 IDXSurfaceFactory * This,
2058 /* [in] */ IDXSurface *pSrc,
2059 /* [in] */ IUnknown *pDirectDraw,
2060 /* [in] */ IUnknown *pD3DRM3,
2061 /* [in] */ REFIID riid,
2062 /* [iid_is][out] */ void **ppTexture3);
2065 void __RPC_STUB IDXSurfaceFactory_CreateD3DRMTexture_Stub(
2066 IRpcStubBuffer *This,
2067 IRpcChannelBuffer *_pRpcChannelBuffer,
2068 PRPC_MESSAGE _pRpcMessage,
2069 DWORD *_pdwStubPhase);
2072 HRESULT STDMETHODCALLTYPE IDXSurfaceFactory_BitBlt_Proxy(
2073 IDXSurfaceFactory * This,
2074 /* [in] */ IDXSurface *pDest,
2075 /* [in] */ const DXVEC *pPlacement,
2076 /* [in] */ IDXSurface *pSrc,
2077 /* [in] */ const DXBNDS *pClipBounds,
2078 /* [in] */ DWORD dwFlags);
2081 void __RPC_STUB IDXSurfaceFactory_BitBlt_Stub(
2082 IRpcStubBuffer *This,
2083 IRpcChannelBuffer *_pRpcChannelBuffer,
2084 PRPC_MESSAGE _pRpcMessage,
2085 DWORD *_pdwStubPhase);
2089 #endif /* __IDXSurfaceFactory_INTERFACE_DEFINED__ */
2092 /* interface __MIDL_itf_dxtrans_0266 */
2093 /* [local] */
2095 typedef
2096 enum DXSURFMODCOMPOP
2097 { DXSURFMOD_COMP_OVER = 0,
2098 DXSURFMOD_COMP_ALPHA_MASK = 1,
2099 DXSURFMOD_COMP_MAX_VALID = 1
2100 } DXSURFMODCOMPOP;
2104 extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0266_v0_0_c_ifspec;
2105 extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0266_v0_0_s_ifspec;
2107 #ifndef __IDXSurfaceModifier_INTERFACE_DEFINED__
2108 #define __IDXSurfaceModifier_INTERFACE_DEFINED__
2110 /* interface IDXSurfaceModifier */
2111 /* [local][unique][helpstring][uuid][object] */
2114 EXTERN_C const IID IID_IDXSurfaceModifier;
2116 #if defined(__cplusplus) && !defined(CINTERFACE)
2118 MIDL_INTERFACE("9EA3B637-C37D-11d1-905E-00C04FD9189D")
2119 IDXSurfaceModifier : public IUnknown
2121 public:
2122 virtual HRESULT STDMETHODCALLTYPE SetFillColor(
2123 /* [in] */ DXSAMPLE Color) = 0;
2125 virtual HRESULT STDMETHODCALLTYPE GetFillColor(
2126 /* [out] */ DXSAMPLE *pColor) = 0;
2128 virtual HRESULT STDMETHODCALLTYPE SetBounds(
2129 /* [in] */ const DXBNDS *pBounds) = 0;
2131 virtual HRESULT STDMETHODCALLTYPE SetBackground(
2132 /* [in] */ IDXSurface *pSurface) = 0;
2134 virtual HRESULT STDMETHODCALLTYPE GetBackground(
2135 /* [out] */ IDXSurface **ppSurface) = 0;
2137 virtual HRESULT STDMETHODCALLTYPE SetCompositeOperation(
2138 /* [in] */ DXSURFMODCOMPOP CompOp) = 0;
2140 virtual HRESULT STDMETHODCALLTYPE GetCompositeOperation(
2141 /* [out] */ DXSURFMODCOMPOP *pCompOp) = 0;
2143 virtual HRESULT STDMETHODCALLTYPE SetForeground(
2144 /* [in] */ IDXSurface *pSurface,
2145 /* [in] */ BOOL bTile,
2146 /* [in] */ const POINT *pOrigin) = 0;
2148 virtual HRESULT STDMETHODCALLTYPE GetForeground(
2149 /* [out] */ IDXSurface **ppSurface,
2150 /* [out] */ BOOL *pbTile,
2151 /* [out] */ POINT *pOrigin) = 0;
2153 virtual HRESULT STDMETHODCALLTYPE SetOpacity(
2154 /* [in] */ float Opacity) = 0;
2156 virtual HRESULT STDMETHODCALLTYPE GetOpacity(
2157 /* [out] */ float *pOpacity) = 0;
2159 virtual HRESULT STDMETHODCALLTYPE SetLookup(
2160 /* [in] */ IDXLookupTable *pLookupTable) = 0;
2162 virtual HRESULT STDMETHODCALLTYPE GetLookup(
2163 /* [out] */ IDXLookupTable **ppLookupTable) = 0;
2167 #else /* C style interface */
2169 typedef struct IDXSurfaceModifierVtbl
2171 BEGIN_INTERFACE
2173 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
2174 IDXSurfaceModifier * This,
2175 /* [in] */ REFIID riid,
2176 /* [iid_is][out] */ void **ppvObject);
2178 ULONG ( STDMETHODCALLTYPE *AddRef )(
2179 IDXSurfaceModifier * This);
2181 ULONG ( STDMETHODCALLTYPE *Release )(
2182 IDXSurfaceModifier * This);
2184 HRESULT ( STDMETHODCALLTYPE *SetFillColor )(
2185 IDXSurfaceModifier * This,
2186 /* [in] */ DXSAMPLE Color);
2188 HRESULT ( STDMETHODCALLTYPE *GetFillColor )(
2189 IDXSurfaceModifier * This,
2190 /* [out] */ DXSAMPLE *pColor);
2192 HRESULT ( STDMETHODCALLTYPE *SetBounds )(
2193 IDXSurfaceModifier * This,
2194 /* [in] */ const DXBNDS *pBounds);
2196 HRESULT ( STDMETHODCALLTYPE *SetBackground )(
2197 IDXSurfaceModifier * This,
2198 /* [in] */ IDXSurface *pSurface);
2200 HRESULT ( STDMETHODCALLTYPE *GetBackground )(
2201 IDXSurfaceModifier * This,
2202 /* [out] */ IDXSurface **ppSurface);
2204 HRESULT ( STDMETHODCALLTYPE *SetCompositeOperation )(
2205 IDXSurfaceModifier * This,
2206 /* [in] */ DXSURFMODCOMPOP CompOp);
2208 HRESULT ( STDMETHODCALLTYPE *GetCompositeOperation )(
2209 IDXSurfaceModifier * This,
2210 /* [out] */ DXSURFMODCOMPOP *pCompOp);
2212 HRESULT ( STDMETHODCALLTYPE *SetForeground )(
2213 IDXSurfaceModifier * This,
2214 /* [in] */ IDXSurface *pSurface,
2215 /* [in] */ BOOL bTile,
2216 /* [in] */ const POINT *pOrigin);
2218 HRESULT ( STDMETHODCALLTYPE *GetForeground )(
2219 IDXSurfaceModifier * This,
2220 /* [out] */ IDXSurface **ppSurface,
2221 /* [out] */ BOOL *pbTile,
2222 /* [out] */ POINT *pOrigin);
2224 HRESULT ( STDMETHODCALLTYPE *SetOpacity )(
2225 IDXSurfaceModifier * This,
2226 /* [in] */ float Opacity);
2228 HRESULT ( STDMETHODCALLTYPE *GetOpacity )(
2229 IDXSurfaceModifier * This,
2230 /* [out] */ float *pOpacity);
2232 HRESULT ( STDMETHODCALLTYPE *SetLookup )(
2233 IDXSurfaceModifier * This,
2234 /* [in] */ IDXLookupTable *pLookupTable);
2236 HRESULT ( STDMETHODCALLTYPE *GetLookup )(
2237 IDXSurfaceModifier * This,
2238 /* [out] */ IDXLookupTable **ppLookupTable);
2240 END_INTERFACE
2241 } IDXSurfaceModifierVtbl;
2243 interface IDXSurfaceModifier
2245 CONST_VTBL struct IDXSurfaceModifierVtbl *lpVtbl;
2250 #ifdef COBJMACROS
2253 #define IDXSurfaceModifier_QueryInterface(This,riid,ppvObject) \
2254 (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
2256 #define IDXSurfaceModifier_AddRef(This) \
2257 (This)->lpVtbl -> AddRef(This)
2259 #define IDXSurfaceModifier_Release(This) \
2260 (This)->lpVtbl -> Release(This)
2263 #define IDXSurfaceModifier_SetFillColor(This,Color) \
2264 (This)->lpVtbl -> SetFillColor(This,Color)
2266 #define IDXSurfaceModifier_GetFillColor(This,pColor) \
2267 (This)->lpVtbl -> GetFillColor(This,pColor)
2269 #define IDXSurfaceModifier_SetBounds(This,pBounds) \
2270 (This)->lpVtbl -> SetBounds(This,pBounds)
2272 #define IDXSurfaceModifier_SetBackground(This,pSurface) \
2273 (This)->lpVtbl -> SetBackground(This,pSurface)
2275 #define IDXSurfaceModifier_GetBackground(This,ppSurface) \
2276 (This)->lpVtbl -> GetBackground(This,ppSurface)
2278 #define IDXSurfaceModifier_SetCompositeOperation(This,CompOp) \
2279 (This)->lpVtbl -> SetCompositeOperation(This,CompOp)
2281 #define IDXSurfaceModifier_GetCompositeOperation(This,pCompOp) \
2282 (This)->lpVtbl -> GetCompositeOperation(This,pCompOp)
2284 #define IDXSurfaceModifier_SetForeground(This,pSurface,bTile,pOrigin) \
2285 (This)->lpVtbl -> SetForeground(This,pSurface,bTile,pOrigin)
2287 #define IDXSurfaceModifier_GetForeground(This,ppSurface,pbTile,pOrigin) \
2288 (This)->lpVtbl -> GetForeground(This,ppSurface,pbTile,pOrigin)
2290 #define IDXSurfaceModifier_SetOpacity(This,Opacity) \
2291 (This)->lpVtbl -> SetOpacity(This,Opacity)
2293 #define IDXSurfaceModifier_GetOpacity(This,pOpacity) \
2294 (This)->lpVtbl -> GetOpacity(This,pOpacity)
2296 #define IDXSurfaceModifier_SetLookup(This,pLookupTable) \
2297 (This)->lpVtbl -> SetLookup(This,pLookupTable)
2299 #define IDXSurfaceModifier_GetLookup(This,ppLookupTable) \
2300 (This)->lpVtbl -> GetLookup(This,ppLookupTable)
2302 #endif /* COBJMACROS */
2305 #endif /* C style interface */
2309 HRESULT STDMETHODCALLTYPE IDXSurfaceModifier_SetFillColor_Proxy(
2310 IDXSurfaceModifier * This,
2311 /* [in] */ DXSAMPLE Color);
2314 void __RPC_STUB IDXSurfaceModifier_SetFillColor_Stub(
2315 IRpcStubBuffer *This,
2316 IRpcChannelBuffer *_pRpcChannelBuffer,
2317 PRPC_MESSAGE _pRpcMessage,
2318 DWORD *_pdwStubPhase);
2321 HRESULT STDMETHODCALLTYPE IDXSurfaceModifier_GetFillColor_Proxy(
2322 IDXSurfaceModifier * This,
2323 /* [out] */ DXSAMPLE *pColor);
2326 void __RPC_STUB IDXSurfaceModifier_GetFillColor_Stub(
2327 IRpcStubBuffer *This,
2328 IRpcChannelBuffer *_pRpcChannelBuffer,
2329 PRPC_MESSAGE _pRpcMessage,
2330 DWORD *_pdwStubPhase);
2333 HRESULT STDMETHODCALLTYPE IDXSurfaceModifier_SetBounds_Proxy(
2334 IDXSurfaceModifier * This,
2335 /* [in] */ const DXBNDS *pBounds);
2338 void __RPC_STUB IDXSurfaceModifier_SetBounds_Stub(
2339 IRpcStubBuffer *This,
2340 IRpcChannelBuffer *_pRpcChannelBuffer,
2341 PRPC_MESSAGE _pRpcMessage,
2342 DWORD *_pdwStubPhase);
2345 HRESULT STDMETHODCALLTYPE IDXSurfaceModifier_SetBackground_Proxy(
2346 IDXSurfaceModifier * This,
2347 /* [in] */ IDXSurface *pSurface);
2350 void __RPC_STUB IDXSurfaceModifier_SetBackground_Stub(
2351 IRpcStubBuffer *This,
2352 IRpcChannelBuffer *_pRpcChannelBuffer,
2353 PRPC_MESSAGE _pRpcMessage,
2354 DWORD *_pdwStubPhase);
2357 HRESULT STDMETHODCALLTYPE IDXSurfaceModifier_GetBackground_Proxy(
2358 IDXSurfaceModifier * This,
2359 /* [out] */ IDXSurface **ppSurface);
2362 void __RPC_STUB IDXSurfaceModifier_GetBackground_Stub(
2363 IRpcStubBuffer *This,
2364 IRpcChannelBuffer *_pRpcChannelBuffer,
2365 PRPC_MESSAGE _pRpcMessage,
2366 DWORD *_pdwStubPhase);
2369 HRESULT STDMETHODCALLTYPE IDXSurfaceModifier_SetCompositeOperation_Proxy(
2370 IDXSurfaceModifier * This,
2371 /* [in] */ DXSURFMODCOMPOP CompOp);
2374 void __RPC_STUB IDXSurfaceModifier_SetCompositeOperation_Stub(
2375 IRpcStubBuffer *This,
2376 IRpcChannelBuffer *_pRpcChannelBuffer,
2377 PRPC_MESSAGE _pRpcMessage,
2378 DWORD *_pdwStubPhase);
2381 HRESULT STDMETHODCALLTYPE IDXSurfaceModifier_GetCompositeOperation_Proxy(
2382 IDXSurfaceModifier * This,
2383 /* [out] */ DXSURFMODCOMPOP *pCompOp);
2386 void __RPC_STUB IDXSurfaceModifier_GetCompositeOperation_Stub(
2387 IRpcStubBuffer *This,
2388 IRpcChannelBuffer *_pRpcChannelBuffer,
2389 PRPC_MESSAGE _pRpcMessage,
2390 DWORD *_pdwStubPhase);
2393 HRESULT STDMETHODCALLTYPE IDXSurfaceModifier_SetForeground_Proxy(
2394 IDXSurfaceModifier * This,
2395 /* [in] */ IDXSurface *pSurface,
2396 /* [in] */ BOOL bTile,
2397 /* [in] */ const POINT *pOrigin);
2400 void __RPC_STUB IDXSurfaceModifier_SetForeground_Stub(
2401 IRpcStubBuffer *This,
2402 IRpcChannelBuffer *_pRpcChannelBuffer,
2403 PRPC_MESSAGE _pRpcMessage,
2404 DWORD *_pdwStubPhase);
2407 HRESULT STDMETHODCALLTYPE IDXSurfaceModifier_GetForeground_Proxy(
2408 IDXSurfaceModifier * This,
2409 /* [out] */ IDXSurface **ppSurface,
2410 /* [out] */ BOOL *pbTile,
2411 /* [out] */ POINT *pOrigin);
2414 void __RPC_STUB IDXSurfaceModifier_GetForeground_Stub(
2415 IRpcStubBuffer *This,
2416 IRpcChannelBuffer *_pRpcChannelBuffer,
2417 PRPC_MESSAGE _pRpcMessage,
2418 DWORD *_pdwStubPhase);
2421 HRESULT STDMETHODCALLTYPE IDXSurfaceModifier_SetOpacity_Proxy(
2422 IDXSurfaceModifier * This,
2423 /* [in] */ float Opacity);
2426 void __RPC_STUB IDXSurfaceModifier_SetOpacity_Stub(
2427 IRpcStubBuffer *This,
2428 IRpcChannelBuffer *_pRpcChannelBuffer,
2429 PRPC_MESSAGE _pRpcMessage,
2430 DWORD *_pdwStubPhase);
2433 HRESULT STDMETHODCALLTYPE IDXSurfaceModifier_GetOpacity_Proxy(
2434 IDXSurfaceModifier * This,
2435 /* [out] */ float *pOpacity);
2438 void __RPC_STUB IDXSurfaceModifier_GetOpacity_Stub(
2439 IRpcStubBuffer *This,
2440 IRpcChannelBuffer *_pRpcChannelBuffer,
2441 PRPC_MESSAGE _pRpcMessage,
2442 DWORD *_pdwStubPhase);
2445 HRESULT STDMETHODCALLTYPE IDXSurfaceModifier_SetLookup_Proxy(
2446 IDXSurfaceModifier * This,
2447 /* [in] */ IDXLookupTable *pLookupTable);
2450 void __RPC_STUB IDXSurfaceModifier_SetLookup_Stub(
2451 IRpcStubBuffer *This,
2452 IRpcChannelBuffer *_pRpcChannelBuffer,
2453 PRPC_MESSAGE _pRpcMessage,
2454 DWORD *_pdwStubPhase);
2457 HRESULT STDMETHODCALLTYPE IDXSurfaceModifier_GetLookup_Proxy(
2458 IDXSurfaceModifier * This,
2459 /* [out] */ IDXLookupTable **ppLookupTable);
2462 void __RPC_STUB IDXSurfaceModifier_GetLookup_Stub(
2463 IRpcStubBuffer *This,
2464 IRpcChannelBuffer *_pRpcChannelBuffer,
2465 PRPC_MESSAGE _pRpcMessage,
2466 DWORD *_pdwStubPhase);
2470 #endif /* __IDXSurfaceModifier_INTERFACE_DEFINED__ */
2473 /* interface __MIDL_itf_dxtrans_0267 */
2474 /* [local] */
2476 typedef
2477 enum DXSAMPLEFORMATENUM
2478 { DXPF_FLAGSMASK = 0xffff0000,
2479 DXPF_NONPREMULT = 0x10000,
2480 DXPF_TRANSPARENCY = 0x20000,
2481 DXPF_TRANSLUCENCY = 0x40000,
2482 DXPF_2BITERROR = 0x200000,
2483 DXPF_3BITERROR = 0x300000,
2484 DXPF_4BITERROR = 0x400000,
2485 DXPF_5BITERROR = 0x500000,
2486 DXPF_ERRORMASK = 0x700000,
2487 DXPF_NONSTANDARD = 0,
2488 DXPF_PMARGB32 = 1 | DXPF_TRANSPARENCY | DXPF_TRANSLUCENCY,
2489 DXPF_ARGB32 = 2 | DXPF_NONPREMULT | DXPF_TRANSPARENCY | DXPF_TRANSLUCENCY,
2490 DXPF_ARGB4444 = 3 | DXPF_NONPREMULT | DXPF_TRANSPARENCY | DXPF_TRANSLUCENCY | DXPF_4BITERROR,
2491 DXPF_A8 = 4 | DXPF_TRANSPARENCY | DXPF_TRANSLUCENCY,
2492 DXPF_RGB32 = 5,
2493 DXPF_RGB24 = 6,
2494 DXPF_RGB565 = 7 | DXPF_3BITERROR,
2495 DXPF_RGB555 = 8 | DXPF_3BITERROR,
2496 DXPF_RGB8 = 9 | DXPF_5BITERROR,
2497 DXPF_ARGB1555 = 10 | DXPF_TRANSPARENCY | DXPF_3BITERROR,
2498 DXPF_RGB32_CK = DXPF_RGB32 | DXPF_TRANSPARENCY,
2499 DXPF_RGB24_CK = DXPF_RGB24 | DXPF_TRANSPARENCY,
2500 DXPF_RGB555_CK = DXPF_RGB555 | DXPF_TRANSPARENCY,
2501 DXPF_RGB565_CK = DXPF_RGB565 | DXPF_TRANSPARENCY,
2502 DXPF_RGB8_CK = DXPF_RGB8 | DXPF_TRANSPARENCY
2503 } DXSAMPLEFORMATENUM;
2505 typedef
2506 enum DXLOCKSURF
2507 { DXLOCKF_READ = 0,
2508 DXLOCKF_READWRITE = 1 << 0,
2509 DXLOCKF_EXISTINGINFOONLY = 1 << 1,
2510 DXLOCKF_WANTRUNINFO = 1 << 2,
2511 DXLOCKF_NONPREMULT = 1 << 16,
2512 DXLOCKF_VALIDFLAGS = DXLOCKF_READWRITE | DXLOCKF_EXISTINGINFOONLY | DXLOCKF_WANTRUNINFO | DXLOCKF_NONPREMULT
2513 } DXLOCKSURF;
2515 typedef
2516 enum DXSURFSTATUS
2517 { DXSURF_TRANSIENT = 1 << 0,
2518 DXSURF_READONLY = 1 << 1,
2519 DXSURF_VALIDFLAGS = DXSURF_TRANSIENT | DXSURF_READONLY
2520 } DXSURFSTATUS;
2524 extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0267_v0_0_c_ifspec;
2525 extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0267_v0_0_s_ifspec;
2527 #ifndef __IDXSurface_INTERFACE_DEFINED__
2528 #define __IDXSurface_INTERFACE_DEFINED__
2530 /* interface IDXSurface */
2531 /* [local][unique][helpstring][uuid][object] */
2534 EXTERN_C const IID IID_IDXSurface;
2536 #if defined(__cplusplus) && !defined(CINTERFACE)
2538 MIDL_INTERFACE("B39FD73F-E139-11d1-9065-00C04FD9189D")
2539 IDXSurface : public IDXBaseObject
2541 public:
2542 virtual HRESULT STDMETHODCALLTYPE GetPixelFormat(
2543 /* [out] */ GUID *pFormatID,
2544 /* [out] */ DXSAMPLEFORMATENUM *pSampleFormatEnum) = 0;
2546 virtual HRESULT STDMETHODCALLTYPE GetBounds(
2547 /* [out] */ DXBNDS *pBounds) = 0;
2549 virtual HRESULT STDMETHODCALLTYPE GetStatusFlags(
2550 /* [out] */ DWORD *pdwStatusFlags) = 0;
2552 virtual HRESULT STDMETHODCALLTYPE SetStatusFlags(
2553 /* [in] */ DWORD dwStatusFlags) = 0;
2555 virtual HRESULT STDMETHODCALLTYPE LockSurface(
2556 /* [in] */ const DXBNDS *pBounds,
2557 /* [in] */ ULONG ulTimeOut,
2558 /* [in] */ DWORD dwFlags,
2559 /* [in] */ REFIID riid,
2560 /* [iid_is][out] */ void **ppPointer,
2561 /* [out] */ ULONG *pulGenerationId) = 0;
2563 virtual HRESULT STDMETHODCALLTYPE GetDirectDrawSurface(
2564 /* [in] */ REFIID riid,
2565 /* [iid_is][out] */ void **ppSurface) = 0;
2567 virtual HRESULT STDMETHODCALLTYPE GetColorKey(
2568 DXSAMPLE *pColorKey) = 0;
2570 virtual HRESULT STDMETHODCALLTYPE SetColorKey(
2571 DXSAMPLE ColorKey) = 0;
2573 virtual HRESULT STDMETHODCALLTYPE LockSurfaceDC(
2574 /* [in] */ const DXBNDS *pBounds,
2575 /* [in] */ ULONG ulTimeOut,
2576 /* [in] */ DWORD dwFlags,
2577 /* [out] */ IDXDCLock **ppDCLock) = 0;
2579 virtual HRESULT STDMETHODCALLTYPE SetAppData(
2580 DWORD_PTR dwAppData) = 0;
2582 virtual HRESULT STDMETHODCALLTYPE GetAppData(
2583 DWORD_PTR *pdwAppData) = 0;
2587 #else /* C style interface */
2589 typedef struct IDXSurfaceVtbl
2591 BEGIN_INTERFACE
2593 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
2594 IDXSurface * This,
2595 /* [in] */ REFIID riid,
2596 /* [iid_is][out] */ void **ppvObject);
2598 ULONG ( STDMETHODCALLTYPE *AddRef )(
2599 IDXSurface * This);
2601 ULONG ( STDMETHODCALLTYPE *Release )(
2602 IDXSurface * This);
2604 HRESULT ( STDMETHODCALLTYPE *GetGenerationId )(
2605 IDXSurface * This,
2606 /* [out] */ ULONG *pID);
2608 HRESULT ( STDMETHODCALLTYPE *IncrementGenerationId )(
2609 IDXSurface * This,
2610 /* [in] */ BOOL bRefresh);
2612 HRESULT ( STDMETHODCALLTYPE *GetObjectSize )(
2613 IDXSurface * This,
2614 /* [out] */ ULONG *pcbSize);
2616 HRESULT ( STDMETHODCALLTYPE *GetPixelFormat )(
2617 IDXSurface * This,
2618 /* [out] */ GUID *pFormatID,
2619 /* [out] */ DXSAMPLEFORMATENUM *pSampleFormatEnum);
2621 HRESULT ( STDMETHODCALLTYPE *GetBounds )(
2622 IDXSurface * This,
2623 /* [out] */ DXBNDS *pBounds);
2625 HRESULT ( STDMETHODCALLTYPE *GetStatusFlags )(
2626 IDXSurface * This,
2627 /* [out] */ DWORD *pdwStatusFlags);
2629 HRESULT ( STDMETHODCALLTYPE *SetStatusFlags )(
2630 IDXSurface * This,
2631 /* [in] */ DWORD dwStatusFlags);
2633 HRESULT ( STDMETHODCALLTYPE *LockSurface )(
2634 IDXSurface * This,
2635 /* [in] */ const DXBNDS *pBounds,
2636 /* [in] */ ULONG ulTimeOut,
2637 /* [in] */ DWORD dwFlags,
2638 /* [in] */ REFIID riid,
2639 /* [iid_is][out] */ void **ppPointer,
2640 /* [out] */ ULONG *pulGenerationId);
2642 HRESULT ( STDMETHODCALLTYPE *GetDirectDrawSurface )(
2643 IDXSurface * This,
2644 /* [in] */ REFIID riid,
2645 /* [iid_is][out] */ void **ppSurface);
2647 HRESULT ( STDMETHODCALLTYPE *GetColorKey )(
2648 IDXSurface * This,
2649 DXSAMPLE *pColorKey);
2651 HRESULT ( STDMETHODCALLTYPE *SetColorKey )(
2652 IDXSurface * This,
2653 DXSAMPLE ColorKey);
2655 HRESULT ( STDMETHODCALLTYPE *LockSurfaceDC )(
2656 IDXSurface * This,
2657 /* [in] */ const DXBNDS *pBounds,
2658 /* [in] */ ULONG ulTimeOut,
2659 /* [in] */ DWORD dwFlags,
2660 /* [out] */ IDXDCLock **ppDCLock);
2662 HRESULT ( STDMETHODCALLTYPE *SetAppData )(
2663 IDXSurface * This,
2664 DWORD_PTR dwAppData);
2666 HRESULT ( STDMETHODCALLTYPE *GetAppData )(
2667 IDXSurface * This,
2668 DWORD_PTR *pdwAppData);
2670 END_INTERFACE
2671 } IDXSurfaceVtbl;
2673 interface IDXSurface
2675 CONST_VTBL struct IDXSurfaceVtbl *lpVtbl;
2680 #ifdef COBJMACROS
2683 #define IDXSurface_QueryInterface(This,riid,ppvObject) \
2684 (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
2686 #define IDXSurface_AddRef(This) \
2687 (This)->lpVtbl -> AddRef(This)
2689 #define IDXSurface_Release(This) \
2690 (This)->lpVtbl -> Release(This)
2693 #define IDXSurface_GetGenerationId(This,pID) \
2694 (This)->lpVtbl -> GetGenerationId(This,pID)
2696 #define IDXSurface_IncrementGenerationId(This,bRefresh) \
2697 (This)->lpVtbl -> IncrementGenerationId(This,bRefresh)
2699 #define IDXSurface_GetObjectSize(This,pcbSize) \
2700 (This)->lpVtbl -> GetObjectSize(This,pcbSize)
2703 #define IDXSurface_GetPixelFormat(This,pFormatID,pSampleFormatEnum) \
2704 (This)->lpVtbl -> GetPixelFormat(This,pFormatID,pSampleFormatEnum)
2706 #define IDXSurface_GetBounds(This,pBounds) \
2707 (This)->lpVtbl -> GetBounds(This,pBounds)
2709 #define IDXSurface_GetStatusFlags(This,pdwStatusFlags) \
2710 (This)->lpVtbl -> GetStatusFlags(This,pdwStatusFlags)
2712 #define IDXSurface_SetStatusFlags(This,dwStatusFlags) \
2713 (This)->lpVtbl -> SetStatusFlags(This,dwStatusFlags)
2715 #define IDXSurface_LockSurface(This,pBounds,ulTimeOut,dwFlags,riid,ppPointer,pulGenerationId) \
2716 (This)->lpVtbl -> LockSurface(This,pBounds,ulTimeOut,dwFlags,riid,ppPointer,pulGenerationId)
2718 #define IDXSurface_GetDirectDrawSurface(This,riid,ppSurface) \
2719 (This)->lpVtbl -> GetDirectDrawSurface(This,riid,ppSurface)
2721 #define IDXSurface_GetColorKey(This,pColorKey) \
2722 (This)->lpVtbl -> GetColorKey(This,pColorKey)
2724 #define IDXSurface_SetColorKey(This,ColorKey) \
2725 (This)->lpVtbl -> SetColorKey(This,ColorKey)
2727 #define IDXSurface_LockSurfaceDC(This,pBounds,ulTimeOut,dwFlags,ppDCLock) \
2728 (This)->lpVtbl -> LockSurfaceDC(This,pBounds,ulTimeOut,dwFlags,ppDCLock)
2730 #define IDXSurface_SetAppData(This,dwAppData) \
2731 (This)->lpVtbl -> SetAppData(This,dwAppData)
2733 #define IDXSurface_GetAppData(This,pdwAppData) \
2734 (This)->lpVtbl -> GetAppData(This,pdwAppData)
2736 #endif /* COBJMACROS */
2739 #endif /* C style interface */
2743 HRESULT STDMETHODCALLTYPE IDXSurface_GetPixelFormat_Proxy(
2744 IDXSurface * This,
2745 /* [out] */ GUID *pFormatID,
2746 /* [out] */ DXSAMPLEFORMATENUM *pSampleFormatEnum);
2749 void __RPC_STUB IDXSurface_GetPixelFormat_Stub(
2750 IRpcStubBuffer *This,
2751 IRpcChannelBuffer *_pRpcChannelBuffer,
2752 PRPC_MESSAGE _pRpcMessage,
2753 DWORD *_pdwStubPhase);
2756 HRESULT STDMETHODCALLTYPE IDXSurface_GetBounds_Proxy(
2757 IDXSurface * This,
2758 /* [out] */ DXBNDS *pBounds);
2761 void __RPC_STUB IDXSurface_GetBounds_Stub(
2762 IRpcStubBuffer *This,
2763 IRpcChannelBuffer *_pRpcChannelBuffer,
2764 PRPC_MESSAGE _pRpcMessage,
2765 DWORD *_pdwStubPhase);
2768 HRESULT STDMETHODCALLTYPE IDXSurface_GetStatusFlags_Proxy(
2769 IDXSurface * This,
2770 /* [out] */ DWORD *pdwStatusFlags);
2773 void __RPC_STUB IDXSurface_GetStatusFlags_Stub(
2774 IRpcStubBuffer *This,
2775 IRpcChannelBuffer *_pRpcChannelBuffer,
2776 PRPC_MESSAGE _pRpcMessage,
2777 DWORD *_pdwStubPhase);
2780 HRESULT STDMETHODCALLTYPE IDXSurface_SetStatusFlags_Proxy(
2781 IDXSurface * This,
2782 /* [in] */ DWORD dwStatusFlags);
2785 void __RPC_STUB IDXSurface_SetStatusFlags_Stub(
2786 IRpcStubBuffer *This,
2787 IRpcChannelBuffer *_pRpcChannelBuffer,
2788 PRPC_MESSAGE _pRpcMessage,
2789 DWORD *_pdwStubPhase);
2792 HRESULT STDMETHODCALLTYPE IDXSurface_LockSurface_Proxy(
2793 IDXSurface * This,
2794 /* [in] */ const DXBNDS *pBounds,
2795 /* [in] */ ULONG ulTimeOut,
2796 /* [in] */ DWORD dwFlags,
2797 /* [in] */ REFIID riid,
2798 /* [iid_is][out] */ void **ppPointer,
2799 /* [out] */ ULONG *pulGenerationId);
2802 void __RPC_STUB IDXSurface_LockSurface_Stub(
2803 IRpcStubBuffer *This,
2804 IRpcChannelBuffer *_pRpcChannelBuffer,
2805 PRPC_MESSAGE _pRpcMessage,
2806 DWORD *_pdwStubPhase);
2809 HRESULT STDMETHODCALLTYPE IDXSurface_GetDirectDrawSurface_Proxy(
2810 IDXSurface * This,
2811 /* [in] */ REFIID riid,
2812 /* [iid_is][out] */ void **ppSurface);
2815 void __RPC_STUB IDXSurface_GetDirectDrawSurface_Stub(
2816 IRpcStubBuffer *This,
2817 IRpcChannelBuffer *_pRpcChannelBuffer,
2818 PRPC_MESSAGE _pRpcMessage,
2819 DWORD *_pdwStubPhase);
2822 HRESULT STDMETHODCALLTYPE IDXSurface_GetColorKey_Proxy(
2823 IDXSurface * This,
2824 DXSAMPLE *pColorKey);
2827 void __RPC_STUB IDXSurface_GetColorKey_Stub(
2828 IRpcStubBuffer *This,
2829 IRpcChannelBuffer *_pRpcChannelBuffer,
2830 PRPC_MESSAGE _pRpcMessage,
2831 DWORD *_pdwStubPhase);
2834 HRESULT STDMETHODCALLTYPE IDXSurface_SetColorKey_Proxy(
2835 IDXSurface * This,
2836 DXSAMPLE ColorKey);
2839 void __RPC_STUB IDXSurface_SetColorKey_Stub(
2840 IRpcStubBuffer *This,
2841 IRpcChannelBuffer *_pRpcChannelBuffer,
2842 PRPC_MESSAGE _pRpcMessage,
2843 DWORD *_pdwStubPhase);
2846 HRESULT STDMETHODCALLTYPE IDXSurface_LockSurfaceDC_Proxy(
2847 IDXSurface * This,
2848 /* [in] */ const DXBNDS *pBounds,
2849 /* [in] */ ULONG ulTimeOut,
2850 /* [in] */ DWORD dwFlags,
2851 /* [out] */ IDXDCLock **ppDCLock);
2854 void __RPC_STUB IDXSurface_LockSurfaceDC_Stub(
2855 IRpcStubBuffer *This,
2856 IRpcChannelBuffer *_pRpcChannelBuffer,
2857 PRPC_MESSAGE _pRpcMessage,
2858 DWORD *_pdwStubPhase);
2861 HRESULT STDMETHODCALLTYPE IDXSurface_SetAppData_Proxy(
2862 IDXSurface * This,
2863 DWORD_PTR dwAppData);
2866 void __RPC_STUB IDXSurface_SetAppData_Stub(
2867 IRpcStubBuffer *This,
2868 IRpcChannelBuffer *_pRpcChannelBuffer,
2869 PRPC_MESSAGE _pRpcMessage,
2870 DWORD *_pdwStubPhase);
2873 HRESULT STDMETHODCALLTYPE IDXSurface_GetAppData_Proxy(
2874 IDXSurface * This,
2875 DWORD_PTR *pdwAppData);
2878 void __RPC_STUB IDXSurface_GetAppData_Stub(
2879 IRpcStubBuffer *This,
2880 IRpcChannelBuffer *_pRpcChannelBuffer,
2881 PRPC_MESSAGE _pRpcMessage,
2882 DWORD *_pdwStubPhase);
2886 #endif /* __IDXSurface_INTERFACE_DEFINED__ */
2889 #ifndef __IDXSurfaceInit_INTERFACE_DEFINED__
2890 #define __IDXSurfaceInit_INTERFACE_DEFINED__
2892 /* interface IDXSurfaceInit */
2893 /* [local][unique][helpstring][uuid][object] */
2896 EXTERN_C const IID IID_IDXSurfaceInit;
2898 #if defined(__cplusplus) && !defined(CINTERFACE)
2900 MIDL_INTERFACE("9EA3B639-C37D-11d1-905E-00C04FD9189D")
2901 IDXSurfaceInit : public IUnknown
2903 public:
2904 virtual HRESULT STDMETHODCALLTYPE InitSurface(
2905 /* [in] */ IUnknown *pDirectDraw,
2906 /* [in] */ const DDSURFACEDESC *pDDSurfaceDesc,
2907 /* [in] */ const GUID *pFormatID,
2908 /* [in] */ const DXBNDS *pBounds,
2909 /* [in] */ DWORD dwFlags) = 0;
2913 #else /* C style interface */
2915 typedef struct IDXSurfaceInitVtbl
2917 BEGIN_INTERFACE
2919 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
2920 IDXSurfaceInit * This,
2921 /* [in] */ REFIID riid,
2922 /* [iid_is][out] */ void **ppvObject);
2924 ULONG ( STDMETHODCALLTYPE *AddRef )(
2925 IDXSurfaceInit * This);
2927 ULONG ( STDMETHODCALLTYPE *Release )(
2928 IDXSurfaceInit * This);
2930 HRESULT ( STDMETHODCALLTYPE *InitSurface )(
2931 IDXSurfaceInit * This,
2932 /* [in] */ IUnknown *pDirectDraw,
2933 /* [in] */ const DDSURFACEDESC *pDDSurfaceDesc,
2934 /* [in] */ const GUID *pFormatID,
2935 /* [in] */ const DXBNDS *pBounds,
2936 /* [in] */ DWORD dwFlags);
2938 END_INTERFACE
2939 } IDXSurfaceInitVtbl;
2941 interface IDXSurfaceInit
2943 CONST_VTBL struct IDXSurfaceInitVtbl *lpVtbl;
2948 #ifdef COBJMACROS
2951 #define IDXSurfaceInit_QueryInterface(This,riid,ppvObject) \
2952 (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
2954 #define IDXSurfaceInit_AddRef(This) \
2955 (This)->lpVtbl -> AddRef(This)
2957 #define IDXSurfaceInit_Release(This) \
2958 (This)->lpVtbl -> Release(This)
2961 #define IDXSurfaceInit_InitSurface(This,pDirectDraw,pDDSurfaceDesc,pFormatID,pBounds,dwFlags) \
2962 (This)->lpVtbl -> InitSurface(This,pDirectDraw,pDDSurfaceDesc,pFormatID,pBounds,dwFlags)
2964 #endif /* COBJMACROS */
2967 #endif /* C style interface */
2971 HRESULT STDMETHODCALLTYPE IDXSurfaceInit_InitSurface_Proxy(
2972 IDXSurfaceInit * This,
2973 /* [in] */ IUnknown *pDirectDraw,
2974 /* [in] */ const DDSURFACEDESC *pDDSurfaceDesc,
2975 /* [in] */ const GUID *pFormatID,
2976 /* [in] */ const DXBNDS *pBounds,
2977 /* [in] */ DWORD dwFlags);
2980 void __RPC_STUB IDXSurfaceInit_InitSurface_Stub(
2981 IRpcStubBuffer *This,
2982 IRpcChannelBuffer *_pRpcChannelBuffer,
2983 PRPC_MESSAGE _pRpcMessage,
2984 DWORD *_pdwStubPhase);
2988 #endif /* __IDXSurfaceInit_INTERFACE_DEFINED__ */
2991 #ifndef __IDXARGBSurfaceInit_INTERFACE_DEFINED__
2992 #define __IDXARGBSurfaceInit_INTERFACE_DEFINED__
2994 /* interface IDXARGBSurfaceInit */
2995 /* [local][unique][helpstring][uuid][object] */
2998 EXTERN_C const IID IID_IDXARGBSurfaceInit;
3000 #if defined(__cplusplus) && !defined(CINTERFACE)
3002 MIDL_INTERFACE("9EA3B63A-C37D-11d1-905E-00C04FD9189D")
3003 IDXARGBSurfaceInit : public IDXSurfaceInit
3005 public:
3006 virtual HRESULT STDMETHODCALLTYPE InitFromDDSurface(
3007 /* [in] */ IUnknown *pDDrawSurface,
3008 /* [in] */ const GUID *pFormatID,
3009 /* [in] */ DWORD dwFlags) = 0;
3011 virtual HRESULT STDMETHODCALLTYPE InitFromRawSurface(
3012 /* [in] */ IDXRawSurface *pRawSurface) = 0;
3016 #else /* C style interface */
3018 typedef struct IDXARGBSurfaceInitVtbl
3020 BEGIN_INTERFACE
3022 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
3023 IDXARGBSurfaceInit * This,
3024 /* [in] */ REFIID riid,
3025 /* [iid_is][out] */ void **ppvObject);
3027 ULONG ( STDMETHODCALLTYPE *AddRef )(
3028 IDXARGBSurfaceInit * This);
3030 ULONG ( STDMETHODCALLTYPE *Release )(
3031 IDXARGBSurfaceInit * This);
3033 HRESULT ( STDMETHODCALLTYPE *InitSurface )(
3034 IDXARGBSurfaceInit * This,
3035 /* [in] */ IUnknown *pDirectDraw,
3036 /* [in] */ const DDSURFACEDESC *pDDSurfaceDesc,
3037 /* [in] */ const GUID *pFormatID,
3038 /* [in] */ const DXBNDS *pBounds,
3039 /* [in] */ DWORD dwFlags);
3041 HRESULT ( STDMETHODCALLTYPE *InitFromDDSurface )(
3042 IDXARGBSurfaceInit * This,
3043 /* [in] */ IUnknown *pDDrawSurface,
3044 /* [in] */ const GUID *pFormatID,
3045 /* [in] */ DWORD dwFlags);
3047 HRESULT ( STDMETHODCALLTYPE *InitFromRawSurface )(
3048 IDXARGBSurfaceInit * This,
3049 /* [in] */ IDXRawSurface *pRawSurface);
3051 END_INTERFACE
3052 } IDXARGBSurfaceInitVtbl;
3054 interface IDXARGBSurfaceInit
3056 CONST_VTBL struct IDXARGBSurfaceInitVtbl *lpVtbl;
3061 #ifdef COBJMACROS
3064 #define IDXARGBSurfaceInit_QueryInterface(This,riid,ppvObject) \
3065 (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
3067 #define IDXARGBSurfaceInit_AddRef(This) \
3068 (This)->lpVtbl -> AddRef(This)
3070 #define IDXARGBSurfaceInit_Release(This) \
3071 (This)->lpVtbl -> Release(This)
3074 #define IDXARGBSurfaceInit_InitSurface(This,pDirectDraw,pDDSurfaceDesc,pFormatID,pBounds,dwFlags) \
3075 (This)->lpVtbl -> InitSurface(This,pDirectDraw,pDDSurfaceDesc,pFormatID,pBounds,dwFlags)
3078 #define IDXARGBSurfaceInit_InitFromDDSurface(This,pDDrawSurface,pFormatID,dwFlags) \
3079 (This)->lpVtbl -> InitFromDDSurface(This,pDDrawSurface,pFormatID,dwFlags)
3081 #define IDXARGBSurfaceInit_InitFromRawSurface(This,pRawSurface) \
3082 (This)->lpVtbl -> InitFromRawSurface(This,pRawSurface)
3084 #endif /* COBJMACROS */
3087 #endif /* C style interface */
3091 HRESULT STDMETHODCALLTYPE IDXARGBSurfaceInit_InitFromDDSurface_Proxy(
3092 IDXARGBSurfaceInit * This,
3093 /* [in] */ IUnknown *pDDrawSurface,
3094 /* [in] */ const GUID *pFormatID,
3095 /* [in] */ DWORD dwFlags);
3098 void __RPC_STUB IDXARGBSurfaceInit_InitFromDDSurface_Stub(
3099 IRpcStubBuffer *This,
3100 IRpcChannelBuffer *_pRpcChannelBuffer,
3101 PRPC_MESSAGE _pRpcMessage,
3102 DWORD *_pdwStubPhase);
3105 HRESULT STDMETHODCALLTYPE IDXARGBSurfaceInit_InitFromRawSurface_Proxy(
3106 IDXARGBSurfaceInit * This,
3107 /* [in] */ IDXRawSurface *pRawSurface);
3110 void __RPC_STUB IDXARGBSurfaceInit_InitFromRawSurface_Stub(
3111 IRpcStubBuffer *This,
3112 IRpcChannelBuffer *_pRpcChannelBuffer,
3113 PRPC_MESSAGE _pRpcMessage,
3114 DWORD *_pdwStubPhase);
3118 #endif /* __IDXARGBSurfaceInit_INTERFACE_DEFINED__ */
3121 /* interface __MIDL_itf_dxtrans_0270 */
3122 /* [local] */
3124 typedef struct tagDXNATIVETYPEINFO
3126 BYTE *pCurrentData;
3127 BYTE *pFirstByte;
3128 long lPitch;
3129 DWORD dwColorKey;
3130 } DXNATIVETYPEINFO;
3132 typedef struct tagDXPACKEDRECTDESC
3134 DXBASESAMPLE *pSamples;
3135 BOOL bPremult;
3136 RECT rect;
3137 long lRowPadding;
3138 } DXPACKEDRECTDESC;
3140 typedef struct tagDXOVERSAMPLEDESC
3142 POINT p;
3143 DXPMSAMPLE Color;
3144 } DXOVERSAMPLEDESC;
3148 extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0270_v0_0_c_ifspec;
3149 extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0270_v0_0_s_ifspec;
3151 #ifndef __IDXARGBReadPtr_INTERFACE_DEFINED__
3152 #define __IDXARGBReadPtr_INTERFACE_DEFINED__
3154 /* interface IDXARGBReadPtr */
3155 /* [local][unique][helpstring][uuid][object] */
3158 EXTERN_C const IID IID_IDXARGBReadPtr;
3160 #if defined(__cplusplus) && !defined(CINTERFACE)
3162 MIDL_INTERFACE("EAAAC2D6-C290-11d1-905D-00C04FD9189D")
3163 IDXARGBReadPtr : public IUnknown
3165 public:
3166 virtual HRESULT STDMETHODCALLTYPE GetSurface(
3167 /* [in] */ REFIID riid,
3168 /* [iid_is][out] */ void **ppSurface) = 0;
3170 virtual DXSAMPLEFORMATENUM STDMETHODCALLTYPE GetNativeType(
3171 /* [out] */ DXNATIVETYPEINFO *pInfo) = 0;
3173 virtual void STDMETHODCALLTYPE Move(
3174 /* [in] */ long cSamples) = 0;
3176 virtual void STDMETHODCALLTYPE MoveToRow(
3177 /* [in] */ ULONG y) = 0;
3179 virtual void STDMETHODCALLTYPE MoveToXY(
3180 /* [in] */ ULONG x,
3181 /* [in] */ ULONG y) = 0;
3183 virtual ULONG STDMETHODCALLTYPE MoveAndGetRunInfo(
3184 /* [in] */ ULONG Row,
3185 /* [out] */ const DXRUNINFO **ppInfo) = 0;
3187 virtual DXSAMPLE *STDMETHODCALLTYPE Unpack(
3188 /* [in] */ DXSAMPLE *pSamples,
3189 /* [in] */ ULONG cSamples,
3190 /* [in] */ BOOL bMove) = 0;
3192 virtual DXPMSAMPLE *STDMETHODCALLTYPE UnpackPremult(
3193 /* [in] */ DXPMSAMPLE *pSamples,
3194 /* [in] */ ULONG cSamples,
3195 /* [in] */ BOOL bMove) = 0;
3197 virtual void STDMETHODCALLTYPE UnpackRect(
3198 /* [in] */ const DXPACKEDRECTDESC *pRectDesc) = 0;
3202 #else /* C style interface */
3204 typedef struct IDXARGBReadPtrVtbl
3206 BEGIN_INTERFACE
3208 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
3209 IDXARGBReadPtr * This,
3210 /* [in] */ REFIID riid,
3211 /* [iid_is][out] */ void **ppvObject);
3213 ULONG ( STDMETHODCALLTYPE *AddRef )(
3214 IDXARGBReadPtr * This);
3216 ULONG ( STDMETHODCALLTYPE *Release )(
3217 IDXARGBReadPtr * This);
3219 HRESULT ( STDMETHODCALLTYPE *GetSurface )(
3220 IDXARGBReadPtr * This,
3221 /* [in] */ REFIID riid,
3222 /* [iid_is][out] */ void **ppSurface);
3224 DXSAMPLEFORMATENUM ( STDMETHODCALLTYPE *GetNativeType )(
3225 IDXARGBReadPtr * This,
3226 /* [out] */ DXNATIVETYPEINFO *pInfo);
3228 void ( STDMETHODCALLTYPE *Move )(
3229 IDXARGBReadPtr * This,
3230 /* [in] */ long cSamples);
3232 void ( STDMETHODCALLTYPE *MoveToRow )(
3233 IDXARGBReadPtr * This,
3234 /* [in] */ ULONG y);
3236 void ( STDMETHODCALLTYPE *MoveToXY )(
3237 IDXARGBReadPtr * This,
3238 /* [in] */ ULONG x,
3239 /* [in] */ ULONG y);
3241 ULONG ( STDMETHODCALLTYPE *MoveAndGetRunInfo )(
3242 IDXARGBReadPtr * This,
3243 /* [in] */ ULONG Row,
3244 /* [out] */ const DXRUNINFO **ppInfo);
3246 DXSAMPLE *( STDMETHODCALLTYPE *Unpack )(
3247 IDXARGBReadPtr * This,
3248 /* [in] */ DXSAMPLE *pSamples,
3249 /* [in] */ ULONG cSamples,
3250 /* [in] */ BOOL bMove);
3252 DXPMSAMPLE *( STDMETHODCALLTYPE *UnpackPremult )(
3253 IDXARGBReadPtr * This,
3254 /* [in] */ DXPMSAMPLE *pSamples,
3255 /* [in] */ ULONG cSamples,
3256 /* [in] */ BOOL bMove);
3258 void ( STDMETHODCALLTYPE *UnpackRect )(
3259 IDXARGBReadPtr * This,
3260 /* [in] */ const DXPACKEDRECTDESC *pRectDesc);
3262 END_INTERFACE
3263 } IDXARGBReadPtrVtbl;
3265 interface IDXARGBReadPtr
3267 CONST_VTBL struct IDXARGBReadPtrVtbl *lpVtbl;
3272 #ifdef COBJMACROS
3275 #define IDXARGBReadPtr_QueryInterface(This,riid,ppvObject) \
3276 (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
3278 #define IDXARGBReadPtr_AddRef(This) \
3279 (This)->lpVtbl -> AddRef(This)
3281 #define IDXARGBReadPtr_Release(This) \
3282 (This)->lpVtbl -> Release(This)
3285 #define IDXARGBReadPtr_GetSurface(This,riid,ppSurface) \
3286 (This)->lpVtbl -> GetSurface(This,riid,ppSurface)
3288 #define IDXARGBReadPtr_GetNativeType(This,pInfo) \
3289 (This)->lpVtbl -> GetNativeType(This,pInfo)
3291 #define IDXARGBReadPtr_Move(This,cSamples) \
3292 (This)->lpVtbl -> Move(This,cSamples)
3294 #define IDXARGBReadPtr_MoveToRow(This,y) \
3295 (This)->lpVtbl -> MoveToRow(This,y)
3297 #define IDXARGBReadPtr_MoveToXY(This,x,y) \
3298 (This)->lpVtbl -> MoveToXY(This,x,y)
3300 #define IDXARGBReadPtr_MoveAndGetRunInfo(This,Row,ppInfo) \
3301 (This)->lpVtbl -> MoveAndGetRunInfo(This,Row,ppInfo)
3303 #define IDXARGBReadPtr_Unpack(This,pSamples,cSamples,bMove) \
3304 (This)->lpVtbl -> Unpack(This,pSamples,cSamples,bMove)
3306 #define IDXARGBReadPtr_UnpackPremult(This,pSamples,cSamples,bMove) \
3307 (This)->lpVtbl -> UnpackPremult(This,pSamples,cSamples,bMove)
3309 #define IDXARGBReadPtr_UnpackRect(This,pRectDesc) \
3310 (This)->lpVtbl -> UnpackRect(This,pRectDesc)
3312 #endif /* COBJMACROS */
3315 #endif /* C style interface */
3319 HRESULT STDMETHODCALLTYPE IDXARGBReadPtr_GetSurface_Proxy(
3320 IDXARGBReadPtr * This,
3321 /* [in] */ REFIID riid,
3322 /* [iid_is][out] */ void **ppSurface);
3325 void __RPC_STUB IDXARGBReadPtr_GetSurface_Stub(
3326 IRpcStubBuffer *This,
3327 IRpcChannelBuffer *_pRpcChannelBuffer,
3328 PRPC_MESSAGE _pRpcMessage,
3329 DWORD *_pdwStubPhase);
3332 DXSAMPLEFORMATENUM STDMETHODCALLTYPE IDXARGBReadPtr_GetNativeType_Proxy(
3333 IDXARGBReadPtr * This,
3334 /* [out] */ DXNATIVETYPEINFO *pInfo);
3337 void __RPC_STUB IDXARGBReadPtr_GetNativeType_Stub(
3338 IRpcStubBuffer *This,
3339 IRpcChannelBuffer *_pRpcChannelBuffer,
3340 PRPC_MESSAGE _pRpcMessage,
3341 DWORD *_pdwStubPhase);
3344 void STDMETHODCALLTYPE IDXARGBReadPtr_Move_Proxy(
3345 IDXARGBReadPtr * This,
3346 /* [in] */ long cSamples);
3349 void __RPC_STUB IDXARGBReadPtr_Move_Stub(
3350 IRpcStubBuffer *This,
3351 IRpcChannelBuffer *_pRpcChannelBuffer,
3352 PRPC_MESSAGE _pRpcMessage,
3353 DWORD *_pdwStubPhase);
3356 void STDMETHODCALLTYPE IDXARGBReadPtr_MoveToRow_Proxy(
3357 IDXARGBReadPtr * This,
3358 /* [in] */ ULONG y);
3361 void __RPC_STUB IDXARGBReadPtr_MoveToRow_Stub(
3362 IRpcStubBuffer *This,
3363 IRpcChannelBuffer *_pRpcChannelBuffer,
3364 PRPC_MESSAGE _pRpcMessage,
3365 DWORD *_pdwStubPhase);
3368 void STDMETHODCALLTYPE IDXARGBReadPtr_MoveToXY_Proxy(
3369 IDXARGBReadPtr * This,
3370 /* [in] */ ULONG x,
3371 /* [in] */ ULONG y);
3374 void __RPC_STUB IDXARGBReadPtr_MoveToXY_Stub(
3375 IRpcStubBuffer *This,
3376 IRpcChannelBuffer *_pRpcChannelBuffer,
3377 PRPC_MESSAGE _pRpcMessage,
3378 DWORD *_pdwStubPhase);
3381 ULONG STDMETHODCALLTYPE IDXARGBReadPtr_MoveAndGetRunInfo_Proxy(
3382 IDXARGBReadPtr * This,
3383 /* [in] */ ULONG Row,
3384 /* [out] */ const DXRUNINFO **ppInfo);
3387 void __RPC_STUB IDXARGBReadPtr_MoveAndGetRunInfo_Stub(
3388 IRpcStubBuffer *This,
3389 IRpcChannelBuffer *_pRpcChannelBuffer,
3390 PRPC_MESSAGE _pRpcMessage,
3391 DWORD *_pdwStubPhase);
3394 DXSAMPLE *STDMETHODCALLTYPE IDXARGBReadPtr_Unpack_Proxy(
3395 IDXARGBReadPtr * This,
3396 /* [in] */ DXSAMPLE *pSamples,
3397 /* [in] */ ULONG cSamples,
3398 /* [in] */ BOOL bMove);
3401 void __RPC_STUB IDXARGBReadPtr_Unpack_Stub(
3402 IRpcStubBuffer *This,
3403 IRpcChannelBuffer *_pRpcChannelBuffer,
3404 PRPC_MESSAGE _pRpcMessage,
3405 DWORD *_pdwStubPhase);
3408 DXPMSAMPLE *STDMETHODCALLTYPE IDXARGBReadPtr_UnpackPremult_Proxy(
3409 IDXARGBReadPtr * This,
3410 /* [in] */ DXPMSAMPLE *pSamples,
3411 /* [in] */ ULONG cSamples,
3412 /* [in] */ BOOL bMove);
3415 void __RPC_STUB IDXARGBReadPtr_UnpackPremult_Stub(
3416 IRpcStubBuffer *This,
3417 IRpcChannelBuffer *_pRpcChannelBuffer,
3418 PRPC_MESSAGE _pRpcMessage,
3419 DWORD *_pdwStubPhase);
3422 void STDMETHODCALLTYPE IDXARGBReadPtr_UnpackRect_Proxy(
3423 IDXARGBReadPtr * This,
3424 /* [in] */ const DXPACKEDRECTDESC *pRectDesc);
3427 void __RPC_STUB IDXARGBReadPtr_UnpackRect_Stub(
3428 IRpcStubBuffer *This,
3429 IRpcChannelBuffer *_pRpcChannelBuffer,
3430 PRPC_MESSAGE _pRpcMessage,
3431 DWORD *_pdwStubPhase);
3435 #endif /* __IDXARGBReadPtr_INTERFACE_DEFINED__ */
3438 #ifndef __IDXARGBReadWritePtr_INTERFACE_DEFINED__
3439 #define __IDXARGBReadWritePtr_INTERFACE_DEFINED__
3441 /* interface IDXARGBReadWritePtr */
3442 /* [local][unique][helpstring][uuid][object] */
3445 EXTERN_C const IID IID_IDXARGBReadWritePtr;
3447 #if defined(__cplusplus) && !defined(CINTERFACE)
3449 MIDL_INTERFACE("EAAAC2D7-C290-11d1-905D-00C04FD9189D")
3450 IDXARGBReadWritePtr : public IDXARGBReadPtr
3452 public:
3453 virtual void STDMETHODCALLTYPE PackAndMove(
3454 /* [in] */ const DXSAMPLE *pSamples,
3455 /* [in] */ ULONG cSamples) = 0;
3457 virtual void STDMETHODCALLTYPE PackPremultAndMove(
3458 /* [in] */ const DXPMSAMPLE *pSamples,
3459 /* [in] */ ULONG cSamples) = 0;
3461 virtual void STDMETHODCALLTYPE PackRect(
3462 /* [in] */ const DXPACKEDRECTDESC *pRectDesc) = 0;
3464 virtual void STDMETHODCALLTYPE CopyAndMoveBoth(
3465 /* [in] */ DXBASESAMPLE *pScratchBuffer,
3466 /* [in] */ IDXARGBReadPtr *pSrc,
3467 /* [in] */ ULONG cSamples,
3468 /* [in] */ BOOL bIsOpaque) = 0;
3470 virtual void STDMETHODCALLTYPE CopyRect(
3471 /* [in] */ DXBASESAMPLE *pScratchBuffer,
3472 /* [in] */ const RECT *pDestRect,
3473 /* [in] */ IDXARGBReadPtr *pSrc,
3474 /* [in] */ const POINT *pSrcOrigin,
3475 /* [in] */ BOOL bIsOpaque) = 0;
3477 virtual void STDMETHODCALLTYPE FillAndMove(
3478 /* [in] */ DXBASESAMPLE *pScratchBuffer,
3479 /* [in] */ DXPMSAMPLE SampVal,
3480 /* [in] */ ULONG cSamples,
3481 /* [in] */ BOOL bDoOver) = 0;
3483 virtual void STDMETHODCALLTYPE FillRect(
3484 /* [in] */ const RECT *pRect,
3485 /* [in] */ DXPMSAMPLE SampVal,
3486 /* [in] */ BOOL bDoOver) = 0;
3488 virtual void STDMETHODCALLTYPE OverSample(
3489 /* [in] */ const DXOVERSAMPLEDESC *pOverDesc) = 0;
3491 virtual void STDMETHODCALLTYPE OverArrayAndMove(
3492 /* [in] */ DXBASESAMPLE *pScratchBuffer,
3493 /* [in] */ const DXPMSAMPLE *pSrc,
3494 /* [in] */ ULONG cSamples) = 0;
3498 #else /* C style interface */
3500 typedef struct IDXARGBReadWritePtrVtbl
3502 BEGIN_INTERFACE
3504 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
3505 IDXARGBReadWritePtr * This,
3506 /* [in] */ REFIID riid,
3507 /* [iid_is][out] */ void **ppvObject);
3509 ULONG ( STDMETHODCALLTYPE *AddRef )(
3510 IDXARGBReadWritePtr * This);
3512 ULONG ( STDMETHODCALLTYPE *Release )(
3513 IDXARGBReadWritePtr * This);
3515 HRESULT ( STDMETHODCALLTYPE *GetSurface )(
3516 IDXARGBReadWritePtr * This,
3517 /* [in] */ REFIID riid,
3518 /* [iid_is][out] */ void **ppSurface);
3520 DXSAMPLEFORMATENUM ( STDMETHODCALLTYPE *GetNativeType )(
3521 IDXARGBReadWritePtr * This,
3522 /* [out] */ DXNATIVETYPEINFO *pInfo);
3524 void ( STDMETHODCALLTYPE *Move )(
3525 IDXARGBReadWritePtr * This,
3526 /* [in] */ long cSamples);
3528 void ( STDMETHODCALLTYPE *MoveToRow )(
3529 IDXARGBReadWritePtr * This,
3530 /* [in] */ ULONG y);
3532 void ( STDMETHODCALLTYPE *MoveToXY )(
3533 IDXARGBReadWritePtr * This,
3534 /* [in] */ ULONG x,
3535 /* [in] */ ULONG y);
3537 ULONG ( STDMETHODCALLTYPE *MoveAndGetRunInfo )(
3538 IDXARGBReadWritePtr * This,
3539 /* [in] */ ULONG Row,
3540 /* [out] */ const DXRUNINFO **ppInfo);
3542 DXSAMPLE *( STDMETHODCALLTYPE *Unpack )(
3543 IDXARGBReadWritePtr * This,
3544 /* [in] */ DXSAMPLE *pSamples,
3545 /* [in] */ ULONG cSamples,
3546 /* [in] */ BOOL bMove);
3548 DXPMSAMPLE *( STDMETHODCALLTYPE *UnpackPremult )(
3549 IDXARGBReadWritePtr * This,
3550 /* [in] */ DXPMSAMPLE *pSamples,
3551 /* [in] */ ULONG cSamples,
3552 /* [in] */ BOOL bMove);
3554 void ( STDMETHODCALLTYPE *UnpackRect )(
3555 IDXARGBReadWritePtr * This,
3556 /* [in] */ const DXPACKEDRECTDESC *pRectDesc);
3558 void ( STDMETHODCALLTYPE *PackAndMove )(
3559 IDXARGBReadWritePtr * This,
3560 /* [in] */ const DXSAMPLE *pSamples,
3561 /* [in] */ ULONG cSamples);
3563 void ( STDMETHODCALLTYPE *PackPremultAndMove )(
3564 IDXARGBReadWritePtr * This,
3565 /* [in] */ const DXPMSAMPLE *pSamples,
3566 /* [in] */ ULONG cSamples);
3568 void ( STDMETHODCALLTYPE *PackRect )(
3569 IDXARGBReadWritePtr * This,
3570 /* [in] */ const DXPACKEDRECTDESC *pRectDesc);
3572 void ( STDMETHODCALLTYPE *CopyAndMoveBoth )(
3573 IDXARGBReadWritePtr * This,
3574 /* [in] */ DXBASESAMPLE *pScratchBuffer,
3575 /* [in] */ IDXARGBReadPtr *pSrc,
3576 /* [in] */ ULONG cSamples,
3577 /* [in] */ BOOL bIsOpaque);
3579 void ( STDMETHODCALLTYPE *CopyRect )(
3580 IDXARGBReadWritePtr * This,
3581 /* [in] */ DXBASESAMPLE *pScratchBuffer,
3582 /* [in] */ const RECT *pDestRect,
3583 /* [in] */ IDXARGBReadPtr *pSrc,
3584 /* [in] */ const POINT *pSrcOrigin,
3585 /* [in] */ BOOL bIsOpaque);
3587 void ( STDMETHODCALLTYPE *FillAndMove )(
3588 IDXARGBReadWritePtr * This,
3589 /* [in] */ DXBASESAMPLE *pScratchBuffer,
3590 /* [in] */ DXPMSAMPLE SampVal,
3591 /* [in] */ ULONG cSamples,
3592 /* [in] */ BOOL bDoOver);
3594 void ( STDMETHODCALLTYPE *FillRect )(
3595 IDXARGBReadWritePtr * This,
3596 /* [in] */ const RECT *pRect,
3597 /* [in] */ DXPMSAMPLE SampVal,
3598 /* [in] */ BOOL bDoOver);
3600 void ( STDMETHODCALLTYPE *OverSample )(
3601 IDXARGBReadWritePtr * This,
3602 /* [in] */ const DXOVERSAMPLEDESC *pOverDesc);
3604 void ( STDMETHODCALLTYPE *OverArrayAndMove )(
3605 IDXARGBReadWritePtr * This,
3606 /* [in] */ DXBASESAMPLE *pScratchBuffer,
3607 /* [in] */ const DXPMSAMPLE *pSrc,
3608 /* [in] */ ULONG cSamples);
3610 END_INTERFACE
3611 } IDXARGBReadWritePtrVtbl;
3613 interface IDXARGBReadWritePtr
3615 CONST_VTBL struct IDXARGBReadWritePtrVtbl *lpVtbl;
3620 #ifdef COBJMACROS
3623 #define IDXARGBReadWritePtr_QueryInterface(This,riid,ppvObject) \
3624 (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
3626 #define IDXARGBReadWritePtr_AddRef(This) \
3627 (This)->lpVtbl -> AddRef(This)
3629 #define IDXARGBReadWritePtr_Release(This) \
3630 (This)->lpVtbl -> Release(This)
3633 #define IDXARGBReadWritePtr_GetSurface(This,riid,ppSurface) \
3634 (This)->lpVtbl -> GetSurface(This,riid,ppSurface)
3636 #define IDXARGBReadWritePtr_GetNativeType(This,pInfo) \
3637 (This)->lpVtbl -> GetNativeType(This,pInfo)
3639 #define IDXARGBReadWritePtr_Move(This,cSamples) \
3640 (This)->lpVtbl -> Move(This,cSamples)
3642 #define IDXARGBReadWritePtr_MoveToRow(This,y) \
3643 (This)->lpVtbl -> MoveToRow(This,y)
3645 #define IDXARGBReadWritePtr_MoveToXY(This,x,y) \
3646 (This)->lpVtbl -> MoveToXY(This,x,y)
3648 #define IDXARGBReadWritePtr_MoveAndGetRunInfo(This,Row,ppInfo) \
3649 (This)->lpVtbl -> MoveAndGetRunInfo(This,Row,ppInfo)
3651 #define IDXARGBReadWritePtr_Unpack(This,pSamples,cSamples,bMove) \
3652 (This)->lpVtbl -> Unpack(This,pSamples,cSamples,bMove)
3654 #define IDXARGBReadWritePtr_UnpackPremult(This,pSamples,cSamples,bMove) \
3655 (This)->lpVtbl -> UnpackPremult(This,pSamples,cSamples,bMove)
3657 #define IDXARGBReadWritePtr_UnpackRect(This,pRectDesc) \
3658 (This)->lpVtbl -> UnpackRect(This,pRectDesc)
3661 #define IDXARGBReadWritePtr_PackAndMove(This,pSamples,cSamples) \
3662 (This)->lpVtbl -> PackAndMove(This,pSamples,cSamples)
3664 #define IDXARGBReadWritePtr_PackPremultAndMove(This,pSamples,cSamples) \
3665 (This)->lpVtbl -> PackPremultAndMove(This,pSamples,cSamples)
3667 #define IDXARGBReadWritePtr_PackRect(This,pRectDesc) \
3668 (This)->lpVtbl -> PackRect(This,pRectDesc)
3670 #define IDXARGBReadWritePtr_CopyAndMoveBoth(This,pScratchBuffer,pSrc,cSamples,bIsOpaque) \
3671 (This)->lpVtbl -> CopyAndMoveBoth(This,pScratchBuffer,pSrc,cSamples,bIsOpaque)
3673 #define IDXARGBReadWritePtr_CopyRect(This,pScratchBuffer,pDestRect,pSrc,pSrcOrigin,bIsOpaque) \
3674 (This)->lpVtbl -> CopyRect(This,pScratchBuffer,pDestRect,pSrc,pSrcOrigin,bIsOpaque)
3676 #define IDXARGBReadWritePtr_FillAndMove(This,pScratchBuffer,SampVal,cSamples,bDoOver) \
3677 (This)->lpVtbl -> FillAndMove(This,pScratchBuffer,SampVal,cSamples,bDoOver)
3679 #define IDXARGBReadWritePtr_FillRect(This,pRect,SampVal,bDoOver) \
3680 (This)->lpVtbl -> FillRect(This,pRect,SampVal,bDoOver)
3682 #define IDXARGBReadWritePtr_OverSample(This,pOverDesc) \
3683 (This)->lpVtbl -> OverSample(This,pOverDesc)
3685 #define IDXARGBReadWritePtr_OverArrayAndMove(This,pScratchBuffer,pSrc,cSamples) \
3686 (This)->lpVtbl -> OverArrayAndMove(This,pScratchBuffer,pSrc,cSamples)
3688 #endif /* COBJMACROS */
3691 #endif /* C style interface */
3695 void STDMETHODCALLTYPE IDXARGBReadWritePtr_PackAndMove_Proxy(
3696 IDXARGBReadWritePtr * This,
3697 /* [in] */ const DXSAMPLE *pSamples,
3698 /* [in] */ ULONG cSamples);
3701 void __RPC_STUB IDXARGBReadWritePtr_PackAndMove_Stub(
3702 IRpcStubBuffer *This,
3703 IRpcChannelBuffer *_pRpcChannelBuffer,
3704 PRPC_MESSAGE _pRpcMessage,
3705 DWORD *_pdwStubPhase);
3708 void STDMETHODCALLTYPE IDXARGBReadWritePtr_PackPremultAndMove_Proxy(
3709 IDXARGBReadWritePtr * This,
3710 /* [in] */ const DXPMSAMPLE *pSamples,
3711 /* [in] */ ULONG cSamples);
3714 void __RPC_STUB IDXARGBReadWritePtr_PackPremultAndMove_Stub(
3715 IRpcStubBuffer *This,
3716 IRpcChannelBuffer *_pRpcChannelBuffer,
3717 PRPC_MESSAGE _pRpcMessage,
3718 DWORD *_pdwStubPhase);
3721 void STDMETHODCALLTYPE IDXARGBReadWritePtr_PackRect_Proxy(
3722 IDXARGBReadWritePtr * This,
3723 /* [in] */ const DXPACKEDRECTDESC *pRectDesc);
3726 void __RPC_STUB IDXARGBReadWritePtr_PackRect_Stub(
3727 IRpcStubBuffer *This,
3728 IRpcChannelBuffer *_pRpcChannelBuffer,
3729 PRPC_MESSAGE _pRpcMessage,
3730 DWORD *_pdwStubPhase);
3733 void STDMETHODCALLTYPE IDXARGBReadWritePtr_CopyAndMoveBoth_Proxy(
3734 IDXARGBReadWritePtr * This,
3735 /* [in] */ DXBASESAMPLE *pScratchBuffer,
3736 /* [in] */ IDXARGBReadPtr *pSrc,
3737 /* [in] */ ULONG cSamples,
3738 /* [in] */ BOOL bIsOpaque);
3741 void __RPC_STUB IDXARGBReadWritePtr_CopyAndMoveBoth_Stub(
3742 IRpcStubBuffer *This,
3743 IRpcChannelBuffer *_pRpcChannelBuffer,
3744 PRPC_MESSAGE _pRpcMessage,
3745 DWORD *_pdwStubPhase);
3748 void STDMETHODCALLTYPE IDXARGBReadWritePtr_CopyRect_Proxy(
3749 IDXARGBReadWritePtr * This,
3750 /* [in] */ DXBASESAMPLE *pScratchBuffer,
3751 /* [in] */ const RECT *pDestRect,
3752 /* [in] */ IDXARGBReadPtr *pSrc,
3753 /* [in] */ const POINT *pSrcOrigin,
3754 /* [in] */ BOOL bIsOpaque);
3757 void __RPC_STUB IDXARGBReadWritePtr_CopyRect_Stub(
3758 IRpcStubBuffer *This,
3759 IRpcChannelBuffer *_pRpcChannelBuffer,
3760 PRPC_MESSAGE _pRpcMessage,
3761 DWORD *_pdwStubPhase);
3764 void STDMETHODCALLTYPE IDXARGBReadWritePtr_FillAndMove_Proxy(
3765 IDXARGBReadWritePtr * This,
3766 /* [in] */ DXBASESAMPLE *pScratchBuffer,
3767 /* [in] */ DXPMSAMPLE SampVal,
3768 /* [in] */ ULONG cSamples,
3769 /* [in] */ BOOL bDoOver);
3772 void __RPC_STUB IDXARGBReadWritePtr_FillAndMove_Stub(
3773 IRpcStubBuffer *This,
3774 IRpcChannelBuffer *_pRpcChannelBuffer,
3775 PRPC_MESSAGE _pRpcMessage,
3776 DWORD *_pdwStubPhase);
3779 void STDMETHODCALLTYPE IDXARGBReadWritePtr_FillRect_Proxy(
3780 IDXARGBReadWritePtr * This,
3781 /* [in] */ const RECT *pRect,
3782 /* [in] */ DXPMSAMPLE SampVal,
3783 /* [in] */ BOOL bDoOver);
3786 void __RPC_STUB IDXARGBReadWritePtr_FillRect_Stub(
3787 IRpcStubBuffer *This,
3788 IRpcChannelBuffer *_pRpcChannelBuffer,
3789 PRPC_MESSAGE _pRpcMessage,
3790 DWORD *_pdwStubPhase);
3793 void STDMETHODCALLTYPE IDXARGBReadWritePtr_OverSample_Proxy(
3794 IDXARGBReadWritePtr * This,
3795 /* [in] */ const DXOVERSAMPLEDESC *pOverDesc);
3798 void __RPC_STUB IDXARGBReadWritePtr_OverSample_Stub(
3799 IRpcStubBuffer *This,
3800 IRpcChannelBuffer *_pRpcChannelBuffer,
3801 PRPC_MESSAGE _pRpcMessage,
3802 DWORD *_pdwStubPhase);
3805 void STDMETHODCALLTYPE IDXARGBReadWritePtr_OverArrayAndMove_Proxy(
3806 IDXARGBReadWritePtr * This,
3807 /* [in] */ DXBASESAMPLE *pScratchBuffer,
3808 /* [in] */ const DXPMSAMPLE *pSrc,
3809 /* [in] */ ULONG cSamples);
3812 void __RPC_STUB IDXARGBReadWritePtr_OverArrayAndMove_Stub(
3813 IRpcStubBuffer *This,
3814 IRpcChannelBuffer *_pRpcChannelBuffer,
3815 PRPC_MESSAGE _pRpcMessage,
3816 DWORD *_pdwStubPhase);
3820 #endif /* __IDXARGBReadWritePtr_INTERFACE_DEFINED__ */
3823 #ifndef __IDXDCLock_INTERFACE_DEFINED__
3824 #define __IDXDCLock_INTERFACE_DEFINED__
3826 /* interface IDXDCLock */
3827 /* [local][unique][helpstring][uuid][object] */
3830 EXTERN_C const IID IID_IDXDCLock;
3832 #if defined(__cplusplus) && !defined(CINTERFACE)
3834 MIDL_INTERFACE("0F619456-CF39-11d1-905E-00C04FD9189D")
3835 IDXDCLock : public IUnknown
3837 public:
3838 virtual HDC STDMETHODCALLTYPE GetDC( void) = 0;
3842 #else /* C style interface */
3844 typedef struct IDXDCLockVtbl
3846 BEGIN_INTERFACE
3848 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
3849 IDXDCLock * This,
3850 /* [in] */ REFIID riid,
3851 /* [iid_is][out] */ void **ppvObject);
3853 ULONG ( STDMETHODCALLTYPE *AddRef )(
3854 IDXDCLock * This);
3856 ULONG ( STDMETHODCALLTYPE *Release )(
3857 IDXDCLock * This);
3859 HDC ( STDMETHODCALLTYPE *GetDC )(
3860 IDXDCLock * This);
3862 END_INTERFACE
3863 } IDXDCLockVtbl;
3865 interface IDXDCLock
3867 CONST_VTBL struct IDXDCLockVtbl *lpVtbl;
3872 #ifdef COBJMACROS
3875 #define IDXDCLock_QueryInterface(This,riid,ppvObject) \
3876 (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
3878 #define IDXDCLock_AddRef(This) \
3879 (This)->lpVtbl -> AddRef(This)
3881 #define IDXDCLock_Release(This) \
3882 (This)->lpVtbl -> Release(This)
3885 #define IDXDCLock_GetDC(This) \
3886 (This)->lpVtbl -> GetDC(This)
3888 #endif /* COBJMACROS */
3891 #endif /* C style interface */
3895 HDC STDMETHODCALLTYPE IDXDCLock_GetDC_Proxy(
3896 IDXDCLock * This);
3899 void __RPC_STUB IDXDCLock_GetDC_Stub(
3900 IRpcStubBuffer *This,
3901 IRpcChannelBuffer *_pRpcChannelBuffer,
3902 PRPC_MESSAGE _pRpcMessage,
3903 DWORD *_pdwStubPhase);
3907 #endif /* __IDXDCLock_INTERFACE_DEFINED__ */
3910 #ifndef __IDXTScaleOutput_INTERFACE_DEFINED__
3911 #define __IDXTScaleOutput_INTERFACE_DEFINED__
3913 /* interface IDXTScaleOutput */
3914 /* [local][unique][helpstring][uuid][object] */
3917 EXTERN_C const IID IID_IDXTScaleOutput;
3919 #if defined(__cplusplus) && !defined(CINTERFACE)
3921 MIDL_INTERFACE("B2024B50-EE77-11d1-9066-00C04FD9189D")
3922 IDXTScaleOutput : public IUnknown
3924 public:
3925 virtual HRESULT STDMETHODCALLTYPE SetOutputSize(
3926 /* [in] */ const SIZE OutSize,
3927 /* [in] */ BOOL bMaintainAspect) = 0;
3931 #else /* C style interface */
3933 typedef struct IDXTScaleOutputVtbl
3935 BEGIN_INTERFACE
3937 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
3938 IDXTScaleOutput * This,
3939 /* [in] */ REFIID riid,
3940 /* [iid_is][out] */ void **ppvObject);
3942 ULONG ( STDMETHODCALLTYPE *AddRef )(
3943 IDXTScaleOutput * This);
3945 ULONG ( STDMETHODCALLTYPE *Release )(
3946 IDXTScaleOutput * This);
3948 HRESULT ( STDMETHODCALLTYPE *SetOutputSize )(
3949 IDXTScaleOutput * This,
3950 /* [in] */ const SIZE OutSize,
3951 /* [in] */ BOOL bMaintainAspect);
3953 END_INTERFACE
3954 } IDXTScaleOutputVtbl;
3956 interface IDXTScaleOutput
3958 CONST_VTBL struct IDXTScaleOutputVtbl *lpVtbl;
3963 #ifdef COBJMACROS
3966 #define IDXTScaleOutput_QueryInterface(This,riid,ppvObject) \
3967 (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
3969 #define IDXTScaleOutput_AddRef(This) \
3970 (This)->lpVtbl -> AddRef(This)
3972 #define IDXTScaleOutput_Release(This) \
3973 (This)->lpVtbl -> Release(This)
3976 #define IDXTScaleOutput_SetOutputSize(This,OutSize,bMaintainAspect) \
3977 (This)->lpVtbl -> SetOutputSize(This,OutSize,bMaintainAspect)
3979 #endif /* COBJMACROS */
3982 #endif /* C style interface */
3986 HRESULT STDMETHODCALLTYPE IDXTScaleOutput_SetOutputSize_Proxy(
3987 IDXTScaleOutput * This,
3988 /* [in] */ const SIZE OutSize,
3989 /* [in] */ BOOL bMaintainAspect);
3992 void __RPC_STUB IDXTScaleOutput_SetOutputSize_Stub(
3993 IRpcStubBuffer *This,
3994 IRpcChannelBuffer *_pRpcChannelBuffer,
3995 PRPC_MESSAGE _pRpcMessage,
3996 DWORD *_pdwStubPhase);
4000 #endif /* __IDXTScaleOutput_INTERFACE_DEFINED__ */
4003 #ifndef __IDXGradient_INTERFACE_DEFINED__
4004 #define __IDXGradient_INTERFACE_DEFINED__
4006 /* interface IDXGradient */
4007 /* [local][unique][helpstring][uuid][object] */
4010 EXTERN_C const IID IID_IDXGradient;
4012 #if defined(__cplusplus) && !defined(CINTERFACE)
4014 MIDL_INTERFACE("B2024B51-EE77-11d1-9066-00C04FD9189D")
4015 IDXGradient : public IDXTScaleOutput
4017 public:
4018 virtual HRESULT STDMETHODCALLTYPE SetGradient(
4019 DXSAMPLE StartColor,
4020 DXSAMPLE EndColor,
4021 BOOL bHorizontal) = 0;
4023 virtual HRESULT STDMETHODCALLTYPE GetOutputSize(
4024 /* [out] */ SIZE *pOutSize) = 0;
4028 #else /* C style interface */
4030 typedef struct IDXGradientVtbl
4032 BEGIN_INTERFACE
4034 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
4035 IDXGradient * This,
4036 /* [in] */ REFIID riid,
4037 /* [iid_is][out] */ void **ppvObject);
4039 ULONG ( STDMETHODCALLTYPE *AddRef )(
4040 IDXGradient * This);
4042 ULONG ( STDMETHODCALLTYPE *Release )(
4043 IDXGradient * This);
4045 HRESULT ( STDMETHODCALLTYPE *SetOutputSize )(
4046 IDXGradient * This,
4047 /* [in] */ const SIZE OutSize,
4048 /* [in] */ BOOL bMaintainAspect);
4050 HRESULT ( STDMETHODCALLTYPE *SetGradient )(
4051 IDXGradient * This,
4052 DXSAMPLE StartColor,
4053 DXSAMPLE EndColor,
4054 BOOL bHorizontal);
4056 HRESULT ( STDMETHODCALLTYPE *GetOutputSize )(
4057 IDXGradient * This,
4058 /* [out] */ SIZE *pOutSize);
4060 END_INTERFACE
4061 } IDXGradientVtbl;
4063 interface IDXGradient
4065 CONST_VTBL struct IDXGradientVtbl *lpVtbl;
4070 #ifdef COBJMACROS
4073 #define IDXGradient_QueryInterface(This,riid,ppvObject) \
4074 (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
4076 #define IDXGradient_AddRef(This) \
4077 (This)->lpVtbl -> AddRef(This)
4079 #define IDXGradient_Release(This) \
4080 (This)->lpVtbl -> Release(This)
4083 #define IDXGradient_SetOutputSize(This,OutSize,bMaintainAspect) \
4084 (This)->lpVtbl -> SetOutputSize(This,OutSize,bMaintainAspect)
4087 #define IDXGradient_SetGradient(This,StartColor,EndColor,bHorizontal) \
4088 (This)->lpVtbl -> SetGradient(This,StartColor,EndColor,bHorizontal)
4090 #define IDXGradient_GetOutputSize(This,pOutSize) \
4091 (This)->lpVtbl -> GetOutputSize(This,pOutSize)
4093 #endif /* COBJMACROS */
4096 #endif /* C style interface */
4100 HRESULT STDMETHODCALLTYPE IDXGradient_SetGradient_Proxy(
4101 IDXGradient * This,
4102 DXSAMPLE StartColor,
4103 DXSAMPLE EndColor,
4104 BOOL bHorizontal);
4107 void __RPC_STUB IDXGradient_SetGradient_Stub(
4108 IRpcStubBuffer *This,
4109 IRpcChannelBuffer *_pRpcChannelBuffer,
4110 PRPC_MESSAGE _pRpcMessage,
4111 DWORD *_pdwStubPhase);
4114 HRESULT STDMETHODCALLTYPE IDXGradient_GetOutputSize_Proxy(
4115 IDXGradient * This,
4116 /* [out] */ SIZE *pOutSize);
4119 void __RPC_STUB IDXGradient_GetOutputSize_Stub(
4120 IRpcStubBuffer *This,
4121 IRpcChannelBuffer *_pRpcChannelBuffer,
4122 PRPC_MESSAGE _pRpcMessage,
4123 DWORD *_pdwStubPhase);
4127 #endif /* __IDXGradient_INTERFACE_DEFINED__ */
4130 #ifndef __IDXTScale_INTERFACE_DEFINED__
4131 #define __IDXTScale_INTERFACE_DEFINED__
4133 /* interface IDXTScale */
4134 /* [local][unique][helpstring][uuid][object] */
4137 EXTERN_C const IID IID_IDXTScale;
4139 #if defined(__cplusplus) && !defined(CINTERFACE)
4141 MIDL_INTERFACE("B39FD742-E139-11d1-9065-00C04FD9189D")
4142 IDXTScale : public IUnknown
4144 public:
4145 virtual HRESULT STDMETHODCALLTYPE SetScales(
4146 /* [in] */ float Scales[ 2 ]) = 0;
4148 virtual HRESULT STDMETHODCALLTYPE GetScales(
4149 /* [out] */ float Scales[ 2 ]) = 0;
4151 virtual HRESULT STDMETHODCALLTYPE ScaleFitToSize(
4152 /* [out][in] */ DXBNDS *pClipBounds,
4153 /* [in] */ SIZE FitToSize,
4154 /* [in] */ BOOL bMaintainAspect) = 0;
4158 #else /* C style interface */
4160 typedef struct IDXTScaleVtbl
4162 BEGIN_INTERFACE
4164 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
4165 IDXTScale * This,
4166 /* [in] */ REFIID riid,
4167 /* [iid_is][out] */ void **ppvObject);
4169 ULONG ( STDMETHODCALLTYPE *AddRef )(
4170 IDXTScale * This);
4172 ULONG ( STDMETHODCALLTYPE *Release )(
4173 IDXTScale * This);
4175 HRESULT ( STDMETHODCALLTYPE *SetScales )(
4176 IDXTScale * This,
4177 /* [in] */ float Scales[ 2 ]);
4179 HRESULT ( STDMETHODCALLTYPE *GetScales )(
4180 IDXTScale * This,
4181 /* [out] */ float Scales[ 2 ]);
4183 HRESULT ( STDMETHODCALLTYPE *ScaleFitToSize )(
4184 IDXTScale * This,
4185 /* [out][in] */ DXBNDS *pClipBounds,
4186 /* [in] */ SIZE FitToSize,
4187 /* [in] */ BOOL bMaintainAspect);
4189 END_INTERFACE
4190 } IDXTScaleVtbl;
4192 interface IDXTScale
4194 CONST_VTBL struct IDXTScaleVtbl *lpVtbl;
4199 #ifdef COBJMACROS
4202 #define IDXTScale_QueryInterface(This,riid,ppvObject) \
4203 (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
4205 #define IDXTScale_AddRef(This) \
4206 (This)->lpVtbl -> AddRef(This)
4208 #define IDXTScale_Release(This) \
4209 (This)->lpVtbl -> Release(This)
4212 #define IDXTScale_SetScales(This,Scales) \
4213 (This)->lpVtbl -> SetScales(This,Scales)
4215 #define IDXTScale_GetScales(This,Scales) \
4216 (This)->lpVtbl -> GetScales(This,Scales)
4218 #define IDXTScale_ScaleFitToSize(This,pClipBounds,FitToSize,bMaintainAspect) \
4219 (This)->lpVtbl -> ScaleFitToSize(This,pClipBounds,FitToSize,bMaintainAspect)
4221 #endif /* COBJMACROS */
4224 #endif /* C style interface */
4228 HRESULT STDMETHODCALLTYPE IDXTScale_SetScales_Proxy(
4229 IDXTScale * This,
4230 /* [in] */ float Scales[ 2 ]);
4233 void __RPC_STUB IDXTScale_SetScales_Stub(
4234 IRpcStubBuffer *This,
4235 IRpcChannelBuffer *_pRpcChannelBuffer,
4236 PRPC_MESSAGE _pRpcMessage,
4237 DWORD *_pdwStubPhase);
4240 HRESULT STDMETHODCALLTYPE IDXTScale_GetScales_Proxy(
4241 IDXTScale * This,
4242 /* [out] */ float Scales[ 2 ]);
4245 void __RPC_STUB IDXTScale_GetScales_Stub(
4246 IRpcStubBuffer *This,
4247 IRpcChannelBuffer *_pRpcChannelBuffer,
4248 PRPC_MESSAGE _pRpcMessage,
4249 DWORD *_pdwStubPhase);
4252 HRESULT STDMETHODCALLTYPE IDXTScale_ScaleFitToSize_Proxy(
4253 IDXTScale * This,
4254 /* [out][in] */ DXBNDS *pClipBounds,
4255 /* [in] */ SIZE FitToSize,
4256 /* [in] */ BOOL bMaintainAspect);
4259 void __RPC_STUB IDXTScale_ScaleFitToSize_Stub(
4260 IRpcStubBuffer *This,
4261 IRpcChannelBuffer *_pRpcChannelBuffer,
4262 PRPC_MESSAGE _pRpcMessage,
4263 DWORD *_pdwStubPhase);
4267 #endif /* __IDXTScale_INTERFACE_DEFINED__ */
4270 /* interface __MIDL_itf_dxtrans_0276 */
4271 /* [local] */
4273 typedef
4274 enum DISPIDDXEFFECT
4275 { DISPID_DXECAPABILITIES = 10000,
4276 DISPID_DXEPROGRESS = DISPID_DXECAPABILITIES + 1,
4277 DISPID_DXESTEP = DISPID_DXEPROGRESS + 1,
4278 DISPID_DXEDURATION = DISPID_DXESTEP + 1,
4279 DISPID_DXE_NEXT_ID = DISPID_DXEDURATION + 1
4280 } DISPIDDXBOUNDEDEFFECT;
4282 typedef
4283 enum DXEFFECTTYPE
4284 { DXTET_PERIODIC = 1 << 0,
4285 DXTET_MORPH = 1 << 1
4286 } DXEFFECTTYPE;
4290 extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0276_v0_0_c_ifspec;
4291 extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0276_v0_0_s_ifspec;
4293 #ifndef __IDXEffect_INTERFACE_DEFINED__
4294 #define __IDXEffect_INTERFACE_DEFINED__
4296 /* interface IDXEffect */
4297 /* [dual][unique][helpstring][uuid][object] */
4300 EXTERN_C const IID IID_IDXEffect;
4302 #if defined(__cplusplus) && !defined(CINTERFACE)
4304 MIDL_INTERFACE("E31FB81B-1335-11d1-8189-0000F87557DB")
4305 IDXEffect : public IDispatch
4307 public:
4308 virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Capabilities(
4309 /* [retval][out] */ long *pVal) = 0;
4311 virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Progress(
4312 /* [retval][out] */ float *pVal) = 0;
4314 virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_Progress(
4315 /* [in] */ float newVal) = 0;
4317 virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_StepResolution(
4318 /* [retval][out] */ float *pVal) = 0;
4320 virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Duration(
4321 /* [retval][out] */ float *pVal) = 0;
4323 virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_Duration(
4324 /* [in] */ float newVal) = 0;
4328 #else /* C style interface */
4330 typedef struct IDXEffectVtbl
4332 BEGIN_INTERFACE
4334 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
4335 IDXEffect * This,
4336 /* [in] */ REFIID riid,
4337 /* [iid_is][out] */ void **ppvObject);
4339 ULONG ( STDMETHODCALLTYPE *AddRef )(
4340 IDXEffect * This);
4342 ULONG ( STDMETHODCALLTYPE *Release )(
4343 IDXEffect * This);
4345 HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
4346 IDXEffect * This,
4347 /* [out] */ UINT *pctinfo);
4349 HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
4350 IDXEffect * This,
4351 /* [in] */ UINT iTInfo,
4352 /* [in] */ LCID lcid,
4353 /* [out] */ ITypeInfo **ppTInfo);
4355 HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
4356 IDXEffect * This,
4357 /* [in] */ REFIID riid,
4358 /* [size_is][in] */ LPOLESTR *rgszNames,
4359 /* [in] */ UINT cNames,
4360 /* [in] */ LCID lcid,
4361 /* [size_is][out] */ DISPID *rgDispId);
4363 /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
4364 IDXEffect * This,
4365 /* [in] */ DISPID dispIdMember,
4366 /* [in] */ REFIID riid,
4367 /* [in] */ LCID lcid,
4368 /* [in] */ WORD wFlags,
4369 /* [out][in] */ DISPPARAMS *pDispParams,
4370 /* [out] */ VARIANT *pVarResult,
4371 /* [out] */ EXCEPINFO *pExcepInfo,
4372 /* [out] */ UINT *puArgErr);
4374 /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Capabilities )(
4375 IDXEffect * This,
4376 /* [retval][out] */ long *pVal);
4378 /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Progress )(
4379 IDXEffect * This,
4380 /* [retval][out] */ float *pVal);
4382 /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Progress )(
4383 IDXEffect * This,
4384 /* [in] */ float newVal);
4386 /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StepResolution )(
4387 IDXEffect * This,
4388 /* [retval][out] */ float *pVal);
4390 /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Duration )(
4391 IDXEffect * This,
4392 /* [retval][out] */ float *pVal);
4394 /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Duration )(
4395 IDXEffect * This,
4396 /* [in] */ float newVal);
4398 END_INTERFACE
4399 } IDXEffectVtbl;
4401 interface IDXEffect
4403 CONST_VTBL struct IDXEffectVtbl *lpVtbl;
4408 #ifdef COBJMACROS
4411 #define IDXEffect_QueryInterface(This,riid,ppvObject) \
4412 (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
4414 #define IDXEffect_AddRef(This) \
4415 (This)->lpVtbl -> AddRef(This)
4417 #define IDXEffect_Release(This) \
4418 (This)->lpVtbl -> Release(This)
4421 #define IDXEffect_GetTypeInfoCount(This,pctinfo) \
4422 (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
4424 #define IDXEffect_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
4425 (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4427 #define IDXEffect_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
4428 (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4430 #define IDXEffect_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
4431 (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4434 #define IDXEffect_get_Capabilities(This,pVal) \
4435 (This)->lpVtbl -> get_Capabilities(This,pVal)
4437 #define IDXEffect_get_Progress(This,pVal) \
4438 (This)->lpVtbl -> get_Progress(This,pVal)
4440 #define IDXEffect_put_Progress(This,newVal) \
4441 (This)->lpVtbl -> put_Progress(This,newVal)
4443 #define IDXEffect_get_StepResolution(This,pVal) \
4444 (This)->lpVtbl -> get_StepResolution(This,pVal)
4446 #define IDXEffect_get_Duration(This,pVal) \
4447 (This)->lpVtbl -> get_Duration(This,pVal)
4449 #define IDXEffect_put_Duration(This,newVal) \
4450 (This)->lpVtbl -> put_Duration(This,newVal)
4452 #endif /* COBJMACROS */
4455 #endif /* C style interface */
4459 /* [id][propget] */ HRESULT STDMETHODCALLTYPE IDXEffect_get_Capabilities_Proxy(
4460 IDXEffect * This,
4461 /* [retval][out] */ long *pVal);
4464 void __RPC_STUB IDXEffect_get_Capabilities_Stub(
4465 IRpcStubBuffer *This,
4466 IRpcChannelBuffer *_pRpcChannelBuffer,
4467 PRPC_MESSAGE _pRpcMessage,
4468 DWORD *_pdwStubPhase);
4471 /* [id][propget] */ HRESULT STDMETHODCALLTYPE IDXEffect_get_Progress_Proxy(
4472 IDXEffect * This,
4473 /* [retval][out] */ float *pVal);
4476 void __RPC_STUB IDXEffect_get_Progress_Stub(
4477 IRpcStubBuffer *This,
4478 IRpcChannelBuffer *_pRpcChannelBuffer,
4479 PRPC_MESSAGE _pRpcMessage,
4480 DWORD *_pdwStubPhase);
4483 /* [id][propput] */ HRESULT STDMETHODCALLTYPE IDXEffect_put_Progress_Proxy(
4484 IDXEffect * This,
4485 /* [in] */ float newVal);
4488 void __RPC_STUB IDXEffect_put_Progress_Stub(
4489 IRpcStubBuffer *This,
4490 IRpcChannelBuffer *_pRpcChannelBuffer,
4491 PRPC_MESSAGE _pRpcMessage,
4492 DWORD *_pdwStubPhase);
4495 /* [id][propget] */ HRESULT STDMETHODCALLTYPE IDXEffect_get_StepResolution_Proxy(
4496 IDXEffect * This,
4497 /* [retval][out] */ float *pVal);
4500 void __RPC_STUB IDXEffect_get_StepResolution_Stub(
4501 IRpcStubBuffer *This,
4502 IRpcChannelBuffer *_pRpcChannelBuffer,
4503 PRPC_MESSAGE _pRpcMessage,
4504 DWORD *_pdwStubPhase);
4507 /* [id][propget] */ HRESULT STDMETHODCALLTYPE IDXEffect_get_Duration_Proxy(
4508 IDXEffect * This,
4509 /* [retval][out] */ float *pVal);
4512 void __RPC_STUB IDXEffect_get_Duration_Stub(
4513 IRpcStubBuffer *This,
4514 IRpcChannelBuffer *_pRpcChannelBuffer,
4515 PRPC_MESSAGE _pRpcMessage,
4516 DWORD *_pdwStubPhase);
4519 /* [id][propput] */ HRESULT STDMETHODCALLTYPE IDXEffect_put_Duration_Proxy(
4520 IDXEffect * This,
4521 /* [in] */ float newVal);
4524 void __RPC_STUB IDXEffect_put_Duration_Stub(
4525 IRpcStubBuffer *This,
4526 IRpcChannelBuffer *_pRpcChannelBuffer,
4527 PRPC_MESSAGE _pRpcMessage,
4528 DWORD *_pdwStubPhase);
4532 #endif /* __IDXEffect_INTERFACE_DEFINED__ */
4535 #ifndef __IDXLookupTable_INTERFACE_DEFINED__
4536 #define __IDXLookupTable_INTERFACE_DEFINED__
4538 /* interface IDXLookupTable */
4539 /* [local][unique][helpstring][uuid][object] */
4542 EXTERN_C const IID IID_IDXLookupTable;
4544 #if defined(__cplusplus) && !defined(CINTERFACE)
4546 MIDL_INTERFACE("01BAFC7F-9E63-11d1-9053-00C04FD9189D")
4547 IDXLookupTable : public IDXBaseObject
4549 public:
4550 virtual HRESULT STDMETHODCALLTYPE GetTables(
4551 /* [out] */ BYTE RedLUT[ 256 ],
4552 /* [out] */ BYTE GreenLUT[ 256 ],
4553 /* [out] */ BYTE BlueLUT[ 256 ],
4554 /* [out] */ BYTE AlphaLUT[ 256 ]) = 0;
4556 virtual HRESULT STDMETHODCALLTYPE IsChannelIdentity(
4557 /* [out] */ DXBASESAMPLE *pSampleBools) = 0;
4559 virtual HRESULT STDMETHODCALLTYPE GetIndexValues(
4560 /* [in] */ ULONG Index,
4561 /* [out] */ DXBASESAMPLE *pSample) = 0;
4563 virtual HRESULT STDMETHODCALLTYPE ApplyTables(
4564 /* [out][in] */ DXSAMPLE *pSamples,
4565 /* [in] */ ULONG cSamples) = 0;
4569 #else /* C style interface */
4571 typedef struct IDXLookupTableVtbl
4573 BEGIN_INTERFACE
4575 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
4576 IDXLookupTable * This,
4577 /* [in] */ REFIID riid,
4578 /* [iid_is][out] */ void **ppvObject);
4580 ULONG ( STDMETHODCALLTYPE *AddRef )(
4581 IDXLookupTable * This);
4583 ULONG ( STDMETHODCALLTYPE *Release )(
4584 IDXLookupTable * This);
4586 HRESULT ( STDMETHODCALLTYPE *GetGenerationId )(
4587 IDXLookupTable * This,
4588 /* [out] */ ULONG *pID);
4590 HRESULT ( STDMETHODCALLTYPE *IncrementGenerationId )(
4591 IDXLookupTable * This,
4592 /* [in] */ BOOL bRefresh);
4594 HRESULT ( STDMETHODCALLTYPE *GetObjectSize )(
4595 IDXLookupTable * This,
4596 /* [out] */ ULONG *pcbSize);
4598 HRESULT ( STDMETHODCALLTYPE *GetTables )(
4599 IDXLookupTable * This,
4600 /* [out] */ BYTE RedLUT[ 256 ],
4601 /* [out] */ BYTE GreenLUT[ 256 ],
4602 /* [out] */ BYTE BlueLUT[ 256 ],
4603 /* [out] */ BYTE AlphaLUT[ 256 ]);
4605 HRESULT ( STDMETHODCALLTYPE *IsChannelIdentity )(
4606 IDXLookupTable * This,
4607 /* [out] */ DXBASESAMPLE *pSampleBools);
4609 HRESULT ( STDMETHODCALLTYPE *GetIndexValues )(
4610 IDXLookupTable * This,
4611 /* [in] */ ULONG Index,
4612 /* [out] */ DXBASESAMPLE *pSample);
4614 HRESULT ( STDMETHODCALLTYPE *ApplyTables )(
4615 IDXLookupTable * This,
4616 /* [out][in] */ DXSAMPLE *pSamples,
4617 /* [in] */ ULONG cSamples);
4619 END_INTERFACE
4620 } IDXLookupTableVtbl;
4622 interface IDXLookupTable
4624 CONST_VTBL struct IDXLookupTableVtbl *lpVtbl;
4629 #ifdef COBJMACROS
4632 #define IDXLookupTable_QueryInterface(This,riid,ppvObject) \
4633 (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
4635 #define IDXLookupTable_AddRef(This) \
4636 (This)->lpVtbl -> AddRef(This)
4638 #define IDXLookupTable_Release(This) \
4639 (This)->lpVtbl -> Release(This)
4642 #define IDXLookupTable_GetGenerationId(This,pID) \
4643 (This)->lpVtbl -> GetGenerationId(This,pID)
4645 #define IDXLookupTable_IncrementGenerationId(This,bRefresh) \
4646 (This)->lpVtbl -> IncrementGenerationId(This,bRefresh)
4648 #define IDXLookupTable_GetObjectSize(This,pcbSize) \
4649 (This)->lpVtbl -> GetObjectSize(This,pcbSize)
4652 #define IDXLookupTable_GetTables(This,RedLUT,GreenLUT,BlueLUT,AlphaLUT) \
4653 (This)->lpVtbl -> GetTables(This,RedLUT,GreenLUT,BlueLUT,AlphaLUT)
4655 #define IDXLookupTable_IsChannelIdentity(This,pSampleBools) \
4656 (This)->lpVtbl -> IsChannelIdentity(This,pSampleBools)
4658 #define IDXLookupTable_GetIndexValues(This,Index,pSample) \
4659 (This)->lpVtbl -> GetIndexValues(This,Index,pSample)
4661 #define IDXLookupTable_ApplyTables(This,pSamples,cSamples) \
4662 (This)->lpVtbl -> ApplyTables(This,pSamples,cSamples)
4664 #endif /* COBJMACROS */
4667 #endif /* C style interface */
4671 HRESULT STDMETHODCALLTYPE IDXLookupTable_GetTables_Proxy(
4672 IDXLookupTable * This,
4673 /* [out] */ BYTE RedLUT[ 256 ],
4674 /* [out] */ BYTE GreenLUT[ 256 ],
4675 /* [out] */ BYTE BlueLUT[ 256 ],
4676 /* [out] */ BYTE AlphaLUT[ 256 ]);
4679 void __RPC_STUB IDXLookupTable_GetTables_Stub(
4680 IRpcStubBuffer *This,
4681 IRpcChannelBuffer *_pRpcChannelBuffer,
4682 PRPC_MESSAGE _pRpcMessage,
4683 DWORD *_pdwStubPhase);
4686 HRESULT STDMETHODCALLTYPE IDXLookupTable_IsChannelIdentity_Proxy(
4687 IDXLookupTable * This,
4688 /* [out] */ DXBASESAMPLE *pSampleBools);
4691 void __RPC_STUB IDXLookupTable_IsChannelIdentity_Stub(
4692 IRpcStubBuffer *This,
4693 IRpcChannelBuffer *_pRpcChannelBuffer,
4694 PRPC_MESSAGE _pRpcMessage,
4695 DWORD *_pdwStubPhase);
4698 HRESULT STDMETHODCALLTYPE IDXLookupTable_GetIndexValues_Proxy(
4699 IDXLookupTable * This,
4700 /* [in] */ ULONG Index,
4701 /* [out] */ DXBASESAMPLE *pSample);
4704 void __RPC_STUB IDXLookupTable_GetIndexValues_Stub(
4705 IRpcStubBuffer *This,
4706 IRpcChannelBuffer *_pRpcChannelBuffer,
4707 PRPC_MESSAGE _pRpcMessage,
4708 DWORD *_pdwStubPhase);
4711 HRESULT STDMETHODCALLTYPE IDXLookupTable_ApplyTables_Proxy(
4712 IDXLookupTable * This,
4713 /* [out][in] */ DXSAMPLE *pSamples,
4714 /* [in] */ ULONG cSamples);
4717 void __RPC_STUB IDXLookupTable_ApplyTables_Stub(
4718 IRpcStubBuffer *This,
4719 IRpcChannelBuffer *_pRpcChannelBuffer,
4720 PRPC_MESSAGE _pRpcMessage,
4721 DWORD *_pdwStubPhase);
4725 #endif /* __IDXLookupTable_INTERFACE_DEFINED__ */
4728 /* interface __MIDL_itf_dxtrans_0278 */
4729 /* [local] */
4731 typedef struct DXRAWSURFACEINFO
4733 BYTE *pFirstByte;
4734 long lPitch;
4735 ULONG Width;
4736 ULONG Height;
4737 const GUID *pPixelFormat;
4738 HDC hdc;
4739 DWORD dwColorKey;
4740 DXBASESAMPLE *pPalette;
4741 } DXRAWSURFACEINFO;
4745 extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0278_v0_0_c_ifspec;
4746 extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0278_v0_0_s_ifspec;
4748 #ifndef __IDXRawSurface_INTERFACE_DEFINED__
4749 #define __IDXRawSurface_INTERFACE_DEFINED__
4751 /* interface IDXRawSurface */
4752 /* [local][unique][helpstring][uuid][object] */
4755 EXTERN_C const IID IID_IDXRawSurface;
4757 #if defined(__cplusplus) && !defined(CINTERFACE)
4759 MIDL_INTERFACE("09756C8A-D96A-11d1-9062-00C04FD9189D")
4760 IDXRawSurface : public IUnknown
4762 public:
4763 virtual HRESULT STDMETHODCALLTYPE GetSurfaceInfo(
4764 DXRAWSURFACEINFO *pSurfaceInfo) = 0;
4768 #else /* C style interface */
4770 typedef struct IDXRawSurfaceVtbl
4772 BEGIN_INTERFACE
4774 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
4775 IDXRawSurface * This,
4776 /* [in] */ REFIID riid,
4777 /* [iid_is][out] */ void **ppvObject);
4779 ULONG ( STDMETHODCALLTYPE *AddRef )(
4780 IDXRawSurface * This);
4782 ULONG ( STDMETHODCALLTYPE *Release )(
4783 IDXRawSurface * This);
4785 HRESULT ( STDMETHODCALLTYPE *GetSurfaceInfo )(
4786 IDXRawSurface * This,
4787 DXRAWSURFACEINFO *pSurfaceInfo);
4789 END_INTERFACE
4790 } IDXRawSurfaceVtbl;
4792 interface IDXRawSurface
4794 CONST_VTBL struct IDXRawSurfaceVtbl *lpVtbl;
4799 #ifdef COBJMACROS
4802 #define IDXRawSurface_QueryInterface(This,riid,ppvObject) \
4803 (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
4805 #define IDXRawSurface_AddRef(This) \
4806 (This)->lpVtbl -> AddRef(This)
4808 #define IDXRawSurface_Release(This) \
4809 (This)->lpVtbl -> Release(This)
4812 #define IDXRawSurface_GetSurfaceInfo(This,pSurfaceInfo) \
4813 (This)->lpVtbl -> GetSurfaceInfo(This,pSurfaceInfo)
4815 #endif /* COBJMACROS */
4818 #endif /* C style interface */
4822 HRESULT STDMETHODCALLTYPE IDXRawSurface_GetSurfaceInfo_Proxy(
4823 IDXRawSurface * This,
4824 DXRAWSURFACEINFO *pSurfaceInfo);
4827 void __RPC_STUB IDXRawSurface_GetSurfaceInfo_Stub(
4828 IRpcStubBuffer *This,
4829 IRpcChannelBuffer *_pRpcChannelBuffer,
4830 PRPC_MESSAGE _pRpcMessage,
4831 DWORD *_pdwStubPhase);
4835 #endif /* __IDXRawSurface_INTERFACE_DEFINED__ */
4838 #ifndef __IHTMLDXTransform_INTERFACE_DEFINED__
4839 #define __IHTMLDXTransform_INTERFACE_DEFINED__
4841 /* interface IHTMLDXTransform */
4842 /* [local][unique][helpstring][uuid][object] */
4845 EXTERN_C const IID IID_IHTMLDXTransform;
4847 #if defined(__cplusplus) && !defined(CINTERFACE)
4849 MIDL_INTERFACE("30E2AB7D-4FDD-4159-B7EA-DC722BF4ADE5")
4850 IHTMLDXTransform : public IUnknown
4852 public:
4853 virtual HRESULT STDMETHODCALLTYPE SetHostUrl(
4854 BSTR bstrHostUrl) = 0;
4858 #else /* C style interface */
4860 typedef struct IHTMLDXTransformVtbl
4862 BEGIN_INTERFACE
4864 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
4865 IHTMLDXTransform * This,
4866 /* [in] */ REFIID riid,
4867 /* [iid_is][out] */ void **ppvObject);
4869 ULONG ( STDMETHODCALLTYPE *AddRef )(
4870 IHTMLDXTransform * This);
4872 ULONG ( STDMETHODCALLTYPE *Release )(
4873 IHTMLDXTransform * This);
4875 HRESULT ( STDMETHODCALLTYPE *SetHostUrl )(
4876 IHTMLDXTransform * This,
4877 BSTR bstrHostUrl);
4879 END_INTERFACE
4880 } IHTMLDXTransformVtbl;
4882 interface IHTMLDXTransform
4884 CONST_VTBL struct IHTMLDXTransformVtbl *lpVtbl;
4889 #ifdef COBJMACROS
4892 #define IHTMLDXTransform_QueryInterface(This,riid,ppvObject) \
4893 (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
4895 #define IHTMLDXTransform_AddRef(This) \
4896 (This)->lpVtbl -> AddRef(This)
4898 #define IHTMLDXTransform_Release(This) \
4899 (This)->lpVtbl -> Release(This)
4902 #define IHTMLDXTransform_SetHostUrl(This,bstrHostUrl) \
4903 (This)->lpVtbl -> SetHostUrl(This,bstrHostUrl)
4905 #endif /* COBJMACROS */
4908 #endif /* C style interface */
4912 HRESULT STDMETHODCALLTYPE IHTMLDXTransform_SetHostUrl_Proxy(
4913 IHTMLDXTransform * This,
4914 BSTR bstrHostUrl);
4917 void __RPC_STUB IHTMLDXTransform_SetHostUrl_Stub(
4918 IRpcStubBuffer *This,
4919 IRpcChannelBuffer *_pRpcChannelBuffer,
4920 PRPC_MESSAGE _pRpcMessage,
4921 DWORD *_pdwStubPhase);
4925 #endif /* __IHTMLDXTransform_INTERFACE_DEFINED__ */
4928 /* interface __MIDL_itf_dxtrans_0280 */
4929 /* [local] */
4931 typedef
4932 enum DXTFILTER_STATUS
4933 { DXTFILTER_STATUS_Stopped = 0,
4934 DXTFILTER_STATUS_Applied = DXTFILTER_STATUS_Stopped + 1,
4935 DXTFILTER_STATUS_Playing = DXTFILTER_STATUS_Applied + 1,
4936 DXTFILTER_STATUS_MAX = DXTFILTER_STATUS_Playing + 1
4937 } DXTFILTER_STATUS;
4939 typedef
4940 enum DXTFILTER_DISPID
4941 { DISPID_DXTFilter_Percent = 1,
4942 DISPID_DXTFilter_Duration = DISPID_DXTFilter_Percent + 1,
4943 DISPID_DXTFilter_Enabled = DISPID_DXTFilter_Duration + 1,
4944 DISPID_DXTFilter_Status = DISPID_DXTFilter_Enabled + 1,
4945 DISPID_DXTFilter_Apply = DISPID_DXTFilter_Status + 1,
4946 DISPID_DXTFilter_Play = DISPID_DXTFilter_Apply + 1,
4947 DISPID_DXTFilter_Stop = DISPID_DXTFilter_Play + 1,
4948 DISPID_DXTFilter_MAX = DISPID_DXTFilter_Stop + 1
4949 } DXTFILTER_DISPID;
4953 extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0280_v0_0_c_ifspec;
4954 extern RPC_IF_HANDLE __MIDL_itf_dxtrans_0280_v0_0_s_ifspec;
4956 #ifndef __ICSSFilterDispatch_INTERFACE_DEFINED__
4957 #define __ICSSFilterDispatch_INTERFACE_DEFINED__
4959 /* interface ICSSFilterDispatch */
4960 /* [dual][unique][helpstring][uuid][object] */
4963 EXTERN_C const IID IID_ICSSFilterDispatch;
4965 #if defined(__cplusplus) && !defined(CINTERFACE)
4967 MIDL_INTERFACE("9519152B-9484-4A6C-B6A7-4F25E92D6C6B")
4968 ICSSFilterDispatch : public IDispatch
4970 public:
4971 virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Percent(
4972 /* [retval][out] */ float *pVal) = 0;
4974 virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_Percent(
4975 /* [in] */ float newVal) = 0;
4977 virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Duration(
4978 /* [retval][out] */ float *pVal) = 0;
4980 virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_Duration(
4981 /* [in] */ float newVal) = 0;
4983 virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Enabled(
4984 /* [retval][out] */ VARIANT_BOOL *pfVal) = 0;
4986 virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_Enabled(
4987 /* [in] */ VARIANT_BOOL fVal) = 0;
4989 virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Status(
4990 /* [retval][out] */ DXTFILTER_STATUS *peVal) = 0;
4992 virtual /* [id] */ HRESULT STDMETHODCALLTYPE Apply( void) = 0;
4994 virtual /* [id] */ HRESULT STDMETHODCALLTYPE Play(
4995 /* [optional][in] */ VARIANT varDuration) = 0;
4997 virtual /* [id] */ HRESULT STDMETHODCALLTYPE Stop( void) = 0;
5001 #else /* C style interface */
5003 typedef struct ICSSFilterDispatchVtbl
5005 BEGIN_INTERFACE
5007 HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
5008 ICSSFilterDispatch * This,
5009 /* [in] */ REFIID riid,
5010 /* [iid_is][out] */ void **ppvObject);
5012 ULONG ( STDMETHODCALLTYPE *AddRef )(
5013 ICSSFilterDispatch * This);
5015 ULONG ( STDMETHODCALLTYPE *Release )(
5016 ICSSFilterDispatch * This);
5018 HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
5019 ICSSFilterDispatch * This,
5020 /* [out] */ UINT *pctinfo);
5022 HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
5023 ICSSFilterDispatch * This,
5024 /* [in] */ UINT iTInfo,
5025 /* [in] */ LCID lcid,
5026 /* [out] */ ITypeInfo **ppTInfo);
5028 HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
5029 ICSSFilterDispatch * This,
5030 /* [in] */ REFIID riid,
5031 /* [size_is][in] */ LPOLESTR *rgszNames,
5032 /* [in] */ UINT cNames,
5033 /* [in] */ LCID lcid,
5034 /* [size_is][out] */ DISPID *rgDispId);
5036 /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
5037 ICSSFilterDispatch * This,
5038 /* [in] */ DISPID dispIdMember,
5039 /* [in] */ REFIID riid,
5040 /* [in] */ LCID lcid,
5041 /* [in] */ WORD wFlags,
5042 /* [out][in] */ DISPPARAMS *pDispParams,
5043 /* [out] */ VARIANT *pVarResult,
5044 /* [out] */ EXCEPINFO *pExcepInfo,
5045 /* [out] */ UINT *puArgErr);
5047 /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Percent )(
5048 ICSSFilterDispatch * This,
5049 /* [retval][out] */ float *pVal);
5051 /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Percent )(
5052 ICSSFilterDispatch * This,
5053 /* [in] */ float newVal);
5055 /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Duration )(
5056 ICSSFilterDispatch * This,
5057 /* [retval][out] */ float *pVal);
5059 /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Duration )(
5060 ICSSFilterDispatch * This,
5061 /* [in] */ float newVal);
5063 /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Enabled )(
5064 ICSSFilterDispatch * This,
5065 /* [retval][out] */ VARIANT_BOOL *pfVal);
5067 /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Enabled )(
5068 ICSSFilterDispatch * This,
5069 /* [in] */ VARIANT_BOOL fVal);
5071 /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Status )(
5072 ICSSFilterDispatch * This,
5073 /* [retval][out] */ DXTFILTER_STATUS *peVal);
5075 /* [id] */ HRESULT ( STDMETHODCALLTYPE *Apply )(
5076 ICSSFilterDispatch * This);
5078 /* [id] */ HRESULT ( STDMETHODCALLTYPE *Play )(
5079 ICSSFilterDispatch * This,
5080 /* [optional][in] */ VARIANT varDuration);
5082 /* [id] */ HRESULT ( STDMETHODCALLTYPE *Stop )(
5083 ICSSFilterDispatch * This);
5085 END_INTERFACE
5086 } ICSSFilterDispatchVtbl;
5088 interface ICSSFilterDispatch
5090 CONST_VTBL struct ICSSFilterDispatchVtbl *lpVtbl;
5095 #ifdef COBJMACROS
5098 #define ICSSFilterDispatch_QueryInterface(This,riid,ppvObject) \
5099 (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
5101 #define ICSSFilterDispatch_AddRef(This) \
5102 (This)->lpVtbl -> AddRef(This)
5104 #define ICSSFilterDispatch_Release(This) \
5105 (This)->lpVtbl -> Release(This)
5108 #define ICSSFilterDispatch_GetTypeInfoCount(This,pctinfo) \
5109 (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
5111 #define ICSSFilterDispatch_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
5112 (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
5114 #define ICSSFilterDispatch_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
5115 (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
5117 #define ICSSFilterDispatch_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
5118 (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
5121 #define ICSSFilterDispatch_get_Percent(This,pVal) \
5122 (This)->lpVtbl -> get_Percent(This,pVal)
5124 #define ICSSFilterDispatch_put_Percent(This,newVal) \
5125 (This)->lpVtbl -> put_Percent(This,newVal)
5127 #define ICSSFilterDispatch_get_Duration(This,pVal) \
5128 (This)->lpVtbl -> get_Duration(This,pVal)
5130 #define ICSSFilterDispatch_put_Duration(This,newVal) \
5131 (This)->lpVtbl -> put_Duration(This,newVal)
5133 #define ICSSFilterDispatch_get_Enabled(This,pfVal) \
5134 (This)->lpVtbl -> get_Enabled(This,pfVal)
5136 #define ICSSFilterDispatch_put_Enabled(This,fVal) \
5137 (This)->lpVtbl -> put_Enabled(This,fVal)
5139 #define ICSSFilterDispatch_get_Status(This,peVal) \
5140 (This)->lpVtbl -> get_Status(This,peVal)
5142 #define ICSSFilterDispatch_Apply(This) \
5143 (This)->lpVtbl -> Apply(This)
5145 #define ICSSFilterDispatch_Play(This,varDuration) \
5146 (This)->lpVtbl -> Play(This,varDuration)
5148 #define ICSSFilterDispatch_Stop(This) \
5149 (This)->lpVtbl -> Stop(This)
5151 #endif /* COBJMACROS */
5154 #endif /* C style interface */
5158 /* [id][propget] */ HRESULT STDMETHODCALLTYPE ICSSFilterDispatch_get_Percent_Proxy(
5159 ICSSFilterDispatch * This,
5160 /* [retval][out] */ float *pVal);
5163 void __RPC_STUB ICSSFilterDispatch_get_Percent_Stub(
5164 IRpcStubBuffer *This,
5165 IRpcChannelBuffer *_pRpcChannelBuffer,
5166 PRPC_MESSAGE _pRpcMessage,
5167 DWORD *_pdwStubPhase);
5170 /* [id][propput] */ HRESULT STDMETHODCALLTYPE ICSSFilterDispatch_put_Percent_Proxy(
5171 ICSSFilterDispatch * This,
5172 /* [in] */ float newVal);
5175 void __RPC_STUB ICSSFilterDispatch_put_Percent_Stub(
5176 IRpcStubBuffer *This,
5177 IRpcChannelBuffer *_pRpcChannelBuffer,
5178 PRPC_MESSAGE _pRpcMessage,
5179 DWORD *_pdwStubPhase);
5182 /* [id][propget] */ HRESULT STDMETHODCALLTYPE ICSSFilterDispatch_get_Duration_Proxy(
5183 ICSSFilterDispatch * This,
5184 /* [retval][out] */ float *pVal);
5187 void __RPC_STUB ICSSFilterDispatch_get_Duration_Stub(
5188 IRpcStubBuffer *This,
5189 IRpcChannelBuffer *_pRpcChannelBuffer,
5190 PRPC_MESSAGE _pRpcMessage,
5191 DWORD *_pdwStubPhase);
5194 /* [id][propput] */ HRESULT STDMETHODCALLTYPE ICSSFilterDispatch_put_Duration_Proxy(
5195 ICSSFilterDispatch * This,
5196 /* [in] */ float newVal);
5199 void __RPC_STUB ICSSFilterDispatch_put_Duration_Stub(
5200 IRpcStubBuffer *This,
5201 IRpcChannelBuffer *_pRpcChannelBuffer,
5202 PRPC_MESSAGE _pRpcMessage,
5203 DWORD *_pdwStubPhase);
5206 /* [id][propget] */ HRESULT STDMETHODCALLTYPE ICSSFilterDispatch_get_Enabled_Proxy(
5207 ICSSFilterDispatch * This,
5208 /* [retval][out] */ VARIANT_BOOL *pfVal);
5211 void __RPC_STUB ICSSFilterDispatch_get_Enabled_Stub(
5212 IRpcStubBuffer *This,
5213 IRpcChannelBuffer *_pRpcChannelBuffer,
5214 PRPC_MESSAGE _pRpcMessage,
5215 DWORD *_pdwStubPhase);
5218 /* [id][propput] */ HRESULT STDMETHODCALLTYPE ICSSFilterDispatch_put_Enabled_Proxy(
5219 ICSSFilterDispatch * This,
5220 /* [in] */ VARIANT_BOOL fVal);
5223 void __RPC_STUB ICSSFilterDispatch_put_Enabled_Stub(
5224 IRpcStubBuffer *This,
5225 IRpcChannelBuffer *_pRpcChannelBuffer,
5226 PRPC_MESSAGE _pRpcMessage,
5227 DWORD *_pdwStubPhase);
5230 /* [id][propget] */ HRESULT STDMETHODCALLTYPE ICSSFilterDispatch_get_Status_Proxy(
5231 ICSSFilterDispatch * This,
5232 /* [retval][out] */ DXTFILTER_STATUS *peVal);
5235 void __RPC_STUB ICSSFilterDispatch_get_Status_Stub(
5236 IRpcStubBuffer *This,
5237 IRpcChannelBuffer *_pRpcChannelBuffer,
5238 PRPC_MESSAGE _pRpcMessage,
5239 DWORD *_pdwStubPhase);
5242 /* [id] */ HRESULT STDMETHODCALLTYPE ICSSFilterDispatch_Apply_Proxy(
5243 ICSSFilterDispatch * This);
5246 void __RPC_STUB ICSSFilterDispatch_Apply_Stub(
5247 IRpcStubBuffer *This,
5248 IRpcChannelBuffer *_pRpcChannelBuffer,
5249 PRPC_MESSAGE _pRpcMessage,
5250 DWORD *_pdwStubPhase);
5253 /* [id] */ HRESULT STDMETHODCALLTYPE ICSSFilterDispatch_Play_Proxy(
5254 ICSSFilterDispatch * This,
5255 /* [optional][in] */ VARIANT varDuration);
5258 void __RPC_STUB ICSSFilterDispatch_Play_Stub(
5259 IRpcStubBuffer *This,
5260 IRpcChannelBuffer *_pRpcChannelBuffer,
5261 PRPC_MESSAGE _pRpcMessage,
5262 DWORD *_pdwStubPhase);
5265 /* [id] */ HRESULT STDMETHODCALLTYPE ICSSFilterDispatch_Stop_Proxy(
5266 ICSSFilterDispatch * This);
5269 void __RPC_STUB ICSSFilterDispatch_Stop_Stub(
5270 IRpcStubBuffer *This,
5271 IRpcChannelBuffer *_pRpcChannelBuffer,
5272 PRPC_MESSAGE _pRpcMessage,
5273 DWORD *_pdwStubPhase);
5277 #endif /* __ICSSFilterDispatch_INTERFACE_DEFINED__ */
5281 #ifndef __DXTRANSLib_LIBRARY_DEFINED__
5282 #define __DXTRANSLib_LIBRARY_DEFINED__
5284 /* library DXTRANSLib */
5285 /* [helpstring][version][uuid] */
5288 EXTERN_C const IID LIBID_DXTRANSLib;
5290 EXTERN_C const CLSID CLSID_DXTransformFactory;
5292 #ifdef __cplusplus
5294 class DECLSPEC_UUID("D1FE6762-FC48-11D0-883A-3C8B00C10000")
5295 DXTransformFactory;
5296 #endif
5298 EXTERN_C const CLSID CLSID_DXTaskManager;
5300 #ifdef __cplusplus
5302 class DECLSPEC_UUID("4CB26C03-FF93-11d0-817E-0000F87557DB")
5303 DXTaskManager;
5304 #endif
5306 EXTERN_C const CLSID CLSID_DXTScale;
5308 #ifdef __cplusplus
5310 class DECLSPEC_UUID("555278E2-05DB-11D1-883A-3C8B00C10000")
5311 DXTScale;
5312 #endif
5314 EXTERN_C const CLSID CLSID_DXSurface;
5316 #ifdef __cplusplus
5318 class DECLSPEC_UUID("0E890F83-5F79-11D1-9043-00C04FD9189D")
5319 DXSurface;
5320 #endif
5322 EXTERN_C const CLSID CLSID_DXSurfaceModifier;
5324 #ifdef __cplusplus
5326 class DECLSPEC_UUID("3E669F1D-9C23-11d1-9053-00C04FD9189D")
5327 DXSurfaceModifier;
5328 #endif
5330 EXTERN_C const CLSID CLSID_DXGradient;
5332 #ifdef __cplusplus
5334 class DECLSPEC_UUID("C6365470-F667-11d1-9067-00C04FD9189D")
5335 DXGradient;
5336 #endif
5338 EXTERN_C const CLSID CLSID_DXTFilter;
5340 #ifdef __cplusplus
5342 class DECLSPEC_UUID("385A91BC-1E8A-4e4a-A7A6-F4FC1E6CA1BD")
5343 DXTFilter;
5344 #endif
5345 #endif /* __DXTRANSLib_LIBRARY_DEFINED__ */
5347 /* Additional Prototypes for ALL interfaces */
5349 unsigned long __RPC_USER VARIANT_UserSize( unsigned long *, unsigned long , VARIANT * );
5350 unsigned char * __RPC_USER VARIANT_UserMarshal( unsigned long *, unsigned char *, VARIANT * );
5351 unsigned char * __RPC_USER VARIANT_UserUnmarshal(unsigned long *, unsigned char *, VARIANT * );
5352 void __RPC_USER VARIANT_UserFree( unsigned long *, VARIANT * );
5354 /* end of Additional Prototypes */
5356 #ifdef __cplusplus
5358 #endif
5360 #endif