Implement some DirectDraw related COM-Interfaces.

svn path=/trunk/; revision=18829
This commit is contained in:
Maarten Bosma 2005-10-28 12:09:22 +00:00
parent 013ca43155
commit 4b06d87aad

View file

@ -1,5 +1,5 @@
/* $Id: $ /* $Id$
* *
* COPYRIGHT: See COPYING in the top level directory * COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel * PROJECT: ReactOS kernel
@ -207,4 +207,61 @@ typedef struct _DDVIDEOPORTBANDWIDTH *LPDDVIDEOPORTBANDWIDTH;
typedef struct _DDVIDEOPORTSTATUS *LPDDVIDEOPORTSTATUS; typedef struct _DDVIDEOPORTSTATUS *LPDDVIDEOPORTSTATUS;
typedef struct _DDVIDEOPORTNOTIFY *LPDDVIDEOPORTNOTIFY; typedef struct _DDVIDEOPORTNOTIFY *LPDDVIDEOPORTNOTIFY;
#endif typedef struct IDirectDrawVideoPort* LPDIRECTDRAWVIDEOPORT;
typedef struct IDDVideoPortContainer* LPDDVIDEOPORTCONTAINER;
typedef HRESULT (FAR PASCAL * LPDDENUMVIDEOCALLBACK)(LPDDVIDEOPORTCAPS, LPVOID);
#if !defined (_NO_COM) && defined (_WIN32)
#undef INTERFACE
#define INTERFACE IDDVideoPortContainer
DECLARE_INTERFACE_ (IDDVideoPortContainer, IUnknown)
{
STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID* ppvObj) PURE;
STDMETHOD_(ULONG,AddRef) (THIS) PURE;
STDMETHOD_(ULONG,Release) (THIS) PURE;
STDMETHOD(CreateVideoPort)(THIS_ DWORD, LPDDVIDEOPORTDESC, LPDIRECTDRAWVIDEOPORT*, IUnknown*) PURE;
STDMETHOD(EnumVideoPorts) (THIS_ DWORD, LPDDVIDEOPORTCAPS, LPVOID, LPDDENUMVIDEOCALLBACK) PURE;
STDMETHOD(GetVideoPortConnectInfo) (THIS_ DWORD, LPDWORD, LPDDVIDEOPORTCONNECT) PURE;
STDMETHOD(QueryVideoPortStatus) (THIS_ DWORD, LPDDVIDEOPORTSTATUS) PURE;
};
#undef INTERFACE
#define INTERFACE IDirectDrawVideoPort
DECLARE_INTERFACE_ (IDirectDrawVideoPort, IUnknown)
{
STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID* ppvObj) PURE;
STDMETHOD_(ULONG,AddRef) (THIS) PURE;
STDMETHOD_(ULONG,Release) (THIS) PURE;
STDMETHOD(Flip) (THIS_ LPDIRECTDRAWSURFACE, DWORD) PURE;
STDMETHOD(GetBandwidthInfo)(THIS_ LPDDPIXELFORMAT, DWORD, DWORD, DWORD, LPDDVIDEOPORTBANDWIDTH) PURE;
STDMETHOD(GetColorControls) (THIS_ LPDDCOLORCONTROL) PURE;
STDMETHOD(GetInputFormats)(THIS_ LPDWORD, LPDDPIXELFORMAT, DWORD) PURE;
STDMETHOD(GetOutputFormats)(THIS_ LPDDPIXELFORMAT, LPDWORD, LPDDPIXELFORMAT, DWORD) PURE;
STDMETHOD(GetFieldPolarity) (THIS_ LPBOOL) PURE;
STDMETHOD(GetVideoLine) (THIS_ LPDWORD) PURE;
STDMETHOD(GetVideoSignalStatus) (THIS_ LPDWORD) PURE;
STDMETHOD(SetColorControls) (THIS_ LPDDCOLORCONTROL) PURE;
STDMETHOD(SetTargetSurface) (THIS_ LPDIRECTDRAWSURFACE, DWORD) PURE;
STDMETHOD(StartVideo) (THIS_ LPDDVIDEOPORTINFO) PURE;
STDMETHOD(StopVideo) (THIS) PURE;
STDMETHOD(UpdateVideo) (THIS_ LPDDVIDEOPORTINFO) PURE;
STDMETHOD(WaitForSync) (THIS_ DWORD, DWORD, DWORD) PURE;
};
#undef INTERFACE
#define INTERFACE IDirectDrawVideoPortNotify
DECLARE_INTERFACE_( IDirectDrawVideoPortNotify, IUnknown )
{
STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID* ppvObj) PURE;
STDMETHOD_(ULONG,AddRef) (THIS) PURE;
STDMETHOD_(ULONG,Release) (THIS) PURE;
STDMETHOD(AcquireNotification) (THIS_ HANDLE*, LPDDVIDEOPORTNOTIFY) PURE;
STDMETHOD(ReleaseNotification) (THIS_ HANDLE) PURE;
};
#undef INTERFACE
#endif // !defined (_NO_COM) && defined (_WIN32)
#endif // __DVP_INCLUDED__