Fixing directx headers from wine, by adding alot of missing struct and
some struct was wrong.
Modified: trunk/reactos/w32api/include/ddk/ddrawi.h
Modified: trunk/reactos/w32api/include/ddk/ddrawint.h
Added: trunk/reactos/w32api/include/ddk/dvp.h
_____
Modified: trunk/reactos/w32api/include/ddk/ddrawi.h
--- trunk/reactos/w32api/include/ddk/ddrawi.h 2005-10-14 19:48:28 UTC
(rev 18456)
+++ trunk/reactos/w32api/include/ddk/ddrawi.h 2005-10-14 20:03:18 UTC
(rev 18457)
@@ -27,9 +27,9 @@
#endif
#include <ddraw.h>
+#include <dvp.h>
#ifndef __DDK_DDRAWINT_H
-typedef struct _DDVIDEOPORTCAPS *LPDDVIDEOPORTCAPS; /* should be in
dvp.h */
typedef struct _DDKERNELCAPS *LPDDKERNELCAPS; /* should be in
ddkernel.h */
typedef struct _VMEMHEAP *LPVMEMHEAP; /* should be in dmemmgr.h */
#endif
@@ -38,7 +38,7 @@
/* the DirectDraw versions */
#define DD_VERSION 0x0200 /* compatibility version */
-#define DD_RUNTIME_VERSION 0x0700 /* actual version */
+#define DD_RUNTIME_VERSION 0x0902 /* actual version */
/* the HAL version returned from QUERYESCSUPPORT - DCICOMMAND */
#define DD_HAL_VERSION 0x0100
@@ -49,6 +49,9 @@
#define DDNEWCALLBACKFNS 12
#define DDVERSIONINFO 13
+#ifndef CCHDEVICENAME
+#define CCHDEVICENAME 32
+#endif
#define MAX_DRIVER_NAME CCHDEVICENAME
@@ -125,6 +128,9 @@
DWORD dwAlphaBitMask;
} DDHALMODEINFO,*LPDDHALMODEINFO;
+
+
+
#define DDMODEINFO_PALETTIZED 0x0001
#define DDMODEINFO_MODEX 0x0002
#define DDMODEINFO_UNSUPPORTED 0x0004
@@ -141,15 +147,17 @@
union {
FLATPTR fpEnd;
DWORD dwWidth;
- } DUMMYUNIONNAME1;
+ };
DDSCAPS ddsCaps;
DDSCAPS ddsCapsAlt;
union {
LPVMEMHEAP lpHeap;
DWORD dwHeight;
- } DUMMYUNIONNAME2;
+ };
} VIDMEM,*LPVIDMEM;
+
+
#ifndef __DDK_DDRAWINT_H
#define VIDMEM_ISLINEAR 0x00000001
#define VIDMEM_ISRECTANGULAR 0x00000002
@@ -175,6 +183,8 @@
LPVIDMEM pvmList;
} VIDMEMINFO,*LPVIDMEMINFO;
+
+
typedef struct _HEAPALIAS {
FLATPTR fpVidMem;
LPVOID lpAlias;
@@ -257,10 +267,15 @@
DWORD dwNLVBRops[DD_ROP_SPACE];
} DDNONLOCALVIDMEMCAPS,*LPDDNONLOCALVIDMEMCAPS;
+
+
#define DDSCAPS_EXECUTEBUFFER DDSCAPS_RESERVED2
#define DDSCAPS2_VERTEXBUFFER DDSCAPS2_RESERVED1
#define DDSCAPS2_COMMANDBUFFER DDSCAPS2_RESERVED2
+
+
+
/***********************************************************************
******
* ddraw->driver callbacks
*/
@@ -290,6 +305,8 @@
typedef DWORD (PASCAL *LPDDHAL_SETEXCLUSIVEMODE)
(LPDDHAL_SETEXCLUSIVEMODEDATA);
typedef DWORD (PASCAL *LPDDHAL_FLIPTOGDISURFACE)
(LPDDHAL_FLIPTOGDISURFACEDATA);
+
+
typedef struct _DDHAL_DDCALLBACKS {
DWORD dwSize;
DWORD dwFlags;
@@ -306,6 +323,8 @@
LPDDHAL_FLIPTOGDISURFACE FlipToGDISurface;
} DDHAL_DDCALLBACKS,*LPDDHAL_DDCALLBACKS;
+
+
typedef struct _DDHAL_DESTROYSURFACEDATA
*LPDDHAL_DESTROYSURFACEDATA;
typedef struct _DDHAL_FLIPDATA *LPDDHAL_FLIPDATA;
typedef struct _DDHAL_SETCLIPLISTDATA
*LPDDHAL_SETCLIPLISTDATA;
@@ -353,6 +372,8 @@
LPDDHALSURFCB_SETPALETTE SetPalette;
} DDHAL_DDSURFACECALLBACKS,*LPDDHAL_DDSURFACECALLBACKS;
+
+
typedef struct _DDHAL_DESTROYPALETTEDATA
*LPDDHAL_DESTROYPALETTEDATA;
typedef struct _DDHAL_SETENTRIESDATA *LPDDHAL_SETENTRIESDATA;
@@ -416,8 +437,69 @@
LPDDHAL_DESTROYDDLOCAL DestroyDDLocal;
} DDHAL_DDMISCELLANEOUS2CALLBACKS,*LPDDHAL_DDMISCELLANEOUS2CALLBACKS;
+
+typedef struct _DDHAL_CANCREATEVPORTDATA
*LPDDHAL_CANCREATEVPORTDATA;
+typedef struct _DDHAL_CREATEVPORTDATA
*LPDDHAL_CREATEVPORTDATA;
+typedef struct _DDHAL_FLIPVPORTDATA *LPDDHAL_FLIPVPORTDATA;
+typedef struct _DDHAL_GETVPORTCONNECTDATA
*LPDDHAL_GETVPORTCONNECTDATA;
+typedef struct _DDHAL_GETVPORTBANDWIDTHDATA
*LPDDHAL_GETVPORTBANDWIDTHDATA;
+typedef struct _DDHAL_GETVPORTINPUTFORMATDATA
*LPDDHAL_GETVPORTINPUTFORMATDATA;
+typedef struct _DDHAL_GETVPORTOUTPUTFORMATDATA
*LPDDHAL_GETVPORTOUTPUTFORMATDATA;
+typedef struct _DDHAL_GETVPORTFIELDDATA
*LPDDHAL_GETVPORTFIELDDATA;
+typedef struct _DDHAL_GETVPORTLINEDATA
*LPDDHAL_GETVPORTLINEDATA;
+typedef struct _DDHAL_DESTROYVPORTDATA
*LPDDHAL_DESTROYVPORTDATA;
+typedef struct _DDHAL_GETVPORTFLIPSTATUSDATA
*LPDDHAL_GETVPORTFLIPSTATUSDATA;
+typedef struct _DDHAL_UPDATEVPORTDATA
*LPDDHAL_UPDATEVPORTDATA;
+typedef struct _DDHAL_WAITFORVPORTSYNCDATA
*LPDDHAL_WAITFORVPORTSYNCDATA;
+typedef struct _DDHAL_GETVPORTSIGNALDATA
*LPDDHAL_GETVPORTSIGNALDATA;
+typedef struct _DDHAL_VPORTCOLORDATA *LPDDHAL_VPORTCOLORDATA;
+
+typedef DWORD (PASCAL
*LPDDHALVPORTCB_CANCREATEVIDEOPORT)(LPDDHAL_CANCREATEVPORTDATA);
+typedef DWORD (PASCAL
*LPDDHALVPORTCB_CREATEVIDEOPORT)(LPDDHAL_CREATEVPORTDATA);
+typedef DWORD (PASCAL *LPDDHALVPORTCB_FLIP)(LPDDHAL_FLIPVPORTDATA);
+typedef DWORD (PASCAL
*LPDDHALVPORTCB_GETBANDWIDTH)(LPDDHAL_GETVPORTBANDWIDTHDATA);
+typedef DWORD (PASCAL
*LPDDHALVPORTCB_GETINPUTFORMATS)(LPDDHAL_GETVPORTINPUTFORMATDATA);
+typedef DWORD (PASCAL
*LPDDHALVPORTCB_GETOUTPUTFORMATS)(LPDDHAL_GETVPORTOUTPUTFORMATDATA);
+typedef DWORD (PASCAL
*LPDDHALVPORTCB_GETFIELD)(LPDDHAL_GETVPORTFIELDDATA);
+typedef DWORD (PASCAL
*LPDDHALVPORTCB_GETLINE)(LPDDHAL_GETVPORTLINEDATA);
+typedef DWORD (PASCAL
*LPDDHALVPORTCB_GETVPORTCONNECT)(LPDDHAL_GETVPORTCONNECTDATA);
+typedef DWORD (PASCAL
*LPDDHALVPORTCB_DESTROYVPORT)(LPDDHAL_DESTROYVPORTDATA);
+typedef DWORD (PASCAL
*LPDDHALVPORTCB_GETFLIPSTATUS)(LPDDHAL_GETVPORTFLIPSTATUSDATA);
+typedef DWORD (PASCAL *LPDDHALVPORTCB_UPDATE)(LPDDHAL_UPDATEVPORTDATA);
+typedef DWORD (PASCAL
*LPDDHALVPORTCB_WAITFORSYNC)(LPDDHAL_WAITFORVPORTSYNCDATA);
+typedef DWORD (PASCAL
*LPDDHALVPORTCB_GETSIGNALSTATUS)(LPDDHAL_GETVPORTSIGNALDATA);
+typedef DWORD (PASCAL
*LPDDHALVPORTCB_COLORCONTROL)(LPDDHAL_VPORTCOLORDATA);
+
+typedef struct _DDHAL_DDVIDEOPORTCALLBACKS
+{
+ DWORD dwSize;
+ DWORD dwFlags;
+ LPDDHALVPORTCB_CANCREATEVIDEOPORT CanCreateVideoPort;
+ LPDDHALVPORTCB_CREATEVIDEOPORT CreateVideoPort;
+ LPDDHALVPORTCB_FLIP FlipVideoPort;
+ LPDDHALVPORTCB_GETBANDWIDTH GetVideoPortBandwidth;
+ LPDDHALVPORTCB_GETINPUTFORMATS GetVideoPortInputFormats;
+ LPDDHALVPORTCB_GETOUTPUTFORMATS GetVideoPortOutputFormats;
+ LPVOID lpReserved1;
+ LPDDHALVPORTCB_GETFIELD GetVideoPortField;
+ LPDDHALVPORTCB_GETLINE GetVideoPortLine;
+ LPDDHALVPORTCB_GETVPORTCONNECT GetVideoPortConnectInfo;
+ LPDDHALVPORTCB_DESTROYVPORT DestroyVideoPort;
+ LPDDHALVPORTCB_GETFLIPSTATUS GetVideoPortFlipStatus;
+ LPDDHALVPORTCB_UPDATE UpdateVideoPort;
+ LPDDHALVPORTCB_WAITFORSYNC WaitForVideoPortSync;
+ LPDDHALVPORTCB_GETSIGNALSTATUS GetVideoSignalStatus;
+ LPDDHALVPORTCB_COLORCONTROL ColorControl;
+} DDHAL_DDVIDEOPORTCALLBACKS;
+
+
+
+
+
typedef HRESULT (WINAPI *LPDDGAMMACALIBRATORPROC)(LPDDGAMMARAMP,
LPBYTE);
+
+
/***********************************************************************
******
* driver info structure
*
@@ -448,25 +530,37 @@
LPDDHAL_DDEXEBUFCALLBACKS lpDDExeBufCallbacks;
} DDHALINFO;
+
+
#define DDHALINFO_ISPRIMARYDISPLAY 0x00000001
#define DDHALINFO_MODEXILLEGAL 0x00000002
#define DDHALINFO_GETDRIVERINFOSET 0x00000004
+#define DDHALINFO_GETDRIVERINFO2 0x00000008
/* where the high-level ddraw implementation stores the callbacks */
typedef struct _DDHAL_CALLBACKS {
- DDHAL_DDCALLBACKS cbDDCallbacks;
- DDHAL_DDSURFACECALLBACKS cbDDSurfaceCallbacks;
- DDHAL_DDPALETTECALLBACKS cbDDPaletteCallbacks;
- DDHAL_DDCALLBACKS HALDD;
- DDHAL_DDSURFACECALLBACKS HALDDSurface;
- DDHAL_DDPALETTECALLBACKS HALDDPalette;
- DDHAL_DDCALLBACKS HELDD;
- DDHAL_DDSURFACECALLBACKS HELDDSurface;
- DDHAL_DDPALETTECALLBACKS HELDDPalette;
- DDHAL_DDEXEBUFCALLBACKS cbDDExeBufCallbacks;
- DDHAL_DDEXEBUFCALLBACKS HALDDExeBuf;
- DDHAL_DDEXEBUFCALLBACKS HELDDExeBuf;
- /* there's more... videoport, colorcontrol, misc, and motion
compensation callbacks... */
+ DDHAL_DDCALLBACKS cbDDCallbacks;
+ DDHAL_DDSURFACECALLBACKS cbDDSurfaceCallbacks;
+ DDHAL_DDPALETTECALLBACKS cbDDPaletteCallbacks;
+ DDHAL_DDCALLBACKS HALDD;
+ DDHAL_DDSURFACECALLBACKS HALDDSurface;
+ DDHAL_DDPALETTECALLBACKS HALDDPalette;
+ DDHAL_DDCALLBACKS HELDD;
+ DDHAL_DDSURFACECALLBACKS HELDDSurface;
+ DDHAL_DDPALETTECALLBACKS HELDDPalette;
+ DDHAL_DDEXEBUFCALLBACKS cbDDExeBufCallbacks;
+ DDHAL_DDEXEBUFCALLBACKS HALDDExeBuf;
+ DDHAL_DDEXEBUFCALLBACKS HELDDExeBuf;
+ DDHAL_DDVIDEOPORTCALLBACKS cbDDVideoPortCallbacks;
+ DDHAL_DDVIDEOPORTCALLBACKS HALDDVideoPort;
+// DDHAL_DDCOLORCONTROLCALLBACKS cbDDColorControlCallbacks;
+// DDHAL_DDCOLORCONTROLCALLBACKS HALDDColorControl;
+ DDHAL_DDMISCELLANEOUSCALLBACKS cbDDMiscellaneousCallbacks;
+ DDHAL_DDMISCELLANEOUSCALLBACKS HALDDMiscellaneous;
+// DDHAL_DDKERNELCALLBACKS cbDDKernelCallbacks;
+// DDHAL_DDKERNELCALLBACKS HALDDKernel;
+// DDHAL_DDMOTIONCOMPCALLBACKS cbDDMotionCompCallbacks;
+// DDHAL_DDMOTIONCOMPCALLBACKS HALDDMotionComp;
} DDHAL_CALLBACKS,*LPDDHAL_CALLBACKS;
/***********************************************************************
******
@@ -603,17 +697,138 @@
LPDDHALPALCB_SETENTRIES SetEntries;
} DDHAL_SETENTRIESDATA;
-typedef struct _DDHAL_GETDRIVERINFODATA {
- DWORD dwSize;
- DWORD dwFlags;
- GUID guidInfo;
- DWORD dwExpectedSize;
- LPVOID lpvData;
- DWORD dwActualSize;
- HRESULT ddRVal;
- ULONG_PTR dwContext;
-} DDHAL_GETDRIVERINFODATA;
+typedef struct _DDHAL_CANCREATEVPORTDATA
+{
+ LPDDRAWI_DIRECTDRAW_LCL lpDD;
+ LPDDVIDEOPORTDESC lpDDVideoPortDesc;
+ HRESULT ddRVal;
+ LPDDHALVPORTCB_CANCREATEVIDEOPORT CanCreateVideoPort;
+} DDHAL_CANCREATEVPORTDATA;
+typedef struct _DDHAL_CREATEVPORTDATA
+{
+ LPDDRAWI_DIRECTDRAW_LCL lpDD;
+ LPDDVIDEOPORTDESC lpDDVideoPortDesc;
+ LPDDRAWI_DDVIDEOPORT_LCL lpVideoPort;
+ HRESULT ddRVal;
+ LPDDHALVPORTCB_CREATEVIDEOPORT CreateVideoPort;
+} DDHAL_CREATEVPORTDATA;
+
+typedef struct _DDHAL_GETVPORTBANDWIDTHDATA
+{
+ LPDDRAWI_DIRECTDRAW_LCL lpDD;
+ LPDDRAWI_DDVIDEOPORT_LCL lpVideoPort;
+ LPDDPIXELFORMAT lpddpfFormat;
+ DWORD dwWidth;
+ DWORD dwHeight;
+ DWORD dwFlags;
+ LPDDVIDEOPORTBANDWIDTH lpBandwidth;
+ HRESULT ddRVal;
+ LPDDHALVPORTCB_GETBANDWIDTH GetVideoPortBandwidth;
+} DDHAL_GETVPORTBANDWIDTHDATA;
+
+typedef struct _DDHAL_GETVPORTINPUTFORMATDATA
+{
+ LPDDRAWI_DIRECTDRAW_LCL lpDD;
+ LPDDRAWI_DDVIDEOPORT_LCL lpVideoPort;
+ DWORD dwFlags;
+ LPDDPIXELFORMAT lpddpfFormat;
+ DWORD dwNumFormats;
+ HRESULT ddRVal;
+ LPDDHALVPORTCB_GETINPUTFORMATS GetVideoPortInputFormats;
+} DDHAL_GETVPORTINPUTFORMATDATA;
+
+typedef struct _DDHAL_GETVPORTFIELDDATA
+{
+ LPDDRAWI_DIRECTDRAW_LCL lpDD;
+ LPDDRAWI_DDVIDEOPORT_LCL lpVideoPort;
+ BOOL bField;
+ HRESULT ddRVal;
+ LPDDHALVPORTCB_GETFIELD GetVideoPortField;
+} DDHAL_GETVPORTFIELDDATA;
+
+typedef struct _DDHAL_GETVPORTOUTPUTFORMATDATA
+{
+ LPDDRAWI_DIRECTDRAW_LCL lpDD;
+ LPDDRAWI_DDVIDEOPORT_LCL lpVideoPort;
+ DWORD dwFlags;
+ LPDDPIXELFORMAT lpddpfInputFormat;
+ LPDDPIXELFORMAT lpddpfOutputFormats;
+ DWORD dwNumFormats;
+ HRESULT ddRVal;
+ LPDDHALVPORTCB_GETOUTPUTFORMATS GetVideoPortOutputFormats;
+} DDHAL_GETVPORTOUTPUTFORMATDATA;
+
+typedef struct _DDHAL_GETVPORTLINEDATA
+{
+ LPDDRAWI_DIRECTDRAW_LCL lpDD;
+ LPDDRAWI_DDVIDEOPORT_LCL lpVideoPort;
+ DWORD dwLine;
+ HRESULT ddRVal;
+ LPDDHALVPORTCB_GETLINE GetVideoPortLine;
+} DDHAL_GETVPORTLINEDATA;
+
+typedef struct _DDHAL_DESTROYVPORTDATA
+{
+ LPDDRAWI_DIRECTDRAW_LCL lpDD;
+ LPDDRAWI_DDVIDEOPORT_LCL lpVideoPort;
+ HRESULT ddRVal;
+ LPDDHALVPORTCB_DESTROYVPORT DestroyVideoPort;
+} DDHAL_DESTROYVPORTDATA;
+
+typedef struct _DDHAL_GETVPORTFLIPSTATUSDATA
+{
+ LPDDRAWI_DIRECTDRAW_LCL lpDD;
+ FLATPTR fpSurface;
+ HRESULT ddRVal;
+ LPDDHALVPORTCB_GETFLIPSTATUS GetVideoPortFlipStatus;
+} DDHAL_GETVPORTFLIPSTATUSDATA;
+
+typedef struct _DDHAL_UPDATEVPORTDATA
+{
+ LPDDRAWI_DIRECTDRAW_LCL lpDD;
+ LPDDRAWI_DDVIDEOPORT_LCL lpVideoPort;
+ LPDDRAWI_DDRAWSURFACE_INT *lplpDDSurface;
+ LPDDRAWI_DDRAWSURFACE_INT *lplpDDVBISurface;
+ LPDDVIDEOPORTINFO lpVideoInfo;
+ DWORD dwFlags;
+ DWORD dwNumAutoflip;
+ DWORD dwNumVBIAutoflip;
+ HRESULT ddRVal;
+ LPDDHALVPORTCB_UPDATE UpdateVideoPort;
+} DDHAL_UPDATEVPORTDATA;
+
+typedef struct _DDHAL_WAITFORVPORTSYNCDATA
+{
+ LPDDRAWI_DIRECTDRAW_LCL lpDD;
+ LPDDRAWI_DDVIDEOPORT_LCL lpVideoPort;
+ DWORD dwFlags;
+ DWORD dwLine;
+ DWORD dwTimeOut;
+ HRESULT ddRVal;
+ LPDDHALVPORTCB_WAITFORSYNC WaitForVideoPortSync;
+} DDHAL_WAITFORVPORTSYNCDATA;
+
+typedef struct _DDHAL_GETVPORTSIGNALDATA
+{
+ LPDDRAWI_DIRECTDRAW_LCL lpDD;
+ LPDDRAWI_DDVIDEOPORT_LCL lpVideoPort;
+ DWORD dwStatus;
+ HRESULT ddRVal;
+ LPDDHALVPORTCB_GETSIGNALSTATUS GetVideoSignalStatus;
+} DDHAL_GETVPORTSIGNALDATA;
+
+typedef struct _DDHAL_VPORTCOLORDATA
+{
+ LPDDRAWI_DIRECTDRAW_LCL lpDD;
+ LPDDRAWI_DDVIDEOPORT_LCL lpVideoPort;
+ DWORD dwFlags;
+ LPDDCOLORCONTROL lpColorData;
+ HRESULT ddRVal;
+ LPDDHALVPORTCB_COLORCONTROL ColorControl;
+} DDHAL_VPORTCOLORDATA;
+
+
/***********************************************************************
******
* high-level ddraw implementation structures
*/
@@ -1159,6 +1374,8 @@
LPDDHALSURFCB_ADDATTACHEDSURFACE AddAttachedSurface;
} DDHAL_ADDATTACHEDSURFACEDATA;
+
+
typedef struct _DDHAL_BEGINMOCOMPFRAMEDATA
{
LPDDRAWI_DIRECTDRAW_LCL lpDD;
_____
Modified: trunk/reactos/w32api/include/ddk/ddrawint.h
--- trunk/reactos/w32api/include/ddk/ddrawint.h 2005-10-14 19:48:28 UTC
(rev 18456)
+++ trunk/reactos/w32api/include/ddk/ddrawint.h 2005-10-14 20:03:18 UTC
(rev 18457)
@@ -25,10 +25,6 @@
#endif
// FIXME: These should have been defined in other header files!
-typedef struct _DDVIDEOPORTDESC *LPDDVIDEOPORTDESC; /* should be
in dvp.h */
-typedef struct _DDVIDEOPORTBANDWIDTH *LPDDVIDEOPORTBANDWIDTH; /* should
be in dvp.h */
-typedef struct _DDVIDEOPORTCONNECT *LPDDVIDEOPORTCONNECT; /* should
be in dvp.h */
-typedef struct _DDVIDEOPORTINFO *LPDDVIDEOPORTINFO; /* should be
in dvp.h */
typedef struct _DD_VIDEOPORT_LOCAL *PDD_VIDEOPORT_LOCAL; /* should be
defined here once we have dvp.h */
@@ -523,7 +519,7 @@
PVOID GetAvailDriverMemory;
} DD_GETAVAILDRIVERMEMORYDATA, *PDD_GETAVAILDRIVERMEMORYDATA;
typedef DWORD (STDCALL
*PDD_GETAVAILDRIVERMEMORY)(PDD_GETAVAILDRIVERMEMORYDATA);
-
+
DEFINE_GUID(GUID_MiscellaneousCallbacks, 0xEFD60CC0, 0x49E7, 0x11D0,
0x88, 0x9D, 0x00, 0xAA, 0x00, 0xBB, 0xB7, 0x6A);
typedef struct
_____
Added: trunk/reactos/w32api/include/ddk/dvp.h
--- trunk/reactos/w32api/include/ddk/dvp.h 2005-10-14 19:48:28 UTC
(rev 18456)
+++ trunk/reactos/w32api/include/ddk/dvp.h 2005-10-14 20:03:18 UTC
(rev 18457)
@@ -0,0 +1,131 @@
+
+/* $Id: $
+ *
+ * COPYRIGHT: See COPYING in the top level directory
+ * PROJECT: ReactOS kernel
+ * FILE:
+ * PURPOSE: Directx headers
+ * PROGRAMMER: Magnus Olsen (greatlrd)
+ *
+ */
+
+#ifndef __DVP_INCLUDED__
+#define __DVP_INCLUDED__
+
+DEFINE_GUID( IID_IDDVideoPortContainer,
0x6C142760,0xA733,0x11CE,0xA5,0x21,0x00,0x20,0xAF,0x0B,0xE5,0x60 );
+DEFINE_GUID( IID_IDirectDrawVideoPort,
0xB36D93E0,0x2B43,0x11CF,0xA2,0xDE,0x00,0xAA,0x00,0xB9,0x33,0x56 );
+DEFINE_GUID( IID_IDirectDrawVideoPortNotify,
0xA655FB94,0x0589,0x4E57,0xB3,0x33,0x56,0x7A,0x89,0x46,0x8C,0x88);
+
+DEFINE_GUID( DDVPTYPE_E_HREFH_VREFH,
0x54F39980L,0xDA60,0x11CF,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
+DEFINE_GUID( DDVPTYPE_E_HREFH_VREFL,
0x92783220L,0xDA60,0x11CF,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
+DEFINE_GUID( DDVPTYPE_E_HREFL_VREFH,
0xA07A02E0L,0xDA60,0x11CF,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
+DEFINE_GUID( DDVPTYPE_E_HREFL_VREFL,
0xE09C77E0L,0xDA60,0x11CF,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
+DEFINE_GUID( DDVPTYPE_CCIR656,
0xFCA326A0L,0xDA60,0x11CF,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
+DEFINE_GUID( DDVPTYPE_BROOKTREE,
0x1352A560L,0xDA61,0x11CF,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
+DEFINE_GUID( DDVPTYPE_PHILIPS,
0x332CF160L,0xDA61,0x11CF,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
+
+
+typedef struct _DDVIDEOPORTCONNECT
+{
+ DWORD dwSize;
+ DWORD dwPortWidth;
+ GUID guidTypeID;
+ DWORD dwFlags;
+ ULONG_PTR dwReserved1;
+} DDVIDEOPORTCONNECT;
+
+typedef struct _DDVIDEOPORTDESC {
+ DWORD dwSize;
+ DWORD dwFieldWidth;
+ DWORD dwVBIWidth;
+ DWORD dwFieldHeight;
+ DWORD dwMicrosecondsPerField;
+ DWORD dwMaxPixelsPerSecond;
+ DWORD dwVideoPortID;
+ DWORD dwReserved1;
+ DDVIDEOPORTCONNECT VideoPortType;
+ ULONG_PTR dwReserved2;
+ ULONG_PTR dwReserved3;
+} DDVIDEOPORTDESC;
+
+typedef struct _DDVIDEOPORTBANDWIDTH
+{
+ DWORD dwSize;
+ DWORD dwOverlay;
+ DWORD dwColorkey;
+ DWORD dwYInterpolate;
+ DWORD dwYInterpAndColorkey;
+ ULONG_PTR dwReserved1;
+ ULONG_PTR dwReserved2;
+} DDVIDEOPORTBANDWIDTH;
+
+typedef struct _DDVIDEOPORTCAPS
+{
+ DWORD dwSize;
+ DWORD dwFlags;
+ DWORD dwMaxWidth;
+ DWORD dwMaxVBIWidth;
+ DWORD dwMaxHeight;
+ DWORD dwVideoPortID;
+ DWORD dwCaps;
+ DWORD dwFX;
+ DWORD dwNumAutoFlipSurfaces;
+ DWORD dwAlignVideoPortBoundary;
+ DWORD dwAlignVideoPortPrescaleWidth;
+ DWORD dwAlignVideoPortCropBoundary;
+ DWORD dwAlignVideoPortCropWidth;
+ DWORD dwPreshrinkXStep;
+ DWORD dwPreshrinkYStep;
+ DWORD dwNumVBIAutoFlipSurfaces;
+ DWORD dwNumPreferredAutoflip;
+ WORD wNumFilterTapsX;
+ WORD wNumFilterTapsY;
+} DDVIDEOPORTCAPS;
+
+typedef struct _DDVIDEOPORTINFO
+{
+ DWORD dwSize;
+ DWORD dwOriginX;
+ DWORD dwOriginY;
+ DWORD dwVPFlags;
+ RECT rCrop;
+ DWORD dwPrescaleWidth;
+ DWORD dwPrescaleHeight;
+ LPDDPIXELFORMAT lpddpfInputFormat;
+ LPDDPIXELFORMAT lpddpfVBIInputFormat;
+ LPDDPIXELFORMAT lpddpfVBIOutputFormat;
+ DWORD dwVBIHeight;
+ ULONG_PTR dwReserved1;
+ ULONG_PTR dwReserved2;
+} DDVIDEOPORTINFO;
+
+typedef struct _DDVIDEOPORTSTATUS
+{
+ DWORD dwSize;
+ BOOL bInUse;
+ DWORD dwFlags;
+ DWORD dwReserved1;
+ DDVIDEOPORTCONNECT VideoPortType;
+ ULONG_PTR dwReserved2;
+ ULONG_PTR dwReserved3;
+} DDVIDEOPORTSTATUS;
+
+typedef struct _DDVIDEOPORTNOTIFY
+{
+ LARGE_INTEGER ApproximateTimeStamp;
+ LONG lField;
+ UINT dwSurfaceIndex;
+ LONG lDone;
+} DDVIDEOPORTNOTIFY;
+
+
+
+typedef struct _DDVIDEOPORTCONNECT *LPDDVIDEOPORTCONNECT;
+typedef struct _DDVIDEOPORTCAPS *LPDDVIDEOPORTCAPS;
+typedef struct _DDVIDEOPORTDESC *LPDDVIDEOPORTDESC;
+typedef struct _DDVIDEOPORTINFO *LPDDVIDEOPORTINFO;
+typedef struct _DDVIDEOPORTBANDWIDTH *LPDDVIDEOPORTBANDWIDTH;
+typedef struct _DDVIDEOPORTSTATUS *LPDDVIDEOPORTSTATUS;
+typedef struct _DDVIDEOPORTNOTIFY *LPDDVIDEOPORTNOTIFY;
+
+#endif