Implement some DirectDraw related COM-Interfaces.
Modified: trunk/reactos/w32api/include/ddk/dvp.h
_____
Modified: trunk/reactos/w32api/include/ddk/dvp.h
--- trunk/reactos/w32api/include/ddk/dvp.h 2005-10-28 10:22:24 UTC
(rev 18828)
+++ trunk/reactos/w32api/include/ddk/dvp.h 2005-10-28 12:09:22 UTC
(rev 18829)
@@ -1,5 +1,5 @@
-/* $Id: $
+/* $Id$
*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel
@@ -207,4 +207,61 @@
typedef struct _DDVIDEOPORTSTATUS *LPDDVIDEOPORTSTATUS;
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__