Ihsan Akmal : include: Add dxgi1_4.idl.
Alexandre Julliard
julliard at winehq.org
Fri Sep 22 15:49:05 CDT 2017
Module: wine
Branch: master
Commit: 67aa02726b4595e126c8648b734538f7b7a29394
URL: http://source.winehq.org/git/wine.git/?a=commit;h=67aa02726b4595e126c8648b734538f7b7a29394
Author: Ihsan Akmal <ihsanapps at gmail.com>
Date: Thu Sep 21 22:29:36 2017 +0200
include: Add dxgi1_4.idl.
Signed-off-by: Ihsan Akmal <ihsanapps at gmail.com>
Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
include/Makefile.in | 1 +
include/dxgi1_4.idl | 140 ++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 141 insertions(+)
diff --git a/include/Makefile.in b/include/Makefile.in
index 9acb0bf..f21d120 100644
--- a/include/Makefile.in
+++ b/include/Makefile.in
@@ -70,6 +70,7 @@ IDL_SRCS = \
dxgi.idl \
dxgi1_2.idl \
dxgi1_3.idl \
+ dxgi1_4.idl \
dxgicommon.idl \
dxgiformat.idl \
dxgitype.idl \
diff --git a/include/dxgi1_4.idl b/include/dxgi1_4.idl
new file mode 100644
index 0000000..0f63df2
--- /dev/null
+++ b/include/dxgi1_4.idl
@@ -0,0 +1,140 @@
+/*
+ * Copyright 2017 Ihsan Akmal
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+import "dxgi1_3.idl";
+
+typedef enum DXGI_SWAP_CHAIN_COLOR_SPACE_SUPPORT_FLAG
+{
+ DXGI_SWAP_CHAIN_COLOR_SPACE_SUPPORT_FLAG_PRESENT = 0x1,
+ DXGI_SWAP_CHAIN_COLOR_SPACE_SUPPORT_FLAG_OVERLAY_PRESENT = 0x2,
+} DXGI_SWAP_CHAIN_COLOR_SPACE_SUPPORT_FLAG;
+
+typedef enum DXGI_OVERLAY_COLOR_SPACE_SUPPORT_FLAG
+{
+ DXGI_OVERLAY_COLOR_SPACE_SUPPORT_FLAG_PRESENT = 0x1,
+} DXGI_OVERLAY_COLOR_SPACE_SUPPORT_FLAG;
+
+typedef enum DXGI_MEMORY_SEGMENT_GROUP
+{
+ DXGI_MEMORY_SEGMENT_GROUP_LOCAL = 0x0,
+ DXGI_MEMORY_SEGMENT_GROUP_NON_LOCAL = 0x1,
+} DXGI_MEMORY_SEGMENT_GROUP;
+
+typedef struct DXGI_QUERY_VIDEO_MEMORY_INFO
+{
+ UINT64 Budget;
+ UINT64 CurrentUsage;
+ UINT64 AvailableForReservation;
+ UINT64 CurrentReservation;
+} DXGI_QUERY_VIDEO_MEMORY_INFO;
+
+[
+ object,
+ uuid(94d99bdb-f1f8-4ab0-b236-7da0170edab1),
+ local,
+ pointer_default(unique)
+]
+interface IDXGISwapChain3 : IDXGISwapChain2
+{
+ UINT GetCurrentBackBufferIndex();
+ HRESULT CheckColorSpaceSupport(
+ [in] DXGI_COLOR_SPACE_TYPE colour_space,
+ [out] UINT *colour_space_support
+ );
+ HRESULT SetColorSpace1(
+ [in] DXGI_COLOR_SPACE_TYPE colour_space
+ );
+ HRESULT ResizeBuffers1(
+ [in] UINT buffer_count,
+ [in] UINT width,
+ [in] UINT height,
+ [in] DXGI_FORMAT format,
+ [in] UINT flags,
+ [in] const UINT *node_mask,
+ [in] IUnknown *const *present_queue
+ );
+}
+
+[
+ object,
+ uuid(dc7dca35-2196-414d-9F53-617884032a60),
+ local,
+ pointer_default(unique)
+]
+interface IDXGIOutput4 : IDXGIOutput3
+{
+ HRESULT CheckOverlayColorSpaceSupport(
+ [in] DXGI_FORMAT format,
+ [in] DXGI_COLOR_SPACE_TYPE colour_space,
+ [in] IUnknown *device,
+ [out] UINT *flags
+ );
+}
+
+[
+ object,
+ uuid(1bc6ea02-ef36-464f-bf0c-21ca39e5168a),
+ local,
+ pointer_default(unique)
+]
+interface IDXGIFactory4 : IDXGIFactory3
+{
+ HRESULT EnumAdapterByLuid(
+ [in] LUID luid,
+ [in] REFIID iid,
+ [out] void **adapter
+ );
+ HRESULT EnumWarpAdapter(
+ [in] REFIID iid,
+ [out] void **adapter
+ );
+}
+
+[
+ object,
+ uuid(645967a4-1392-4310-a798-8053ce3e93fd),
+ local,
+ pointer_default(unique)
+]
+interface IDXGIAdapter3 : IDXGIAdapter2
+{
+ HRESULT RegisterHardwareContentProtectionTeardownStatusEvent(
+ [in] HANDLE event,
+ [out] DWORD *cookie
+ );
+ void UnregisterHardwareContentProtectionTeardownStatus(
+ [in] DWORD cookie
+ );
+ HRESULT QueryVideoMemoryInfo(
+ [in] UINT node_index,
+ [in] DXGI_MEMORY_SEGMENT_GROUP segment_group,
+ [out] DXGI_QUERY_VIDEO_MEMORY_INFO *memory_info
+ );
+ HRESULT SetVideoMemoryReservation(
+ [in] UINT node_index,
+ [in] DXGI_MEMORY_SEGMENT_GROUP segment_group,
+ [in] UINT64 reservation
+ );
+ HRESULT RegisterVideoMemoryBudgetChangeNotificationEvent(
+ [in] HANDLE event,
+ [out] DWORD *cookie
+ );
+ void UnregisterVideoMemoryBudgetChangeNotification(
+ [in] DWORD cookie
+ );
+}
More information about the wine-cvs
mailing list