[PATCH vkd3d 2/5] include: Add ID3D12Device1.

Józef Kucia joseph.kucia at gmail.com
Fri Jun 7 07:38:02 CDT 2019


From: Józef Kucia <jkucia at codeweavers.com>

Signed-off-by: Józef Kucia <jkucia at codeweavers.com>
---
 include/vkd3d_d3d12.idl | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/include/vkd3d_d3d12.idl b/include/vkd3d_d3d12.idl
index ec78c6652109..2b395aa1bb4e 100644
--- a/include/vkd3d_d3d12.idl
+++ b/include/vkd3d_d3d12.idl
@@ -1639,6 +1639,23 @@ typedef struct D3D12_SUBRESOURCE_DATA
     LONG_PTR SlicePitch;
 } D3D12_SUBRESOURCE_DATA;
 
+typedef enum D3D12_MULTIPLE_FENCE_WAIT_FLAGS
+{
+    D3D12_MULTIPLE_FENCE_WAIT_FLAG_NONE = 0x0,
+    D3D12_MULTIPLE_FENCE_WAIT_FLAG_ANY = 0x1,
+    D3D12_MULTIPLE_FENCE_WAIT_FLAG_ALL = 0x0,
+} D3D12_MULTIPLE_FENCE_WAIT_FLAGS;
+cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(D3D12_MULTIPLE_FENCE_WAIT_FLAGS);")
+
+typedef enum D3D12_RESIDENCY_PRIORITY
+{
+    D3D12_RESIDENCY_PRIORITY_MINIMUM = 0x28000000,
+    D3D12_RESIDENCY_PRIORITY_LOW = 0x50000000,
+    D3D12_RESIDENCY_PRIORITY_NORMAL = 0x78000000,
+    D3D12_RESIDENCY_PRIORITY_HIGH = 0xa0010000,
+    D3D12_RESIDENCY_PRIORITY_MAXIMUM = 0xc8000000,
+} D3D12_RESIDENCY_PRIORITY;
+
 [
     uuid(c4fec28f-7966-4e95-9f94-f431cb56c3b8),
     object,
@@ -2284,6 +2301,23 @@ interface ID3D12Device : ID3D12Object
     LUID GetAdapterLuid();
 }
 
+[
+    uuid(77acce80-638e-4e65-8895-c1f23386863e),
+    object,
+    local,
+    pointer_default(unique)
+]
+interface ID3D12Device1 : ID3D12Device
+{
+    HRESULT CreatePipelineLibrary(const void *blob, SIZE_T blob_size, REFIID iid, void **lib);
+
+    HRESULT SetEventOnMultipleFenceCompletion(ID3D12Fence * const *fences,
+            const UINT64 *values, UINT fence_count, D3D12_MULTIPLE_FENCE_WAIT_FLAGS flags, HANDLE event);
+
+    HRESULT SetResidencyPriority(UINT object_count, ID3D12Pageable * const *objects,
+            const D3D12_RESIDENCY_PRIORITY *priorities);
+}
+
 [
     uuid(344488b7-6846-474b-b989-f027448245e0),
     object,
-- 
2.21.0




More information about the wine-devel mailing list