include: Fill in missing enum/struct/interfaces in vkd3d_d3d12.idl
This goes on top of !325 (merged) (which was already approved).
Merge request reports
Activity
At first sight this looks fine, thanks. Unfortunately I probably won't be able to properly review this this week, but I should be able to get to it early next week.
Note that this currently fails the CI though. Probably because it's intended to be applied on top of !325 (merged), so hopefully that will get resolved once those patches actually get committed.
It still fails CI after !325 (merged) was merged (and even before - as it was based on top of !325 (merged), those commits were part of this branch so testing would just have iterated over those too) - not quite sure what is wrong here...
added 46 commits
-
d8e4a9dd...cab1f57e - 19 commits from branch
wine:master
- cab1f57e...b6edfe67 - 17 earlier commits
- 7488ab8e - include: Add the ID3D12MetaCommand interface.
- 0c713307 - include: Add the ID3D12GraphicsCommandList4 interface.
- 4a6bc552 - include: Add the ID3D12ShaderCacheSession interface.
- 0d26236e - include: Add the ID3D12Device9 interface.
- 79a76a2c - include: Add the ID3D12Device10 interface.
- 75d58c96 - include: Add the ID3D12VirtualizationGuestDevice interface.
- 92fbc744 - include: Add the ID3D12Tools interface.
- 03a56a69 - include: Add the D3D12_BARRIER_GROUP struct.
- 55cd6da4 - include: Add some D3D12 raytracing specific structs.
- 94699250 - include: Add some misc D3D12 structs/enums.
Toggle commit list-
d8e4a9dd...cab1f57e - 19 commits from branch
added 27 commits
- 94699250...335f601f - 17 earlier commits
- d84da894 - include: Add the ID3D12MetaCommand interface.
- 75b2c790 - include: Add the ID3D12GraphicsCommandList4 interface.
- 9120fe5e - include: Add the ID3D12ShaderCacheSession interface.
- df0b9ecf - include: Add the ID3D12Device9 interface.
- 5e9df963 - include: Add the ID3D12Device10 interface.
- e6c9df82 - include: Add the ID3D12VirtualizationGuestDevice interface.
- 2dcac6b5 - include: Add the ID3D12Tools interface.
- f79c6856 - include: Add the D3D12_BARRIER_GROUP struct.
- 62611968 - include: Add some D3D12 raytracing specific structs.
- 8e2c1496 - include: Add some misc D3D12 structs/enums.
Toggle commit listJust a couple of nits:
+typedef enum D3D12_DRED_ALLOCATION_TYPE +{ ... + D3D12_DRED_ALLOCATION_TYPE_INVALID = 0xFFFFFFFF +} D3D12_DRED_ALLOCATION_TYPE;
Could we make that lower case hexadecimal?
+ D3D12_RESOURCE_ALLOCATION_INFO GetResourceAllocationInfo1( + UINT visible_mask, + UINT num_resource_descs, + const D3D12_RESOURCE_DESC *resource_descs, + D3D12_RESOURCE_ALLOCATION_INFO1 *resource_allocation_info1);
We'd typically use "resource_desc_count" instead of "num_resource_descs" above. There are a couple of other "num_*" parameters in this MR as well. Ultimately I'm not too bothered about these, so don't worry about it if you feel changing them is too much effort, but if you did change them that would certainly be welcome.
+ void CreateSamplerFeedbackUnorderedAccessView( + ID3D12Resource *targeted_resource, + ID3D12Resource *feedback_resource, + D3D12_CPU_DESCRIPTOR_HANDLE dest_descriptor);
Similarly, we'd typically use "dst_descriptor" above and for similar parameters.
+interface ID3D12Device6 : ID3D12Device5 +{ + HRESULT SetBackgroundProcessingMode( + D3D12_BACKGROUND_PROCESSING_MODE Mode, + D3D12_MEASUREMENTS_ACTION MeasurementsAction, + HANDLE hEventToSignalUponCompletion, + BOOL*pbFurtherMeasurementsDesired); +}
I'd suggest something like the following:
interface ID3D12Device6 : ID3D12Device5 { HRESULT SetBackgroundProcessingMode( D3D12_BACKGROUND_PROCESSING_MODE mode, D3D12_MEASUREMENTS_ACTION action, HANDLE event, BOOL *further_measurements_desired); }
+cpp_quote("#define D3D12_ENCODE_BASIC_FILTER(min, mag, mip, reduction) \\") +cpp_quote(" ((D3D12_FILTER) ( \\") +cpp_quote(" (((min) & D3D12_FILTER_TYPE_MASK) << D3D12_MIN_FILTER_SHIFT) | \\") +cpp_quote(" (((mag) & D3D12_FILTER_TYPE_MASK) << D3D12_MAG_FILTER_SHIFT) | \\") +cpp_quote(" (((mip) & D3D12_FILTER_TYPE_MASK) << D3D12_MIP_FILTER_SHIFT) | \\") +cpp_quote(" (((reduction) & D3D12_FILTER_REDUCTION_TYPE_MASK) << D3D12_FILTER_REDUCTION_TYPE_SHIFT)))") + +cpp_quote("#define D3D12_ENCODE_ANISOTROPIC_FILTER(reduction) \\") +cpp_quote(" ((D3D12_FILTER) ( \\") +cpp_quote(" D3D12_ANISOTROPIC_FILTERING_BIT | \\") +cpp_quote(" D3D12_ENCODE_BASIC_FILTER(D3D12_FILTER_TYPE_LINEAR, \\") +cpp_quote(" D3D12_FILTER_TYPE_LINEAR, \\") +cpp_quote(" D3D12_FILTER_TYPE_LINEAR, \\") +cpp_quote(" reduction))) ")
We'd typically put the operators at the start of the next line; compare e.g. the existing D3D12_DECODE_IS_ANISOTROPIC_FILTER and D3D12_ENCODE_SHADER_4_COMPONENT_MAPPING macros.
Thanks; I believe I've addressed all of these comments now:
- I made the
0xFFFFFFFF
lowercase (and added a trailing comma) - I changed all of the
num_foo
arguments intofoo_count
- Changed parameters
dest_foo
intodst_foo
andsource_foo
intosrc_foo
- Applied the suggested renamings on
ID3D12Device6
- Changed the
D3D12_ENCODE_BASIC_FILTER
andD3D12_ENCODE_ANISOTROPIC_FILTER
macros to use operators at the start of the line, and removed a case of trailing unnecessary whitespace there.
- I made the
added 26 commits
- 8e2c1496...0f913f39 - 16 earlier commits
- cd50428a - include: Add the ID3D12MetaCommand interface.
- c1e343ef - include: Add the ID3D12GraphicsCommandList4 interface.
- 886a1176 - include: Add the ID3D12ShaderCacheSession interface.
- 2d197273 - include: Add the ID3D12Device9 interface.
- afcd4d41 - include: Add the ID3D12Device10 interface.
- f8066d68 - include: Add the ID3D12VirtualizationGuestDevice interface.
- 8cebe999 - include: Add the ID3D12Tools interface.
- 088d8309 - include: Add the D3D12_BARRIER_GROUP struct.
- cada20a5 - include: Add some D3D12 raytracing specific structs.
- 3049b622 - include: Add some misc D3D12 structs/enums/macros.
Toggle commit listadded 30 commits
-
3049b622...e847df95 - 3 commits from branch
wine:master
- e847df95...fccf9f7a - 17 earlier commits
- f31efc1a - include: Add the ID3D12MetaCommand interface.
- 275644d3 - include: Add the ID3D12GraphicsCommandList4 interface.
- 77819d8d - include: Add the ID3D12ShaderCacheSession interface.
- 891c6d27 - include: Add the ID3D12Device9 interface.
- 602d2f90 - include: Add the ID3D12Device10 interface.
- e9e9fdbd - include: Add the ID3D12VirtualizationGuestDevice interface.
- f1c19e34 - include: Add the ID3D12Tools interface.
- 55c6e17f - include: Add the D3D12_BARRIER_GROUP struct.
- b6727939 - include: Add some D3D12 raytracing specific structs.
- 06399d12 - include: Add some misc D3D12 structs/enums/macros.
Toggle commit list-
3049b622...e847df95 - 3 commits from branch