10#ifndef __DVP_INCLUDED__
11#define __DVP_INCLUDED__
12#if defined( _WIN32 ) && !defined( _NO_COM )
13#define COM_NO_WINDOWS_H
17#undef CO_E_NOTINITIALIZED
18#define CO_E_NOTINITIALIZED 0x800401F0L
28#if defined( _WIN32 ) && !defined( _NO_COM )
29DEFINE_GUID( IID_IDDVideoPortContainer, 0x6C142760,0xA733,0x11CE,0xA5,0x21,0x00,0x20,0xAF,0x0B,0xE5,0x60 );
30DEFINE_GUID( IID_IDirectDrawVideoPort, 0xB36D93E0,0x2B43,0x11CF,0xA2,0xDE,0x00,0xAA,0x00,0xB9,0x33,0x56 );
32DEFINE_GUID( DDVPTYPE_E_HREFH_VREFH, 0x54F39980L,0xDA60,0x11CF,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
33DEFINE_GUID( DDVPTYPE_E_HREFH_VREFL, 0x92783220L,0xDA60,0x11CF,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
34DEFINE_GUID( DDVPTYPE_E_HREFL_VREFH, 0xA07A02E0L,0xDA60,0x11CF,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
35DEFINE_GUID( DDVPTYPE_E_HREFL_VREFL, 0xE09C77E0L,0xDA60,0x11CF,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
36DEFINE_GUID( DDVPTYPE_CCIR656, 0xFCA326A0L,0xDA60,0x11CF,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
37DEFINE_GUID( DDVPTYPE_BROOKTREE, 0x1352A560L,0xDA61,0x11CF,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
38DEFINE_GUID( DDVPTYPE_PHILIPS, 0x332CF160L,0xDA61,0x11CF,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
55struct IDirectDrawSurface;
56struct IDirectDrawPalette;
57struct IDirectDrawClipper;
88#if defined( _WIN32 ) && !defined( _NO_COM )
90#define INTERFACE IDDVideoPortContainer
94 STDMETHOD(QueryInterface) (THIS_ REFIID riid,
LPVOID FAR * ppvObj) PURE;
95 STDMETHOD_(ULONG,AddRef) (THIS) PURE;
96 STDMETHOD_(ULONG,Release) (THIS) PURE;
104#if !defined(__cplusplus) || defined(CINTERFACE)
105#define IVideoPortContainer_QueryInterface(p, a, b) (p)->lpVtbl->QueryInterface(p, a, b)
106#define IVideoPortContainer_AddRef(p) (p)->lpVtbl->AddRef(p)
107#define IVideoPortContainer_Release(p) (p)->lpVtbl->Release(p)
108#define IVideoPortContainer_CreateVideoPort(p, a, b, c, d) (p)->lpVtbl->CreateVideoPort(p, a, b, c, d)
109#define IVideoPortContainer_EnumVideoPorts(p, a, b, c, d) (p)->lpVtbl->EnumVideoPorts(p, a, b, c, d)
110#define IVideoPortContainer_GetVideoPortConnectInfo(p, a, b, c) (p)->lpVtbl->GetVideoPortConnectInfo(p, a, b, c)
111#define IVideoPortContainer_QueryVideoPortStatus(p, a, b) (p)->lpVtbl->QueryVideoPortStatus(p, a, b)
113#define IVideoPortContainer_QueryInterface(p, a, b) (p)->QueryInterface(a, b)
114#define IVideoPortContainer_AddRef(p) (p)->AddRef()
115#define IVideoPortContainer_Release(p) (p)->Release()
116#define IVideoPortContainer_CreateVideoPort(p, a, b, c, d) (p)->CreateVideoPort(a, b, c, d)
117#define IVideoPortContainer_EnumVideoPorts(p, a, b, c, d) (p)->EnumVideoPorts(a, b, c, d)
118#define IVideoPortContainer_GetVideoPortConnectInfo(p, a, b, c) (p)->GetVideoPortConnectInfo(a, b, c)
119#define IVideoPortContainer_QueryVideoPortStatus(p, a, b) (p)->QueryVideoPortStatus(a, b)
128#if defined( _WIN32 ) && !defined( _NO_COM )
130#define INTERFACE IDirectDrawVideoPort
134 STDMETHOD(QueryInterface) (THIS_ REFIID riid,
LPVOID FAR * ppvObj) PURE;
135 STDMETHOD_(ULONG,AddRef) (THIS) PURE;
136 STDMETHOD_(ULONG,Release) (THIS) PURE;
143 STDMETHOD(GetFieldPolarity)(THIS_ LPBOOL) PURE;
144 STDMETHOD(GetVideoLine)(THIS_ LPDWORD) PURE;
145 STDMETHOD(GetVideoSignalStatus)(THIS_ LPDWORD) PURE;
149 STDMETHOD(StopVideo)(THIS) PURE;
154#if !defined(__cplusplus) || defined(CINTERFACE)
155#define IVideoPort_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
156#define IVideoPort_AddRef(p) (p)->lpVtbl->AddRef(p)
157#define IVideoPort_Release(p) (p)->lpVtbl->Release(p)
158#define IVideoPort_SetTargetSurface(p,a,b) (p)->lpVtbl->SetTargetSurface(p,a,b)
159#define IVideoPort_Flip(p,a,b) (p)->lpVtbl->Flip(p,a,b)
160#define IVideoPort_GetBandwidthInfo(p,a,b,c,d,e) (p)->lpVtbl->GetBandwidthInfo(p,a,b,c,d,e)
161#define IVideoPort_GetColorControls(p,a) (p)->lpVtbl->GetColorControls(p,a)
162#define IVideoPort_GetInputFormats(p,a,b,c) (p)->lpVtbl->GetInputFormats(p,a,b,c)
163#define IVideoPort_GetOutputFormats(p,a,b,c,d) (p)->lpVtbl->GetOutputFormats(p,a,b,c,d)
164#define IVideoPort_GetFieldPolarity(p,a) (p)->lpVtbl->GetFieldPolarity(p,a)
165#define IVideoPort_GetVideoLine(p,a) (p)->lpVtbl->GetVideoLine(p,a)
166#define IVideoPort_GetVideoSignalStatus(p,a) (p)->lpVtbl->GetVideoSignalStatus(p,a)
167#define IVideoPort_SetColorControls(p,a) (p)->lpVtbl->SetColorControls(p,a)
168#define IVideoPort_StartVideo(p,a) (p)->lpVtbl->StartVideo(p,a)
169#define IVideoPort_StopVideo(p) (p)->lpVtbl->StopVideo(p)
170#define IVideoPort_UpdateVideo(p,a) (p)->lpVtbl->UpdateVideo(p,a)
171#define IVideoPort_WaitForSync(p,a,b,c) (p)->lpVtbl->WaitForSync(p,a,b,c)
173#define IVideoPort_QueryInterface(p,a,b) (p)->QueryInterface(a,b)
174#define IVideoPort_AddRef(p) (p)->AddRef()
175#define IVideoPort_Release(p) (p)->Release()
176#define IVideoPort_SetTargetSurface(p,a,b) (p)->SetTargetSurface(a,b)
177#define IVideoPort_Flip(p,a,b) (p)->Flip(a,b)
178#define IVideoPort_GetBandwidthInfo(p,a,b,c,d,e) (p)->GetBandwidthInfo(a,b,c,d,e)
179#define IVideoPort_GetColorControls(p,a) (p)->GetColorControls(a)
180#define IVideoPort_GetInputFormats(p,a,b,c) (p)->GetInputFormats(a,b,c)
181#define IVideoPort_GetOutputFormats(p,a,b,c,d) (p)->GetOutputFormats(a,b,c,d)
182#define IVideoPort_GetFieldPolarity(p,a) (p)->GetFieldPolarity(a)
183#define IVideoPort_GetVideoLine(p,a) (p)->GetVideoLine(a)
184#define IVideoPort_GetVideoSignalStatus(p,a) (p)->GetVideoSignalStatus(a)
185#define IVideoPort_SetColorControls(p,a) (p)->SetColorControls(a)
186#define IVideoPort_StartVideo(p,a) (p)->StartVideo(a)
187#define IVideoPort_StopVideo(p) (p)->StopVideo()
188#define IVideoPort_UpdateVideo(p,a) (p)->UpdateVideo(a)
189#define IVideoPort_WaitForSync(p,a,b,c) (p)->WaitForSync(a,b,c)
236#define DDVPD_WIDTH 0x00000001l
241#define DDVPD_HEIGHT 0x00000002l
246#define DDVPD_ID 0x00000004l
251#define DDVPD_CAPS 0x00000008l
256#define DDVPD_FX 0x00000010l
261#define DDVPD_AUTOFLIP 0x00000020l
266#define DDVPD_ALIGN 0x00000040l
360#define DDVPCONNECT_DOUBLECLOCK 0x00000001l
368#define DDVPCONNECT_VACT 0x00000002l
377#define DDVPCONNECT_INVERTPOLARITY 0x00000004l
383#define DDVPCONNECT_DISCARDSVREFDATA 0x00000008l
389#define DDVPCONNECT_HALFLINE 0x00000010l
395#define DDVPCONNECT_INTERLACED 0x00000020l
401#define DDVPCONNECT_SHAREEVEN 0x00000040l
407#define DDVPCONNECT_SHAREODD 0x00000080l
418#define DDVPCAPS_AUTOFLIP 0x00000001l
423#define DDVPCAPS_INTERLACED 0x00000002l
428#define DDVPCAPS_NONINTERLACED 0x00000004l
434#define DDVPCAPS_READBACKFIELD 0x00000008l
440#define DDVPCAPS_READBACKLINE 0x00000010l
448#define DDVPCAPS_SHAREABLE 0x00000020l
453#define DDVPCAPS_SKIPEVENFIELDS 0x00000040l
458#define DDVPCAPS_SKIPODDFIELDS 0x00000080l
464#define DDVPCAPS_SYNCMASTER 0x00000100l
470#define DDVPCAPS_VBISURFACE 0x00000200l
476#define DDVPCAPS_COLORCONTROL 0x00000400l
482#define DDVPCAPS_OVERSAMPLEDVBI 0x00000800l
487#define DDVPCAPS_SYSTEMMEMORY 0x00001000l
499#define DDVPFX_CROPTOPDATA 0x00000001l
505#define DDVPFX_CROPX 0x00000002l
511#define DDVPFX_CROPY 0x00000004l
516#define DDVPFX_INTERLEAVE 0x00000008l
522#define DDVPFX_MIRRORLEFTRIGHT 0x00000010l
528#define DDVPFX_MIRRORUPDOWN 0x00000020l
534#define DDVPFX_PRESHRINKX 0x00000040l
540#define DDVPFX_PRESHRINKY 0x00000080l
546#define DDVPFX_PRESHRINKXB 0x00000100l
552#define DDVPFX_PRESHRINKYB 0x00000200l
559#define DDVPFX_PRESHRINKXS 0x00000400l
566#define DDVPFX_PRESHRINKYS 0x00000800l
572#define DDVPFX_PRESTRETCHX 0x00001000l
578#define DDVPFX_PRESTRETCHY 0x00002000l
584#define DDVPFX_PRESTRETCHXN 0x00004000l
590#define DDVPFX_PRESTRETCHYN 0x00008000l
596#define DDVPFX_VBICONVERT 0x00010000l
602#define DDVPFX_VBINOSCALE 0x00020000l
608#define DDVPFX_IGNOREVBIXCROP 0x00040000l
625#define DDVP_AUTOFLIP 0x00000001l
630#define DDVP_CONVERT 0x00000002l
635#define DDVP_CROP 0x00000004l
640#define DDVP_INTERLEAVE 0x00000008l
646#define DDVP_MIRRORLEFTRIGHT 0x00000010l
652#define DDVP_MIRRORUPDOWN 0x00000020l
657#define DDVP_PRESCALE 0x00000040l
662#define DDVP_SKIPEVENFIELDS 0x00000080l
667#define DDVP_SKIPODDFIELDS 0x00000100l
672#define DDVP_SYNCMASTER 0x00000200l
678#define DDVP_VBICONVERT 0x00000400l
684#define DDVP_VBINOSCALE 0x00000800l
690#define DDVP_OVERRIDEBOBWEAVE 0x00001000l
696#define DDVP_IGNOREVBIXCROP 0x00002000l
708#define DDVPFORMAT_VIDEO 0x00000001l
713#define DDVPFORMAT_VBI 0x00000002l
726#define DDVPTARGET_VIDEO 0x00000001l
731#define DDVPTARGET_VBI 0x00000002l
743#define DDVPWAIT_BEGIN 0x00000001l
748#define DDVPWAIT_END 0x00000002l
753#define DDVPWAIT_LINE 0x00000003l
764#define DDVPFLIP_VIDEO 0x00000001l
769#define DDVPFLIP_VBI 0x00000002l
780#define DDVPSQ_NOSIGNAL 0x00000001l
785#define DDVPSQ_SIGNALOK 0x00000002l
797#define DDVPB_VIDEOPORT 0x00000001l
802#define DDVPB_OVERLAY 0x00000002l
807#define DDVPB_TYPE 0x00000004l
818#define DDVPBCAPS_SOURCE 0x00000001l
824#define DDVPBCAPS_DESTINATION 0x00000002l
DECLARE_INTERFACE_(IDirect3D, IUnknown)
DEFINE_GUID(IID_IDirect3DRM, 0x2bc49361, 0x8327, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1)
struct IDirectDrawSurface FAR * LPDIRECTDRAWSURFACE
typedef DWORD(FAR PASCAL *LPCLIPPERCALLBACK)(LPDIRECTDRAWCLIPPER lpDDClipper
struct _DDCOLORCONTROL FAR * LPDDCOLORCONTROL
DDPIXELFORMAT FAR * LPDDPIXELFORMAT
struct IDirectDrawVideoPortVtbl DIRECTDRAWVIDEOPORTCALLBACKS
struct _DDVIDEOPORTSTATUS DDVIDEOPORTSTATUS
struct _DDVIDEOPORTSTATUS FAR * LPDDVIDEOPORTSTATUS
struct _DDVIDEOPORTINFO FAR * LPDDVIDEOPORTINFO
struct _DDVIDEOPORTDESC DDVIDEOPORTDESC
struct IDirectDrawVideoPort FAR * LPDIRECTDRAWVIDEOPORT
struct IDDVideoPortContainerVtbl DDVIDEOPORTCONTAINERCALLBACKS
struct _DDVIDEOPORTDESC FAR * LPDDVIDEOPORTDESC
struct _DDVIDEOPORTBANDWIDTH DDVIDEOPORTBANDWIDTH
struct IDDVideoPortContainer FAR * LPDDVIDEOPORTCONTAINER
struct _DDVIDEOPORTINFO DDVIDEOPORTINFO
struct _DDVIDEOPORTCONNECT FAR * LPDDVIDEOPORTCONNECT
struct _DDVIDEOPORTCONNECT DDVIDEOPORTCONNECT
struct _DDVIDEOPORTCAPS DDVIDEOPORTCAPS
struct _DDVIDEOPORTBANDWIDTH FAR * LPDDVIDEOPORTBANDWIDTH
struct _DDVIDEOPORTCAPS FAR * LPDDVIDEOPORTCAPS
DWORD dwYInterpAndColorkey
DWORD dwAlignVideoPortCropBoundary
DWORD dwAlignVideoPortBoundary
DWORD dwNumVBIAutoFlipSurfaces
DWORD dwAlignVideoPortPrescaleWidth
DWORD dwNumAutoFlipSurfaces
DWORD dwAlignVideoPortCropWidth
DDVIDEOPORTCONNECT VideoPortType
DWORD dwMaxPixelsPerSecond
DWORD dwMicrosecondsPerField
LPDDPIXELFORMAT lpddpfVBIInputFormat
LPDDPIXELFORMAT lpddpfVBIOutputFormat
LPDDPIXELFORMAT lpddpfInputFormat
DDVIDEOPORTCONNECT VideoPortType