[PATCH vkd3d 1/2] include: Add ID3D12DebugDevice interface declarations in vkd3d_d3d12sdklayers.idl.
Biswapriyo Nath
nathbappai at gmail.com
Thu Jun 9 00:00:15 CDT 2022
-------------- next part --------------
From d6a8343f4779b8c3d7ca7a679c7db6d3ed26710d Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath <nathbappai at gmail.com>
Date: Thu, 9 Jun 2022 10:22:28 +0530
Subject: [PATCH vkd3d 1/2] include: Add ID3D12DebugDevice interface declarations in vkd3d_d3d12sdklayers.idl.
Signed-off-by: Biswapriyo Nath <nathbappai at gmail.com>
---
include/vkd3d_d3d12sdklayers.idl | 86 ++++++++++++++++++++++++++++++++
1 file changed, 86 insertions(+)
diff --git a/include/vkd3d_d3d12sdklayers.idl b/include/vkd3d_d3d12sdklayers.idl
index 785aba7..194cce0 100644
--- a/include/vkd3d_d3d12sdklayers.idl
+++ b/include/vkd3d_d3d12sdklayers.idl
@@ -906,6 +906,54 @@ typedef enum D3D12_GPU_BASED_VALIDATION_FLAGS
} D3D12_GPU_BASED_VALIDATION_FLAGS;
cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_GPU_BASED_VALIDATION_FLAGS)")
+typedef enum D3D12_RLDO_FLAGS
+{
+ D3D12_RLDO_NONE = 0x0,
+ D3D12_RLDO_SUMMARY = 0x1,
+ D3D12_RLDO_DETAIL = 0x2,
+ D3D12_RLDO_IGNORE_INTERNAL = 0x4,
+} D3D12_RLDO_FLAGS;
+cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_RLDO_FLAGS)")
+
+typedef enum D3D12_DEBUG_DEVICE_PARAMETER_TYPE
+{
+ D3D12_DEBUG_DEVICE_PARAMETER_FEATURE_FLAGS,
+ D3D12_DEBUG_DEVICE_PARAMETER_GPU_BASED_VALIDATION_SETTINGS,
+ D3D12_DEBUG_DEVICE_PARAMETER_GPU_SLOWDOWN_PERFORMANCE_FACTOR,
+} D3D12_DEBUG_DEVICE_PARAMETER_TYPE;
+
+typedef enum D3D12_DEBUG_FEATURE
+{
+ D3D12_DEBUG_FEATURE_NONE = 0x00,
+ D3D12_DEBUG_FEATURE_ALLOW_BEHAVIOR_CHANGING_DEBUG_AIDS = 0x01,
+ D3D12_DEBUG_FEATURE_CONSERVATIVE_RESOURCE_STATE_TRACKING = 0x02,
+ D3D12_DEBUG_FEATURE_DISABLE_VIRTUALIZED_BUNDLES_VALIDATION = 0x04,
+ D3D12_DEBUG_FEATURE_EMULATE_WINDOWS7 = 0x08,
+} D3D12_DEBUG_FEATURE;
+cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_DEBUG_FEATURE)")
+
+typedef enum D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS
+{
+ D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAG_NONE = 0x00,
+ D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAG_FRONT_LOAD_CREATE_TRACKING_ONLY_SHADERS = 0x01,
+ D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAG_FRONT_LOAD_CREATE_UNGUARDED_VALIDATION_SHADERS = 0x02,
+ D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAG_FRONT_LOAD_CREATE_GUARDED_VALIDATION_SHADERS = 0x04,
+ D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS_VALID_MASK = 0x07
+} D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS;
+cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS)")
+
+typedef struct D3D12_DEBUG_DEVICE_GPU_BASED_VALIDATION_SETTINGS
+{
+ UINT MaxMessagesPerCommandList;
+ D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE DefaultShaderPatchMode;
+ D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS PipelineStateCreateFlags;
+} D3D12_DEBUG_DEVICE_GPU_BASED_VALIDATION_SETTINGS;
+
+typedef struct D3D12_DEBUG_DEVICE_GPU_SLOWDOWN_PERFORMANCE_FACTOR
+{
+ FLOAT SlowdownFactor;
+} D3D12_DEBUG_DEVICE_GPU_SLOWDOWN_PERFORMANCE_FACTOR;
+
typedef struct D3D12_MESSAGE
{
D3D12_MESSAGE_CATEGORY Category;
@@ -1001,6 +1049,44 @@ interface ID3D12Debug5 : ID3D12Debug4
void SetEnableAutoName(BOOL enable);
}
+[
+ uuid(3febd6dd-4973-4787-8194-e45f9e28923e),
+ object,
+ local,
+ pointer_default(unique)
+]
+interface ID3D12DebugDevice : IUnknown
+{
+ HRESULT SetFeatureMask(D3D12_DEBUG_FEATURE mask);
+ D3D12_DEBUG_FEATURE GetFeatureMask();
+ HRESULT ReportLiveDeviceObjects(D3D12_RLDO_FLAGS flags);
+}
+
+[
+ uuid(a9b71770-d099-4a65-a698-3dee10020f88),
+ object,
+ local,
+ pointer_default(unique)
+]
+interface ID3D12DebugDevice1 : IUnknown
+{
+ HRESULT SetDebugParameter(D3D12_DEBUG_DEVICE_PARAMETER_TYPE type, const void *data, UINT size);
+ HRESULT GetDebugParameter(D3D12_DEBUG_DEVICE_PARAMETER_TYPE type, void *data, UINT size);
+ HRESULT ReportLiveDeviceObjects(D3D12_RLDO_FLAGS flags);
+}
+
+[
+ uuid(60eccbc1-378d-4df1-894c-f8ac5ce4d7dd),
+ object,
+ local,
+ pointer_default(unique)
+]
+interface ID3D12DebugDevice2 : ID3D12DebugDevice
+{
+ HRESULT SetDebugParameter(D3D12_DEBUG_DEVICE_PARAMETER_TYPE type, const void *data, UINT size);
+ HRESULT GetDebugParameter(D3D12_DEBUG_DEVICE_PARAMETER_TYPE type, void *data, UINT size);
+}
+
[
uuid(0742a90b-c387-483f-b946-30a7e4e61458),
object,
--
2.36.1
More information about the wine-devel
mailing list