diff fuhtark_test/include/ddk/ddkernel.h @ 1500:91c8c3b7cbf0

add: futhark tests for generating vulkan api
author sam <sam@basx.dev>
date Wed, 26 Nov 2025 21:36:48 +0700
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/fuhtark_test/include/ddk/ddkernel.h	Wed Nov 26 21:36:48 2025 +0700
@@ -0,0 +1,97 @@
+/* $Id$
+ *
+ * COPYRIGHT:            This file is in the public domain.
+ * PROJECT:              ReactOS kernel
+ * FILE:
+ * PURPOSE:              Directx headers
+ * PROGRAMMER:           Magnus Olsen (greatlrd)
+ *
+ */
+
+#ifndef __DDKM_INCLUDED__
+#define __DDKM_INCLUDED__
+
+#if defined (_WIN32) && !defined (_NO_COM)
+DEFINE_GUID (IID_IDirectDrawKernel,        0x8D56C120,0x6A08,0x11D0,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
+DEFINE_GUID (IID_IDirectDrawSurfaceKernel, 0x60755DA0,0x6A40,0x11D0,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8);
+#endif
+
+typedef struct _DDKERNELCAPS
+{
+  DWORD dwSize;
+  DWORD dwCaps;
+  DWORD dwIRQCaps;
+} DDKERNELCAPS, *LPDDKERNELCAPS;
+
+#define DDKERNELCAPS_SKIPFIELDS			     0x00000001
+#define DDKERNELCAPS_AUTOFLIP		     	 0x00000002
+#define DDKERNELCAPS_SETSTATE		     	 0x00000004
+#define DDKERNELCAPS_LOCK		     	     0x00000008
+#define DDKERNELCAPS_FLIPVIDEOPORT	     	 0x00000010
+#define DDKERNELCAPS_FLIPOVERLAY		     0x00000020
+#define DDKERNELCAPS_CAPTURE_SYSMEM		     0x00000040
+#define DDKERNELCAPS_CAPTURE_NONLOCALVIDMEM	 0x00000080
+#define DDKERNELCAPS_FIELDPOLARITY	      	 0x00000100
+#define DDKERNELCAPS_CAPTURE_INVERTED		 0x00000200
+#define DDIRQ_DISPLAY_VSYNC			         0x00000001
+#define DDIRQ_RESERVED1				         0x00000002
+#define DDIRQ_VPORT0_VSYNC         			 0x00000004
+#define DDIRQ_VPORT0_LINE		         	 0x00000008
+#define DDIRQ_VPORT1_VSYNC         			 0x00000010
+#define DDIRQ_VPORT1_LINE		         	 0x00000020
+#define DDIRQ_VPORT2_VSYNC         			 0x00000040
+#define DDIRQ_VPORT2_LINE		         	 0x00000080
+#define DDIRQ_VPORT3_VSYNC	         		 0x00000100
+#define DDIRQ_VPORT3_LINE		         	 0x00000200
+#define DDIRQ_VPORT4_VSYNC         			 0x00000400
+#define DDIRQ_VPORT4_LINE         			 0x00000800
+#define DDIRQ_VPORT5_VSYNC	         		 0x00001000
+#define DDIRQ_VPORT5_LINE         			 0x00002000
+#define DDIRQ_VPORT6_VSYNC	         		 0x00004000
+#define DDIRQ_VPORT6_LINE	         		 0x00008000
+#define DDIRQ_VPORT7_VSYNC	         		 0x00010000
+#define DDIRQ_VPORT7_LINE	         		 0x00020000
+#define DDIRQ_VPORT8_VSYNC	         		 0x00040000
+#define DDIRQ_VPORT8_LINE         			 0x00080000
+#define DDIRQ_VPORT9_VSYNC		         	 0x00010000
+#define DDIRQ_VPORT9_LINE         			 0x00020000
+
+typedef struct IDirectDrawKernel* LPDIRECTDRAWKERNEL;
+typedef struct IDirectDrawSurfaceKernel* LPDIRECTDRAWSURFACEKERNEL;
+
+#if defined(_WIN32) && !defined(_NO_COM)
+
+#undef INTERFACE
+#define INTERFACE IDirectDrawKernel
+DECLARE_INTERFACE_ (IDirectDrawKernel, IUnknown)
+{
+    STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID* ppvObj) PURE;
+    STDMETHOD_(ULONG,AddRef) (THIS) PURE;
+    STDMETHOD_(ULONG,Release) (THIS) PURE;
+	STDMETHOD(GetKernelHandle) (THIS_ ULONG*) PURE;
+	STDMETHOD(ReleaseKernelHandle) (THIS) PURE;
+};
+
+#undef INTERFACE
+#define INTERFACE IDirectDrawSurfaceKernel
+DECLARE_INTERFACE_ (IDirectDrawSurfaceKernel, IUnknown)
+{
+    STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID* ppvObj) PURE;
+    STDMETHOD_(ULONG,AddRef) (THIS) PURE;
+    STDMETHOD_(ULONG,Release) (THIS) PURE;
+	STDMETHOD(GetKernelHandle) (THIS_ ULONG*) PURE;
+	STDMETHOD(ReleaseKernelHandle) (THIS) PURE;
+};
+
+#undef INTERFACE
+#endif // defined(_WIN32) && !defined(_NO_COM)
+
+#ifdef __cplusplus
+};
+#endif
+
+#endif
+
+
+
+