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