Module: vkd3d Branch: master Commit: aad1c3e35cbfe716c1f6d638f51ce493ba795ec2 URL: https://gitlab.winehq.org/wine/vkd3d/-/commit/aad1c3e35cbfe716c1f6d638f51ce4...
Author: Martin Storsjö martin@martin.st Date: Wed Sep 6 18:05:38 2023 +0300
include: Add the ID3D12Device6 interface.
Signed-off-by: Martin Storsjö martin@martin.st
---
include/vkd3d_d3d12.idl | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+)
diff --git a/include/vkd3d_d3d12.idl b/include/vkd3d_d3d12.idl index 563eae26..79a357bf 100644 --- a/include/vkd3d_d3d12.idl +++ b/include/vkd3d_d3d12.idl @@ -3995,6 +3995,37 @@ interface ID3D12DeviceRemovedExtendedData2 : ID3D12DeviceRemovedExtendedData1 D3D12_DRED_DEVICE_STATE GetDeviceState(); }
+typedef enum D3D12_BACKGROUND_PROCESSING_MODE +{ + D3D12_BACKGROUND_PROCESSING_MODE_ALLOWED = 0x0, + D3D12_BACKGROUND_PROCESSING_MODE_ALLOW_INTRUSIVE_MEASUREMENTS = 0x1, + D3D12_BACKGROUND_PROCESSING_MODE_DISABLE_BACKGROUND_WORK = 0x2, + D3D12_BACKGROUND_PROCESSING_MODE_DISABLE_PROFILING_BY_SYSTEM = 0x3, +} D3D12_BACKGROUND_PROCESSING_MODE; + +typedef enum D3D12_MEASUREMENTS_ACTION +{ + D3D12_MEASUREMENTS_ACTION_KEEP_ALL = 0x0, + D3D12_MEASUREMENTS_ACTION_COMMIT_RESULTS = 0x1, + D3D12_MEASUREMENTS_ACTION_COMMIT_RESULTS_HIGH_PRIORITY = 0x2, + D3D12_MEASUREMENTS_ACTION_DISCARD_PREVIOUS = 0x3, +} D3D12_MEASUREMENTS_ACTION; + +[ + uuid(c70b221b-40e4-4a17-89af-025a0727a6dc), + object, + local, + pointer_default(unique) +] +interface ID3D12Device6 : ID3D12Device5 +{ + HRESULT SetBackgroundProcessingMode( + D3D12_BACKGROUND_PROCESSING_MODE mode, + D3D12_MEASUREMENTS_ACTION action, + HANDLE event, + BOOL *further_measurements_desired); +} + typedef HRESULT (__stdcall *PFN_D3D12_CREATE_ROOT_SIGNATURE_DESERIALIZER)( const void *data, SIZE_T data_size, REFIID iid, void **deserializer);