Skip to content
Snippets Groups Projects

include: Fill in missing enum/struct/interfaces in vkd3d_d3d12.idl

Merged Martin Storsjö requested to merge mstorsjo/vkd3d:d3d12-fillin2 into master
2 unresolved threads

This goes on top of !325 (merged) (which was already approved).

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
    • 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.

    • Author Contributor

      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...

    • Please register or sign in to reply
  • Martin Storsjö added 46 commits

    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.

    Compare with previous version

  • Martin Storsjö added 27 commits

    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.

    Compare with previous version

    • Just 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.

    • Author Contributor

      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 into foo_count
      • Changed parameters dest_foo into dst_foo and source_foo into src_foo
      • Applied the suggested renamings on ID3D12Device6
      • Changed the D3D12_ENCODE_BASIC_FILTER and D3D12_ENCODE_ANISOTROPIC_FILTER macros to use operators at the start of the line, and removed a case of trailing unnecessary whitespace there.
    • Please register or sign in to reply
  • Martin Storsjö added 26 commits

    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.

    Compare with previous version

  • Thanks!

  • Henri Verbeet approved this merge request

    approved this merge request

  • Alexandre Julliard added 30 commits

    added 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.

    Compare with previous version

  • Alexandre Julliard approved this merge request

    approved this merge request

Please register or sign in to reply
Loading