diff --git a/.editorconfig b/.editorconfig index 61ea4594e..22f348a15 100644 --- a/.editorconfig +++ b/.editorconfig @@ -21,6 +21,9 @@ end_of_line = lf insert_final_newline = true indent_style = space indent_size = 4 +spelling_error_severity = information +spelling_exclusion_path = exclusion.dic +spelling_languages = en-us tab_width = 4 trim_trailing_whitespace = true diff --git a/Directory.Build.props b/Directory.Build.props index 5a2e68198..6dc512258 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -20,7 +20,7 @@ true - preview + preview-all $(BaseArtifactsPath)obj/$(BaseArtifactsPathSuffix)/ embedded false @@ -42,6 +42,8 @@ $(BaseArtifactsPath)bin/$(BaseArtifactsPathSuffix)/ TerraFX true + true + true $(BaseArtifactsPath)pkg/$(Configuration)/ TerraFX.Interop.Vulkan TerraFX.Interop @@ -59,7 +61,7 @@ strict true true - latest + preview 4.3 en-US true diff --git a/Directory.Build.targets b/Directory.Build.targets index d246ce50b..f85e08025 100644 --- a/Directory.Build.targets +++ b/Directory.Build.targets @@ -12,7 +12,7 @@ - $(NoWarn) + $(NoWarn);AD0001 diff --git a/Directory.Packages.props b/Directory.Packages.props index 608a1c4c1..64f89d600 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -12,10 +12,9 @@ - - + - + diff --git a/TerraFX.Interop.Vulkan.sln b/TerraFX.Interop.Vulkan.sln index 2c5361be8..6e8b61c73 100644 --- a/TerraFX.Interop.Vulkan.sln +++ b/TerraFX.Interop.Vulkan.sln @@ -12,6 +12,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".root", ".root", "{2F337CB6 Directory.Build.props = Directory.Build.props Directory.Build.targets = Directory.Build.targets Directory.Packages.props = Directory.Packages.props + exclusion.dic = exclusion.dic global.json = global.json LICENSE.md = LICENSE.md NuGet.config = NuGet.config diff --git a/exclusion.dic b/exclusion.dic new file mode 100644 index 000000000..6e6870e84 --- /dev/null +++ b/exclusion.dic @@ -0,0 +1,67 @@ +aabb +aabbs +addr +astc +bipred +blit +bresenham +builtins +cabac +calibrateable +clusterculling +coef +colorspace +colour +denom +denorm +dylib +enums +glsl +hlsl +infos +irap +khronos +libvulkan +mgmt +micromap +micromaps +multisample +multisampled +nalu +nums +premultiplied +pushconstant +pvrtc +raygen +rdma +rects +renderpass +scalings +sgpr +sgprs +signedness +simd +spirv +srgb +stdcall +strided +subminor +subpass +subpasses +subresource +subresources +supersample +surfaceless +swapchain +swapchains +texel +transquant +uninitialize +unmap +uuid +vgpr +vgprs +vulkan +xcoeff +ycbcr +ycoeff diff --git a/generation/remap-handles.rsp b/generation/remap-handles.rsp index 97329931a..340d2a862 100644 --- a/generation/remap-handles.rsp +++ b/generation/remap-handles.rsp @@ -1,17 +1,17 @@ --remap -AHardwareBuffer*=@IntPtr -ANativeWindow*=@IntPtr -Display*=@IntPtr -HANDLE=@IntPtr -HINSTANCE=@IntPtr -HMONITOR=@IntPtr -HWND=@IntPtr -IDirectFB*=@IntPtr -IDirectFBSurface*=@IntPtr -wl_display*=@IntPtr -wl_surface*=@IntPtr -xcb_connection_t*=@IntPtr -_screen_context*=@IntPtr -_screen_window*=@IntPtr -_SECURITY_ATTRIBUTES*=@IntPtr -__IOSurface*=@IntPtr +AHardwareBuffer*=@void* +ANativeWindow*=@void* +Display*=@void* +HANDLE=@void* +HINSTANCE=@void* +HMONITOR=@void* +HWND=@void* +IDirectFB*=@void* +IDirectFBSurface*=@void* +wl_display*=@void* +wl_surface*=@void* +xcb_connection_t*=@void* +_screen_context*=@void* +_screen_window*=@void* +_SECURITY_ATTRIBUTES*=@void* +__IOSurface*=@void* diff --git a/generation/settings.rsp b/generation/settings.rsp index ca36ca4eb..0baadbfee 100644 --- a/generation/settings.rsp +++ b/generation/settings.rsp @@ -10,12 +10,15 @@ -Wno-macro-redefined -Wno-nonportable-include-path -Wno-pragma-pack +-Wno-switch --config exclude-com-proxies exclude-empty-records exclude-enum-operators generate-aggressive-inlining +generate-callconv-member-function generate-cpp-attributes +generate-disable-runtime-marshalling generate-file-scoped-namespaces generate-guid-member generate-macro-bindings diff --git a/global.json b/global.json index f5cfe250c..61d88a718 100644 --- a/global.json +++ b/global.json @@ -1,7 +1,7 @@ { "sdk": { - "version": "7.0.100", - "allowPrerelease": false, + "version": "8.0.100", + "allowPrerelease": true, "rollForward": "latestFeature" } } diff --git a/scripts/build.ps1 b/scripts/build.ps1 index b66d924a0..32f711fa7 100644 --- a/scripts/build.ps1 +++ b/scripts/build.ps1 @@ -133,8 +133,7 @@ try { $DotNetInstallDirectory = Join-Path -Path $ArtifactsDir -ChildPath "dotnet" Create-Directory -Path $DotNetInstallDirectory - & $DotNetInstallScript -Channel 6.0 -Version latest -InstallDir $DotNetInstallDirectory -Architecture $architecture - & $DotNetInstallScript -Channel 7.0 -Version latest -InstallDir $DotNetInstallDirectory -Architecture $architecture + & $DotNetInstallScript -Channel 8.0 -Version latest -InstallDir $DotNetInstallDirectory -Architecture $architecture $env:PATH="$DotNetInstallDirectory;$env:PATH" } diff --git a/scripts/build.sh b/scripts/build.sh index e3a28f97c..c91281baa 100755 --- a/scripts/build.sh +++ b/scripts/build.sh @@ -204,8 +204,7 @@ if [[ ! -z "$architecture" ]]; then DotNetInstallDirectory="$ArtifactsDir/dotnet" CreateDirectory "$DotNetInstallDirectory" - . "$DotNetInstallScript" --channel 6.0 --version latest --install-dir "$DotNetInstallDirectory" --architecture "$architecture" - . "$DotNetInstallScript" --channel 7.0 --version latest --install-dir "$DotNetInstallDirectory" --architecture "$architecture" + . "$DotNetInstallScript" --channel 8.0 --version latest --install-dir "$DotNetInstallDirectory" --architecture "$architecture" PATH="$DotNetInstallDirectory:$PATH:" fi diff --git a/sources/Directory.Build.props b/sources/Directory.Build.props index 9ff0fdc23..3045fee37 100644 --- a/sources/Directory.Build.props +++ b/sources/Directory.Build.props @@ -12,6 +12,7 @@ true + false sources @@ -21,8 +22,4 @@ - - - - diff --git a/sources/Interop/.editorconfig b/sources/Interop/.editorconfig index e3942c2ae..94ffcc6b6 100644 --- a/sources/Interop/.editorconfig +++ b/sources/Interop/.editorconfig @@ -29,7 +29,10 @@ dotnet_naming_rule.type_parameters_should_be_pascal_case_prefixed_with_t.severit # disable certain parent style options since they are not applicable to interop ############################################################################### csharp_style_expression_bodied_methods = when_on_single_line:none +dotnet_style_parentheses_in_arithmetic_binary_operators = always_for_clarity:none +dotnet_style_parentheses_in_other_binary_operators = always_for_clarity:none dotnet_style_parentheses_in_other_operators = never_if_unnecessary:none +dotnet_style_parentheses_in_relational_binary_operators = always_for_clarity:none dotnet_style_prefer_conditional_expression_over_assignment = true:none dotnet_style_prefer_conditional_expression_over_return = true:none csharp_style_prefer_pattern_matching = true:none diff --git a/sources/Interop/Vulkan/Shims/UnscopedRefAttribute.cs b/sources/Interop/Vulkan/Shims/UnscopedRefAttribute.cs deleted file mode 100644 index 15b202d81..000000000 --- a/sources/Interop/Vulkan/Shims/UnscopedRefAttribute.cs +++ /dev/null @@ -1,8 +0,0 @@ -// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. - -namespace System.Diagnostics.CodeAnalysis; - -[AttributeUsageAttribute(AttributeTargets.Method | AttributeTargets.Property | AttributeTargets.Parameter, Inherited = false)] -internal sealed class UnscopedRefAttribute : Attribute -{ -} diff --git a/sources/Interop/Vulkan/TerraFX.Interop.Vulkan.csproj b/sources/Interop/Vulkan/TerraFX.Interop.Vulkan.csproj index c60c5c40d..66f3a2a97 100644 --- a/sources/Interop/Vulkan/TerraFX.Interop.Vulkan.csproj +++ b/sources/Interop/Vulkan/TerraFX.Interop.Vulkan.csproj @@ -3,13 +3,42 @@ - $(NoWarn);CA1069;CA1401;CS0282;CS1591;SYSLIB1054 TerraFX.Interop - net6.0;net7.0 + net8.0 - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $(NoWarn);CA1003;CA1008;CA1024;CA1027;CA1028;CA1030;CA1034;CA1040;CA1041;CA1051;CA1069;CA1305;CA1401;CA1700;CA1707;CA1708;CA1711;CA1712;CA1715;CA1716;CA1720;CA1724;CA1815;CA2201;CA2217;CA2225;CS1591;CS0282;CS8981;SYSLIB1054 + diff --git a/sources/Interop/Vulkan/Vulkan.cs b/sources/Interop/Vulkan/Vulkan.cs index c2ddc80bc..afb8180f6 100644 --- a/sources/Interop/Vulkan/Vulkan.cs +++ b/sources/Interop/Vulkan/Vulkan.cs @@ -4,6 +4,8 @@ using System.Reflection; using System.Runtime.InteropServices; +[assembly: DefaultDllImportSearchPaths(DllImportSearchPath.SafeDirectories)] + namespace TerraFX.Interop.Vulkan; public static unsafe partial class Vulkan @@ -22,7 +24,7 @@ private static IntPtr OnDllImport(string libraryName, Assembly assembly, DllImpo return nativeLibrary; } - if (libraryName.Equals("vulkan") && TryResolveVulkan(assembly, searchPath, out nativeLibrary)) + if (libraryName.Equals("vulkan", StringComparison.Ordinal) && TryResolveVulkan(assembly, searchPath, out nativeLibrary)) { return nativeLibrary; } diff --git a/sources/Interop/Vulkan/Vulkan/other/helper-types/DisableRuntimeMarshalling.cs b/sources/Interop/Vulkan/Vulkan/other/helper-types/DisableRuntimeMarshalling.cs new file mode 100644 index 000000000..c4ada7293 --- /dev/null +++ b/sources/Interop/Vulkan/Vulkan/other/helper-types/DisableRuntimeMarshalling.cs @@ -0,0 +1,5 @@ +// Copyright © Tanner Gooding and Contributors. Licensed under the MIT License (MIT). See License.md in the repository root for more information. + +using System.Runtime.CompilerServices; + +[assembly: DisableRuntimeMarshalling] diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std/StdVideoH264HrdParameters.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std/StdVideoH264HrdParameters.cs index a8868b44c..334867c32 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std/StdVideoH264HrdParameters.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std/StdVideoH264HrdParameters.cs @@ -3,9 +3,11 @@ // Ported from include/vk_video/vulkan_video_codec_h264std.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct StdVideoH264HrdParameters +public partial struct StdVideoH264HrdParameters { [NativeTypeName("uint8_t")] public byte cpb_cnt_minus1; @@ -20,13 +22,13 @@ public unsafe partial struct StdVideoH264HrdParameters public byte reserved1; [NativeTypeName("uint32_t[32]")] - public fixed uint bit_rate_value_minus1[32]; + public _bit_rate_value_minus1_e__FixedBuffer bit_rate_value_minus1; [NativeTypeName("uint32_t[32]")] - public fixed uint cpb_size_value_minus1[32]; + public _cpb_size_value_minus1_e__FixedBuffer cpb_size_value_minus1; [NativeTypeName("uint8_t[32]")] - public fixed byte cbr_flag[32]; + public _cbr_flag_e__FixedBuffer cbr_flag; [NativeTypeName("uint32_t")] public uint initial_cpb_removal_delay_length_minus1; @@ -39,4 +41,22 @@ public unsafe partial struct StdVideoH264HrdParameters [NativeTypeName("uint32_t")] public uint time_offset_length; + + [InlineArray(32)] + public partial struct _bit_rate_value_minus1_e__FixedBuffer + { + public uint e0; + } + + [InlineArray(32)] + public partial struct _cpb_size_value_minus1_e__FixedBuffer + { + public uint e0; + } + + [InlineArray(32)] + public partial struct _cbr_flag_e__FixedBuffer + { + public byte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std/StdVideoH264PpsFlags.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std/StdVideoH264PpsFlags.cs index 0d8091691..316c35064 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std/StdVideoH264PpsFlags.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std/StdVideoH264PpsFlags.cs @@ -15,7 +15,7 @@ public partial struct StdVideoH264PpsFlags public uint transform_8x8_mode_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield & 0x1u; } @@ -31,7 +31,7 @@ public uint transform_8x8_mode_flag public uint redundant_pic_cnt_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 1) & 0x1u; } @@ -47,7 +47,7 @@ public uint redundant_pic_cnt_present_flag public uint constrained_intra_pred_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 2) & 0x1u; } @@ -63,7 +63,7 @@ public uint constrained_intra_pred_flag public uint deblocking_filter_control_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 3) & 0x1u; } @@ -79,7 +79,7 @@ public uint deblocking_filter_control_present_flag public uint weighted_pred_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 4) & 0x1u; } @@ -95,7 +95,7 @@ public uint weighted_pred_flag public uint bottom_field_pic_order_in_frame_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 5) & 0x1u; } @@ -111,7 +111,7 @@ public uint bottom_field_pic_order_in_frame_present_flag public uint entropy_coding_mode_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 6) & 0x1u; } @@ -127,7 +127,7 @@ public uint entropy_coding_mode_flag public uint pic_scaling_matrix_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 7) & 0x1u; } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std/StdVideoH264ScalingLists.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std/StdVideoH264ScalingLists.cs index a05b203d5..a4897032e 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std/StdVideoH264ScalingLists.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std/StdVideoH264ScalingLists.cs @@ -3,9 +3,11 @@ // Ported from include/vk_video/vulkan_video_codec_h264std.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct StdVideoH264ScalingLists +public partial struct StdVideoH264ScalingLists { [NativeTypeName("uint16_t")] public ushort scaling_list_present_mask; @@ -14,8 +16,20 @@ public unsafe partial struct StdVideoH264ScalingLists public ushort use_default_scaling_matrix_mask; [NativeTypeName("uint8_t[6][16]")] - public fixed byte ScalingList4x4[6 * 16]; + public _ScalingList4x4_e__FixedBuffer ScalingList4x4; [NativeTypeName("uint8_t[6][64]")] - public fixed byte ScalingList8x8[6 * 64]; + public _ScalingList8x8_e__FixedBuffer ScalingList8x8; + + [InlineArray(6 * 16)] + public partial struct _ScalingList4x4_e__FixedBuffer + { + public byte e0_0; + } + + [InlineArray(6 * 64)] + public partial struct _ScalingList8x8_e__FixedBuffer + { + public byte e0_0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std/StdVideoH264SpsFlags.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std/StdVideoH264SpsFlags.cs index 77424f596..db80c58e3 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std/StdVideoH264SpsFlags.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std/StdVideoH264SpsFlags.cs @@ -15,7 +15,7 @@ public partial struct StdVideoH264SpsFlags public uint constraint_set0_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield & 0x1u; } @@ -31,7 +31,7 @@ public uint constraint_set0_flag public uint constraint_set1_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 1) & 0x1u; } @@ -47,7 +47,7 @@ public uint constraint_set1_flag public uint constraint_set2_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 2) & 0x1u; } @@ -63,7 +63,7 @@ public uint constraint_set2_flag public uint constraint_set3_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 3) & 0x1u; } @@ -79,7 +79,7 @@ public uint constraint_set3_flag public uint constraint_set4_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 4) & 0x1u; } @@ -95,7 +95,7 @@ public uint constraint_set4_flag public uint constraint_set5_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 5) & 0x1u; } @@ -111,7 +111,7 @@ public uint constraint_set5_flag public uint direct_8x8_inference_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 6) & 0x1u; } @@ -127,7 +127,7 @@ public uint direct_8x8_inference_flag public uint mb_adaptive_frame_field_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 7) & 0x1u; } @@ -143,7 +143,7 @@ public uint mb_adaptive_frame_field_flag public uint frame_mbs_only_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 8) & 0x1u; } @@ -159,7 +159,7 @@ public uint frame_mbs_only_flag public uint delta_pic_order_always_zero_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 9) & 0x1u; } @@ -175,7 +175,7 @@ public uint delta_pic_order_always_zero_flag public uint separate_colour_plane_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 10) & 0x1u; } @@ -191,7 +191,7 @@ public uint separate_colour_plane_flag public uint gaps_in_frame_num_value_allowed_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 11) & 0x1u; } @@ -207,7 +207,7 @@ public uint gaps_in_frame_num_value_allowed_flag public uint qpprime_y_zero_transform_bypass_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 12) & 0x1u; } @@ -223,7 +223,7 @@ public uint qpprime_y_zero_transform_bypass_flag public uint frame_cropping_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 13) & 0x1u; } @@ -239,7 +239,7 @@ public uint frame_cropping_flag public uint seq_scaling_matrix_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 14) & 0x1u; } @@ -255,7 +255,7 @@ public uint seq_scaling_matrix_present_flag public uint vui_parameters_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 15) & 0x1u; } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std/StdVideoH264SpsVuiFlags.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std/StdVideoH264SpsVuiFlags.cs index 5835f4bf8..97caf91cc 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std/StdVideoH264SpsVuiFlags.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std/StdVideoH264SpsVuiFlags.cs @@ -15,7 +15,7 @@ public partial struct StdVideoH264SpsVuiFlags public uint aspect_ratio_info_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield & 0x1u; } @@ -31,7 +31,7 @@ public uint aspect_ratio_info_present_flag public uint overscan_info_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 1) & 0x1u; } @@ -47,7 +47,7 @@ public uint overscan_info_present_flag public uint overscan_appropriate_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 2) & 0x1u; } @@ -63,7 +63,7 @@ public uint overscan_appropriate_flag public uint video_signal_type_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 3) & 0x1u; } @@ -79,7 +79,7 @@ public uint video_signal_type_present_flag public uint video_full_range_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 4) & 0x1u; } @@ -95,7 +95,7 @@ public uint video_full_range_flag public uint color_description_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 5) & 0x1u; } @@ -111,7 +111,7 @@ public uint color_description_present_flag public uint chroma_loc_info_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 6) & 0x1u; } @@ -127,7 +127,7 @@ public uint chroma_loc_info_present_flag public uint timing_info_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 7) & 0x1u; } @@ -143,7 +143,7 @@ public uint timing_info_present_flag public uint fixed_frame_rate_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 8) & 0x1u; } @@ -159,7 +159,7 @@ public uint fixed_frame_rate_flag public uint bitstream_restriction_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 9) & 0x1u; } @@ -175,7 +175,7 @@ public uint bitstream_restriction_flag public uint nal_hrd_parameters_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 10) & 0x1u; } @@ -191,7 +191,7 @@ public uint nal_hrd_parameters_present_flag public uint vcl_hrd_parameters_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 11) & 0x1u; } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_decode/StdVideoDecodeH264PictureInfo.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_decode/StdVideoDecodeH264PictureInfo.cs index 9b146f4e5..dd5f5fb7d 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_decode/StdVideoDecodeH264PictureInfo.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_decode/StdVideoDecodeH264PictureInfo.cs @@ -3,9 +3,11 @@ // Ported from include/vk_video/vulkan_video_codec_h264std_decode.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct StdVideoDecodeH264PictureInfo +public partial struct StdVideoDecodeH264PictureInfo { public StdVideoDecodeH264PictureInfoFlags flags; @@ -28,5 +30,11 @@ public unsafe partial struct StdVideoDecodeH264PictureInfo public ushort idr_pic_id; [NativeTypeName("int32_t[2]")] - public fixed int PicOrderCnt[2]; + public _PicOrderCnt_e__FixedBuffer PicOrderCnt; + + [InlineArray(2)] + public partial struct _PicOrderCnt_e__FixedBuffer + { + public int e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_decode/StdVideoDecodeH264PictureInfoFlags.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_decode/StdVideoDecodeH264PictureInfoFlags.cs index 2da8ce22f..bed2fa773 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_decode/StdVideoDecodeH264PictureInfoFlags.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_decode/StdVideoDecodeH264PictureInfoFlags.cs @@ -15,7 +15,7 @@ public partial struct StdVideoDecodeH264PictureInfoFlags public uint field_pic_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield & 0x1u; } @@ -31,7 +31,7 @@ public uint field_pic_flag public uint is_intra { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 1) & 0x1u; } @@ -47,7 +47,7 @@ public uint is_intra public uint IdrPicFlag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 2) & 0x1u; } @@ -63,7 +63,7 @@ public uint IdrPicFlag public uint bottom_field_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 3) & 0x1u; } @@ -79,7 +79,7 @@ public uint bottom_field_flag public uint is_reference { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 4) & 0x1u; } @@ -95,7 +95,7 @@ public uint is_reference public uint complementary_field_pair { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 5) & 0x1u; } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_decode/StdVideoDecodeH264ReferenceInfo.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_decode/StdVideoDecodeH264ReferenceInfo.cs index 343d6c553..be0ce60ea 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_decode/StdVideoDecodeH264ReferenceInfo.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_decode/StdVideoDecodeH264ReferenceInfo.cs @@ -3,9 +3,11 @@ // Ported from include/vk_video/vulkan_video_codec_h264std_decode.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct StdVideoDecodeH264ReferenceInfo +public partial struct StdVideoDecodeH264ReferenceInfo { public StdVideoDecodeH264ReferenceInfoFlags flags; @@ -16,5 +18,11 @@ public unsafe partial struct StdVideoDecodeH264ReferenceInfo public ushort reserved; [NativeTypeName("int32_t[2]")] - public fixed int PicOrderCnt[2]; + public _PicOrderCnt_e__FixedBuffer PicOrderCnt; + + [InlineArray(2)] + public partial struct _PicOrderCnt_e__FixedBuffer + { + public int e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_decode/StdVideoDecodeH264ReferenceInfoFlags.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_decode/StdVideoDecodeH264ReferenceInfoFlags.cs index 2a0c7c364..f32f020a6 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_decode/StdVideoDecodeH264ReferenceInfoFlags.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_decode/StdVideoDecodeH264ReferenceInfoFlags.cs @@ -15,7 +15,7 @@ public partial struct StdVideoDecodeH264ReferenceInfoFlags public uint top_field_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield & 0x1u; } @@ -31,7 +31,7 @@ public uint top_field_flag public uint bottom_field_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 1) & 0x1u; } @@ -47,7 +47,7 @@ public uint bottom_field_flag public uint used_for_long_term_reference { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 2) & 0x1u; } @@ -63,7 +63,7 @@ public uint used_for_long_term_reference public uint is_non_existing { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 3) & 0x1u; } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_encode/StdVideoEncodeH264PictureInfoFlags.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_encode/StdVideoEncodeH264PictureInfoFlags.cs index 22a59dc8d..581fe84a4 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_encode/StdVideoEncodeH264PictureInfoFlags.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_encode/StdVideoEncodeH264PictureInfoFlags.cs @@ -15,7 +15,7 @@ public partial struct StdVideoEncodeH264PictureInfoFlags public uint idr_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield & 0x1u; } @@ -31,7 +31,7 @@ public uint idr_flag public uint is_reference_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 1) & 0x1u; } @@ -47,7 +47,7 @@ public uint is_reference_flag public uint used_for_long_term_reference { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 2) & 0x1u; } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_encode/StdVideoEncodeH264RefMgmtFlags.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_encode/StdVideoEncodeH264RefMgmtFlags.cs index a71146ebb..aa4bbb250 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_encode/StdVideoEncodeH264RefMgmtFlags.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_encode/StdVideoEncodeH264RefMgmtFlags.cs @@ -15,7 +15,7 @@ public partial struct StdVideoEncodeH264RefMgmtFlags public uint ref_pic_list_modification_l0_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield & 0x1u; } @@ -31,7 +31,7 @@ public uint ref_pic_list_modification_l0_flag public uint ref_pic_list_modification_l1_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 1) & 0x1u; } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_encode/StdVideoEncodeH264ReferenceInfoFlags.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_encode/StdVideoEncodeH264ReferenceInfoFlags.cs index 1c784fe50..805341b66 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_encode/StdVideoEncodeH264ReferenceInfoFlags.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_encode/StdVideoEncodeH264ReferenceInfoFlags.cs @@ -15,7 +15,7 @@ public partial struct StdVideoEncodeH264ReferenceInfoFlags public uint used_for_long_term_reference { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield & 0x1u; } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_encode/StdVideoEncodeH264SliceHeaderFlags.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_encode/StdVideoEncodeH264SliceHeaderFlags.cs index 965f6b208..7f9f5eedc 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_encode/StdVideoEncodeH264SliceHeaderFlags.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_encode/StdVideoEncodeH264SliceHeaderFlags.cs @@ -15,7 +15,7 @@ public partial struct StdVideoEncodeH264SliceHeaderFlags public uint direct_spatial_mv_pred_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield & 0x1u; } @@ -31,7 +31,7 @@ public uint direct_spatial_mv_pred_flag public uint num_ref_idx_active_override_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 1) & 0x1u; } @@ -47,7 +47,7 @@ public uint num_ref_idx_active_override_flag public uint no_output_of_prior_pics_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 2) & 0x1u; } @@ -63,7 +63,7 @@ public uint no_output_of_prior_pics_flag public uint adaptive_ref_pic_marking_mode_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 3) & 0x1u; } @@ -79,7 +79,7 @@ public uint adaptive_ref_pic_marking_mode_flag public uint no_prior_references_available_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 4) & 0x1u; } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_encode/StdVideoEncodeH264WeightTable.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_encode/StdVideoEncodeH264WeightTable.cs index 79802e076..1be7f39d2 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_encode/StdVideoEncodeH264WeightTable.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h264std_encode/StdVideoEncodeH264WeightTable.cs @@ -3,9 +3,11 @@ // Ported from include/vk_video/vulkan_video_codec_h264std_encode.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct StdVideoEncodeH264WeightTable +public partial struct StdVideoEncodeH264WeightTable { public StdVideoEncodeH264WeightTableFlags flags; @@ -16,26 +18,74 @@ public unsafe partial struct StdVideoEncodeH264WeightTable public byte chroma_log2_weight_denom; [NativeTypeName("int8_t[32]")] - public fixed sbyte luma_weight_l0[32]; + public _luma_weight_l0_e__FixedBuffer luma_weight_l0; [NativeTypeName("int8_t[32]")] - public fixed sbyte luma_offset_l0[32]; + public _luma_offset_l0_e__FixedBuffer luma_offset_l0; [NativeTypeName("int8_t[32][2]")] - public fixed sbyte chroma_weight_l0[32 * 2]; + public _chroma_weight_l0_e__FixedBuffer chroma_weight_l0; [NativeTypeName("int8_t[32][2]")] - public fixed sbyte chroma_offset_l0[32 * 2]; + public _chroma_offset_l0_e__FixedBuffer chroma_offset_l0; [NativeTypeName("int8_t[32]")] - public fixed sbyte luma_weight_l1[32]; + public _luma_weight_l1_e__FixedBuffer luma_weight_l1; [NativeTypeName("int8_t[32]")] - public fixed sbyte luma_offset_l1[32]; + public _luma_offset_l1_e__FixedBuffer luma_offset_l1; [NativeTypeName("int8_t[32][2]")] - public fixed sbyte chroma_weight_l1[32 * 2]; + public _chroma_weight_l1_e__FixedBuffer chroma_weight_l1; [NativeTypeName("int8_t[32][2]")] - public fixed sbyte chroma_offset_l1[32 * 2]; + public _chroma_offset_l1_e__FixedBuffer chroma_offset_l1; + + [InlineArray(32)] + public partial struct _luma_weight_l0_e__FixedBuffer + { + public sbyte e0; + } + + [InlineArray(32)] + public partial struct _luma_offset_l0_e__FixedBuffer + { + public sbyte e0; + } + + [InlineArray(32 * 2)] + public partial struct _chroma_weight_l0_e__FixedBuffer + { + public sbyte e0_0; + } + + [InlineArray(32 * 2)] + public partial struct _chroma_offset_l0_e__FixedBuffer + { + public sbyte e0_0; + } + + [InlineArray(32)] + public partial struct _luma_weight_l1_e__FixedBuffer + { + public sbyte e0; + } + + [InlineArray(32)] + public partial struct _luma_offset_l1_e__FixedBuffer + { + public sbyte e0; + } + + [InlineArray(32 * 2)] + public partial struct _chroma_weight_l1_e__FixedBuffer + { + public sbyte e0_0; + } + + [InlineArray(32 * 2)] + public partial struct _chroma_offset_l1_e__FixedBuffer + { + public sbyte e0_0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265DecPicBufMgr.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265DecPicBufMgr.cs index 6c4ae675f..de2702c7a 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265DecPicBufMgr.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265DecPicBufMgr.cs @@ -3,16 +3,36 @@ // Ported from include/vk_video/vulkan_video_codec_h265std.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct StdVideoH265DecPicBufMgr +public partial struct StdVideoH265DecPicBufMgr { [NativeTypeName("uint32_t[7]")] - public fixed uint max_latency_increase_plus1[7]; + public _max_latency_increase_plus1_e__FixedBuffer max_latency_increase_plus1; [NativeTypeName("uint8_t[7]")] - public fixed byte max_dec_pic_buffering_minus1[7]; + public _max_dec_pic_buffering_minus1_e__FixedBuffer max_dec_pic_buffering_minus1; [NativeTypeName("uint8_t[7]")] - public fixed byte max_num_reorder_pics[7]; + public _max_num_reorder_pics_e__FixedBuffer max_num_reorder_pics; + + [InlineArray(7)] + public partial struct _max_latency_increase_plus1_e__FixedBuffer + { + public uint e0; + } + + [InlineArray(7)] + public partial struct _max_dec_pic_buffering_minus1_e__FixedBuffer + { + public byte e0; + } + + [InlineArray(7)] + public partial struct _max_num_reorder_pics_e__FixedBuffer + { + public byte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265HrdFlags.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265HrdFlags.cs index ccd2eb2ec..4faf0a9e8 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265HrdFlags.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265HrdFlags.cs @@ -15,7 +15,7 @@ public partial struct StdVideoH265HrdFlags public uint nal_hrd_parameters_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield & 0x1u; } @@ -31,7 +31,7 @@ public uint nal_hrd_parameters_present_flag public uint vcl_hrd_parameters_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 1) & 0x1u; } @@ -47,7 +47,7 @@ public uint vcl_hrd_parameters_present_flag public uint sub_pic_hrd_params_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 2) & 0x1u; } @@ -63,7 +63,7 @@ public uint sub_pic_hrd_params_present_flag public uint sub_pic_cpb_params_in_pic_timing_sei_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 3) & 0x1u; } @@ -79,7 +79,7 @@ public uint sub_pic_cpb_params_in_pic_timing_sei_flag public uint fixed_pic_rate_general_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 4) & 0xFFu; } @@ -95,7 +95,7 @@ public uint fixed_pic_rate_general_flag public uint fixed_pic_rate_within_cvs_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 12) & 0xFFu; } @@ -111,7 +111,7 @@ public uint fixed_pic_rate_within_cvs_flag public uint low_delay_hrd_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 20) & 0xFFu; } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265HrdParameters.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265HrdParameters.cs index 2baf04260..62a53bb8f 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265HrdParameters.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265HrdParameters.cs @@ -3,6 +3,8 @@ // Ported from include/vk_video/vulkan_video_codec_h265std.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct StdVideoH265HrdParameters @@ -37,17 +39,35 @@ public unsafe partial struct StdVideoH265HrdParameters public byte dpb_output_delay_length_minus1; [NativeTypeName("uint8_t[7]")] - public fixed byte cpb_cnt_minus1[7]; + public _cpb_cnt_minus1_e__FixedBuffer cpb_cnt_minus1; [NativeTypeName("uint16_t[7]")] - public fixed ushort elemental_duration_in_tc_minus1[7]; + public _elemental_duration_in_tc_minus1_e__FixedBuffer elemental_duration_in_tc_minus1; [NativeTypeName("uint16_t[3]")] - public fixed ushort reserved[3]; + public _reserved_e__FixedBuffer reserved; [NativeTypeName("const StdVideoH265SubLayerHrdParameters *")] public StdVideoH265SubLayerHrdParameters* pSubLayerHrdParametersNal; [NativeTypeName("const StdVideoH265SubLayerHrdParameters *")] public StdVideoH265SubLayerHrdParameters* pSubLayerHrdParametersVcl; + + [InlineArray(7)] + public partial struct _cpb_cnt_minus1_e__FixedBuffer + { + public byte e0; + } + + [InlineArray(7)] + public partial struct _elemental_duration_in_tc_minus1_e__FixedBuffer + { + public ushort e0; + } + + [InlineArray(3)] + public partial struct _reserved_e__FixedBuffer + { + public ushort e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265LongTermRefPicsSps.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265LongTermRefPicsSps.cs index 612a2a870..6698a94ba 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265LongTermRefPicsSps.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265LongTermRefPicsSps.cs @@ -3,13 +3,21 @@ // Ported from include/vk_video/vulkan_video_codec_h265std.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct StdVideoH265LongTermRefPicsSps +public partial struct StdVideoH265LongTermRefPicsSps { [NativeTypeName("uint32_t")] public uint used_by_curr_pic_lt_sps_flag; [NativeTypeName("uint32_t[32]")] - public fixed uint lt_ref_pic_poc_lsb_sps[32]; + public _lt_ref_pic_poc_lsb_sps_e__FixedBuffer lt_ref_pic_poc_lsb_sps; + + [InlineArray(32)] + public partial struct _lt_ref_pic_poc_lsb_sps_e__FixedBuffer + { + public uint e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265PictureParameterSet.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265PictureParameterSet.cs index 990bce778..921bb22ed 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265PictureParameterSet.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265PictureParameterSet.cs @@ -3,6 +3,8 @@ // Ported from include/vk_video/vulkan_video_codec_h265std.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct StdVideoH265PictureParameterSet @@ -58,10 +60,10 @@ public unsafe partial struct StdVideoH265PictureParameterSet public byte chroma_qp_offset_list_len_minus1; [NativeTypeName("int8_t[6]")] - public fixed sbyte cb_qp_offset_list[6]; + public _cb_qp_offset_list_e__FixedBuffer cb_qp_offset_list; [NativeTypeName("int8_t[6]")] - public fixed sbyte cr_qp_offset_list[6]; + public _cr_qp_offset_list_e__FixedBuffer cr_qp_offset_list; [NativeTypeName("uint8_t")] public byte log2_sao_offset_scale_luma; @@ -100,10 +102,10 @@ public unsafe partial struct StdVideoH265PictureParameterSet public byte reserved2; [NativeTypeName("uint16_t[19]")] - public fixed ushort column_width_minus1[19]; + public _column_width_minus1_e__FixedBuffer column_width_minus1; [NativeTypeName("uint16_t[21]")] - public fixed ushort row_height_minus1[21]; + public _row_height_minus1_e__FixedBuffer row_height_minus1; [NativeTypeName("uint32_t")] public uint reserved3; @@ -113,4 +115,28 @@ public unsafe partial struct StdVideoH265PictureParameterSet [NativeTypeName("const StdVideoH265PredictorPaletteEntries *")] public StdVideoH265PredictorPaletteEntries* pPredictorPaletteEntries; + + [InlineArray(6)] + public partial struct _cb_qp_offset_list_e__FixedBuffer + { + public sbyte e0; + } + + [InlineArray(6)] + public partial struct _cr_qp_offset_list_e__FixedBuffer + { + public sbyte e0; + } + + [InlineArray(19)] + public partial struct _column_width_minus1_e__FixedBuffer + { + public ushort e0; + } + + [InlineArray(21)] + public partial struct _row_height_minus1_e__FixedBuffer + { + public ushort e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265PpsFlags.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265PpsFlags.cs index 5a65244ef..854e02705 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265PpsFlags.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265PpsFlags.cs @@ -15,7 +15,7 @@ public partial struct StdVideoH265PpsFlags public uint dependent_slice_segments_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield & 0x1u; } @@ -31,7 +31,7 @@ public uint dependent_slice_segments_enabled_flag public uint output_flag_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 1) & 0x1u; } @@ -47,7 +47,7 @@ public uint output_flag_present_flag public uint sign_data_hiding_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 2) & 0x1u; } @@ -63,7 +63,7 @@ public uint sign_data_hiding_enabled_flag public uint cabac_init_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 3) & 0x1u; } @@ -79,7 +79,7 @@ public uint cabac_init_present_flag public uint constrained_intra_pred_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 4) & 0x1u; } @@ -95,7 +95,7 @@ public uint constrained_intra_pred_flag public uint transform_skip_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 5) & 0x1u; } @@ -111,7 +111,7 @@ public uint transform_skip_enabled_flag public uint cu_qp_delta_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 6) & 0x1u; } @@ -127,7 +127,7 @@ public uint cu_qp_delta_enabled_flag public uint pps_slice_chroma_qp_offsets_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 7) & 0x1u; } @@ -143,7 +143,7 @@ public uint pps_slice_chroma_qp_offsets_present_flag public uint weighted_pred_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 8) & 0x1u; } @@ -159,7 +159,7 @@ public uint weighted_pred_flag public uint weighted_bipred_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 9) & 0x1u; } @@ -175,7 +175,7 @@ public uint weighted_bipred_flag public uint transquant_bypass_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 10) & 0x1u; } @@ -191,7 +191,7 @@ public uint transquant_bypass_enabled_flag public uint tiles_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 11) & 0x1u; } @@ -207,7 +207,7 @@ public uint tiles_enabled_flag public uint entropy_coding_sync_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 12) & 0x1u; } @@ -223,7 +223,7 @@ public uint entropy_coding_sync_enabled_flag public uint uniform_spacing_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 13) & 0x1u; } @@ -239,7 +239,7 @@ public uint uniform_spacing_flag public uint loop_filter_across_tiles_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 14) & 0x1u; } @@ -255,7 +255,7 @@ public uint loop_filter_across_tiles_enabled_flag public uint pps_loop_filter_across_slices_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 15) & 0x1u; } @@ -271,7 +271,7 @@ public uint pps_loop_filter_across_slices_enabled_flag public uint deblocking_filter_control_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 16) & 0x1u; } @@ -287,7 +287,7 @@ public uint deblocking_filter_control_present_flag public uint deblocking_filter_override_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 17) & 0x1u; } @@ -303,7 +303,7 @@ public uint deblocking_filter_override_enabled_flag public uint pps_deblocking_filter_disabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 18) & 0x1u; } @@ -319,7 +319,7 @@ public uint pps_deblocking_filter_disabled_flag public uint pps_scaling_list_data_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 19) & 0x1u; } @@ -335,7 +335,7 @@ public uint pps_scaling_list_data_present_flag public uint lists_modification_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 20) & 0x1u; } @@ -351,7 +351,7 @@ public uint lists_modification_present_flag public uint slice_segment_header_extension_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 21) & 0x1u; } @@ -367,7 +367,7 @@ public uint slice_segment_header_extension_present_flag public uint pps_extension_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 22) & 0x1u; } @@ -383,7 +383,7 @@ public uint pps_extension_present_flag public uint cross_component_prediction_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 23) & 0x1u; } @@ -399,7 +399,7 @@ public uint cross_component_prediction_enabled_flag public uint chroma_qp_offset_list_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 24) & 0x1u; } @@ -415,7 +415,7 @@ public uint chroma_qp_offset_list_enabled_flag public uint pps_curr_pic_ref_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 25) & 0x1u; } @@ -431,7 +431,7 @@ public uint pps_curr_pic_ref_enabled_flag public uint residual_adaptive_colour_transform_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 26) & 0x1u; } @@ -447,7 +447,7 @@ public uint residual_adaptive_colour_transform_enabled_flag public uint pps_slice_act_qp_offsets_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 27) & 0x1u; } @@ -463,7 +463,7 @@ public uint pps_slice_act_qp_offsets_present_flag public uint pps_palette_predictor_initializers_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 28) & 0x1u; } @@ -479,7 +479,7 @@ public uint pps_palette_predictor_initializers_present_flag public uint monochrome_palette_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 29) & 0x1u; } @@ -495,7 +495,7 @@ public uint monochrome_palette_flag public uint pps_range_extension_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 30) & 0x1u; } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265PredictorPaletteEntries.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265PredictorPaletteEntries.cs index b1e0d1a89..8c2fccbdf 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265PredictorPaletteEntries.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265PredictorPaletteEntries.cs @@ -3,10 +3,18 @@ // Ported from include/vk_video/vulkan_video_codec_h265std.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct StdVideoH265PredictorPaletteEntries +public partial struct StdVideoH265PredictorPaletteEntries { [NativeTypeName("uint16_t[3][128]")] - public fixed ushort PredictorPaletteEntries[3 * 128]; + public _PredictorPaletteEntries_e__FixedBuffer PredictorPaletteEntries; + + [InlineArray(3 * 128)] + public partial struct _PredictorPaletteEntries_e__FixedBuffer + { + public ushort e0_0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265ProfileTierLevelFlags.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265ProfileTierLevelFlags.cs index 015b186f4..75e1c9624 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265ProfileTierLevelFlags.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265ProfileTierLevelFlags.cs @@ -15,7 +15,7 @@ public partial struct StdVideoH265ProfileTierLevelFlags public uint general_tier_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield & 0x1u; } @@ -31,7 +31,7 @@ public uint general_tier_flag public uint general_progressive_source_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 1) & 0x1u; } @@ -47,7 +47,7 @@ public uint general_progressive_source_flag public uint general_interlaced_source_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 2) & 0x1u; } @@ -63,7 +63,7 @@ public uint general_interlaced_source_flag public uint general_non_packed_constraint_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 3) & 0x1u; } @@ -79,7 +79,7 @@ public uint general_non_packed_constraint_flag public uint general_frame_only_constraint_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 4) & 0x1u; } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265ScalingLists.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265ScalingLists.cs index 896da395a..d30a50b72 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265ScalingLists.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265ScalingLists.cs @@ -3,25 +3,63 @@ // Ported from include/vk_video/vulkan_video_codec_h265std.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct StdVideoH265ScalingLists +public partial struct StdVideoH265ScalingLists { [NativeTypeName("uint8_t[6][16]")] - public fixed byte ScalingList4x4[6 * 16]; + public _ScalingList4x4_e__FixedBuffer ScalingList4x4; [NativeTypeName("uint8_t[6][64]")] - public fixed byte ScalingList8x8[6 * 64]; + public _ScalingList8x8_e__FixedBuffer ScalingList8x8; [NativeTypeName("uint8_t[6][64]")] - public fixed byte ScalingList16x16[6 * 64]; + public _ScalingList16x16_e__FixedBuffer ScalingList16x16; [NativeTypeName("uint8_t[2][64]")] - public fixed byte ScalingList32x32[2 * 64]; + public _ScalingList32x32_e__FixedBuffer ScalingList32x32; [NativeTypeName("uint8_t[6]")] - public fixed byte ScalingListDCCoef16x16[6]; + public _ScalingListDCCoef16x16_e__FixedBuffer ScalingListDCCoef16x16; [NativeTypeName("uint8_t[2]")] - public fixed byte ScalingListDCCoef32x32[2]; + public _ScalingListDCCoef32x32_e__FixedBuffer ScalingListDCCoef32x32; + + [InlineArray(6 * 16)] + public partial struct _ScalingList4x4_e__FixedBuffer + { + public byte e0_0; + } + + [InlineArray(6 * 64)] + public partial struct _ScalingList8x8_e__FixedBuffer + { + public byte e0_0; + } + + [InlineArray(6 * 64)] + public partial struct _ScalingList16x16_e__FixedBuffer + { + public byte e0_0; + } + + [InlineArray(2 * 64)] + public partial struct _ScalingList32x32_e__FixedBuffer + { + public byte e0_0; + } + + [InlineArray(6)] + public partial struct _ScalingListDCCoef16x16_e__FixedBuffer + { + public byte e0; + } + + [InlineArray(2)] + public partial struct _ScalingListDCCoef32x32_e__FixedBuffer + { + public byte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265ShortTermRefPicSet.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265ShortTermRefPicSet.cs index d9313bba0..28ee54980 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265ShortTermRefPicSet.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265ShortTermRefPicSet.cs @@ -3,9 +3,11 @@ // Ported from include/vk_video/vulkan_video_codec_h265std.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct StdVideoH265ShortTermRefPicSet +public partial struct StdVideoH265ShortTermRefPicSet { public StdVideoH265ShortTermRefPicSetFlags flags; @@ -43,8 +45,20 @@ public unsafe partial struct StdVideoH265ShortTermRefPicSet public byte num_positive_pics; [NativeTypeName("uint16_t[16]")] - public fixed ushort delta_poc_s0_minus1[16]; + public _delta_poc_s0_minus1_e__FixedBuffer delta_poc_s0_minus1; [NativeTypeName("uint16_t[16]")] - public fixed ushort delta_poc_s1_minus1[16]; + public _delta_poc_s1_minus1_e__FixedBuffer delta_poc_s1_minus1; + + [InlineArray(16)] + public partial struct _delta_poc_s0_minus1_e__FixedBuffer + { + public ushort e0; + } + + [InlineArray(16)] + public partial struct _delta_poc_s1_minus1_e__FixedBuffer + { + public ushort e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265ShortTermRefPicSetFlags.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265ShortTermRefPicSetFlags.cs index 5adf1cce7..61f1d37db 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265ShortTermRefPicSetFlags.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265ShortTermRefPicSetFlags.cs @@ -15,7 +15,7 @@ public partial struct StdVideoH265ShortTermRefPicSetFlags public uint inter_ref_pic_set_prediction_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield & 0x1u; } @@ -31,7 +31,7 @@ public uint inter_ref_pic_set_prediction_flag public uint delta_rps_sign { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 1) & 0x1u; } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265SpsFlags.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265SpsFlags.cs index a662d4c3a..b02317a77 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265SpsFlags.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265SpsFlags.cs @@ -15,7 +15,7 @@ public partial struct StdVideoH265SpsFlags public uint sps_temporal_id_nesting_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield & 0x1u; } @@ -31,7 +31,7 @@ public uint sps_temporal_id_nesting_flag public uint separate_colour_plane_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 1) & 0x1u; } @@ -47,7 +47,7 @@ public uint separate_colour_plane_flag public uint conformance_window_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 2) & 0x1u; } @@ -63,7 +63,7 @@ public uint conformance_window_flag public uint sps_sub_layer_ordering_info_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 3) & 0x1u; } @@ -79,7 +79,7 @@ public uint sps_sub_layer_ordering_info_present_flag public uint scaling_list_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 4) & 0x1u; } @@ -95,7 +95,7 @@ public uint scaling_list_enabled_flag public uint sps_scaling_list_data_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 5) & 0x1u; } @@ -111,7 +111,7 @@ public uint sps_scaling_list_data_present_flag public uint amp_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 6) & 0x1u; } @@ -127,7 +127,7 @@ public uint amp_enabled_flag public uint sample_adaptive_offset_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 7) & 0x1u; } @@ -143,7 +143,7 @@ public uint sample_adaptive_offset_enabled_flag public uint pcm_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 8) & 0x1u; } @@ -159,7 +159,7 @@ public uint pcm_enabled_flag public uint pcm_loop_filter_disabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 9) & 0x1u; } @@ -175,7 +175,7 @@ public uint pcm_loop_filter_disabled_flag public uint long_term_ref_pics_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 10) & 0x1u; } @@ -191,7 +191,7 @@ public uint long_term_ref_pics_present_flag public uint sps_temporal_mvp_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 11) & 0x1u; } @@ -207,7 +207,7 @@ public uint sps_temporal_mvp_enabled_flag public uint strong_intra_smoothing_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 12) & 0x1u; } @@ -223,7 +223,7 @@ public uint strong_intra_smoothing_enabled_flag public uint vui_parameters_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 13) & 0x1u; } @@ -239,7 +239,7 @@ public uint vui_parameters_present_flag public uint sps_extension_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 14) & 0x1u; } @@ -255,7 +255,7 @@ public uint sps_extension_present_flag public uint sps_range_extension_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 15) & 0x1u; } @@ -271,7 +271,7 @@ public uint sps_range_extension_flag public uint transform_skip_rotation_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 16) & 0x1u; } @@ -287,7 +287,7 @@ public uint transform_skip_rotation_enabled_flag public uint transform_skip_context_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 17) & 0x1u; } @@ -303,7 +303,7 @@ public uint transform_skip_context_enabled_flag public uint implicit_rdpcm_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 18) & 0x1u; } @@ -319,7 +319,7 @@ public uint implicit_rdpcm_enabled_flag public uint explicit_rdpcm_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 19) & 0x1u; } @@ -335,7 +335,7 @@ public uint explicit_rdpcm_enabled_flag public uint extended_precision_processing_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 20) & 0x1u; } @@ -351,7 +351,7 @@ public uint extended_precision_processing_flag public uint intra_smoothing_disabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 21) & 0x1u; } @@ -367,7 +367,7 @@ public uint intra_smoothing_disabled_flag public uint high_precision_offsets_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 22) & 0x1u; } @@ -383,7 +383,7 @@ public uint high_precision_offsets_enabled_flag public uint persistent_rice_adaptation_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 23) & 0x1u; } @@ -399,7 +399,7 @@ public uint persistent_rice_adaptation_enabled_flag public uint cabac_bypass_alignment_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 24) & 0x1u; } @@ -415,7 +415,7 @@ public uint cabac_bypass_alignment_enabled_flag public uint sps_scc_extension_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 25) & 0x1u; } @@ -431,7 +431,7 @@ public uint sps_scc_extension_flag public uint sps_curr_pic_ref_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 26) & 0x1u; } @@ -447,7 +447,7 @@ public uint sps_curr_pic_ref_enabled_flag public uint palette_mode_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 27) & 0x1u; } @@ -463,7 +463,7 @@ public uint palette_mode_enabled_flag public uint sps_palette_predictor_initializers_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 28) & 0x1u; } @@ -479,7 +479,7 @@ public uint sps_palette_predictor_initializers_present_flag public uint intra_boundary_filtering_disabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 29) & 0x1u; } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265SpsVuiFlags.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265SpsVuiFlags.cs index aac43979e..331ed2597 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265SpsVuiFlags.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265SpsVuiFlags.cs @@ -15,7 +15,7 @@ public partial struct StdVideoH265SpsVuiFlags public uint aspect_ratio_info_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield & 0x1u; } @@ -31,7 +31,7 @@ public uint aspect_ratio_info_present_flag public uint overscan_info_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 1) & 0x1u; } @@ -47,7 +47,7 @@ public uint overscan_info_present_flag public uint overscan_appropriate_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 2) & 0x1u; } @@ -63,7 +63,7 @@ public uint overscan_appropriate_flag public uint video_signal_type_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 3) & 0x1u; } @@ -79,7 +79,7 @@ public uint video_signal_type_present_flag public uint video_full_range_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 4) & 0x1u; } @@ -95,7 +95,7 @@ public uint video_full_range_flag public uint colour_description_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 5) & 0x1u; } @@ -111,7 +111,7 @@ public uint colour_description_present_flag public uint chroma_loc_info_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 6) & 0x1u; } @@ -127,7 +127,7 @@ public uint chroma_loc_info_present_flag public uint neutral_chroma_indication_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 7) & 0x1u; } @@ -143,7 +143,7 @@ public uint neutral_chroma_indication_flag public uint field_seq_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 8) & 0x1u; } @@ -159,7 +159,7 @@ public uint field_seq_flag public uint frame_field_info_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 9) & 0x1u; } @@ -175,7 +175,7 @@ public uint frame_field_info_present_flag public uint default_display_window_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 10) & 0x1u; } @@ -191,7 +191,7 @@ public uint default_display_window_flag public uint vui_timing_info_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 11) & 0x1u; } @@ -207,7 +207,7 @@ public uint vui_timing_info_present_flag public uint vui_poc_proportional_to_timing_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 12) & 0x1u; } @@ -223,7 +223,7 @@ public uint vui_poc_proportional_to_timing_flag public uint vui_hrd_parameters_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 13) & 0x1u; } @@ -239,7 +239,7 @@ public uint vui_hrd_parameters_present_flag public uint bitstream_restriction_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 14) & 0x1u; } @@ -255,7 +255,7 @@ public uint bitstream_restriction_flag public uint tiles_fixed_structure_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 15) & 0x1u; } @@ -271,7 +271,7 @@ public uint tiles_fixed_structure_flag public uint motion_vectors_over_pic_boundaries_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 16) & 0x1u; } @@ -287,7 +287,7 @@ public uint motion_vectors_over_pic_boundaries_flag public uint restricted_ref_pic_lists_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 17) & 0x1u; } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265SubLayerHrdParameters.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265SubLayerHrdParameters.cs index d5ff289ea..f28161354 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265SubLayerHrdParameters.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265SubLayerHrdParameters.cs @@ -3,22 +3,48 @@ // Ported from include/vk_video/vulkan_video_codec_h265std.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct StdVideoH265SubLayerHrdParameters +public partial struct StdVideoH265SubLayerHrdParameters { [NativeTypeName("uint32_t[32]")] - public fixed uint bit_rate_value_minus1[32]; + public _bit_rate_value_minus1_e__FixedBuffer bit_rate_value_minus1; [NativeTypeName("uint32_t[32]")] - public fixed uint cpb_size_value_minus1[32]; + public _cpb_size_value_minus1_e__FixedBuffer cpb_size_value_minus1; [NativeTypeName("uint32_t[32]")] - public fixed uint cpb_size_du_value_minus1[32]; + public _cpb_size_du_value_minus1_e__FixedBuffer cpb_size_du_value_minus1; [NativeTypeName("uint32_t[32]")] - public fixed uint bit_rate_du_value_minus1[32]; + public _bit_rate_du_value_minus1_e__FixedBuffer bit_rate_du_value_minus1; [NativeTypeName("uint32_t")] public uint cbr_flag; + + [InlineArray(32)] + public partial struct _bit_rate_value_minus1_e__FixedBuffer + { + public uint e0; + } + + [InlineArray(32)] + public partial struct _cpb_size_value_minus1_e__FixedBuffer + { + public uint e0; + } + + [InlineArray(32)] + public partial struct _cpb_size_du_value_minus1_e__FixedBuffer + { + public uint e0; + } + + [InlineArray(32)] + public partial struct _bit_rate_du_value_minus1_e__FixedBuffer + { + public uint e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265VpsFlags.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265VpsFlags.cs index ac26adbbc..a0f5f85b9 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265VpsFlags.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std/StdVideoH265VpsFlags.cs @@ -15,7 +15,7 @@ public partial struct StdVideoH265VpsFlags public uint vps_temporal_id_nesting_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield & 0x1u; } @@ -31,7 +31,7 @@ public uint vps_temporal_id_nesting_flag public uint vps_sub_layer_ordering_info_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 1) & 0x1u; } @@ -47,7 +47,7 @@ public uint vps_sub_layer_ordering_info_present_flag public uint vps_timing_info_present_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 2) & 0x1u; } @@ -63,7 +63,7 @@ public uint vps_timing_info_present_flag public uint vps_poc_proportional_to_timing_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 3) & 0x1u; } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_decode/StdVideoDecodeH265PictureInfo.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_decode/StdVideoDecodeH265PictureInfo.cs index f2123e34e..55d5bdedb 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_decode/StdVideoDecodeH265PictureInfo.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_decode/StdVideoDecodeH265PictureInfo.cs @@ -3,9 +3,11 @@ // Ported from include/vk_video/vulkan_video_codec_h265std_decode.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct StdVideoDecodeH265PictureInfo +public partial struct StdVideoDecodeH265PictureInfo { public StdVideoDecodeH265PictureInfoFlags flags; @@ -31,11 +33,29 @@ public unsafe partial struct StdVideoDecodeH265PictureInfo public ushort reserved; [NativeTypeName("uint8_t[8]")] - public fixed byte RefPicSetStCurrBefore[8]; + public _RefPicSetStCurrBefore_e__FixedBuffer RefPicSetStCurrBefore; [NativeTypeName("uint8_t[8]")] - public fixed byte RefPicSetStCurrAfter[8]; + public _RefPicSetStCurrAfter_e__FixedBuffer RefPicSetStCurrAfter; [NativeTypeName("uint8_t[8]")] - public fixed byte RefPicSetLtCurr[8]; + public _RefPicSetLtCurr_e__FixedBuffer RefPicSetLtCurr; + + [InlineArray(8)] + public partial struct _RefPicSetStCurrBefore_e__FixedBuffer + { + public byte e0; + } + + [InlineArray(8)] + public partial struct _RefPicSetStCurrAfter_e__FixedBuffer + { + public byte e0; + } + + [InlineArray(8)] + public partial struct _RefPicSetLtCurr_e__FixedBuffer + { + public byte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_decode/StdVideoDecodeH265PictureInfoFlags.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_decode/StdVideoDecodeH265PictureInfoFlags.cs index f504ae765..cb732f31c 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_decode/StdVideoDecodeH265PictureInfoFlags.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_decode/StdVideoDecodeH265PictureInfoFlags.cs @@ -15,7 +15,7 @@ public partial struct StdVideoDecodeH265PictureInfoFlags public uint IrapPicFlag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield & 0x1u; } @@ -31,7 +31,7 @@ public uint IrapPicFlag public uint IdrPicFlag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 1) & 0x1u; } @@ -47,7 +47,7 @@ public uint IdrPicFlag public uint IsReference { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 2) & 0x1u; } @@ -63,7 +63,7 @@ public uint IsReference public uint short_term_ref_pic_set_sps_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 3) & 0x1u; } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_decode/StdVideoDecodeH265ReferenceInfoFlags.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_decode/StdVideoDecodeH265ReferenceInfoFlags.cs index 4c71564a2..a97b50dff 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_decode/StdVideoDecodeH265ReferenceInfoFlags.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_decode/StdVideoDecodeH265ReferenceInfoFlags.cs @@ -15,7 +15,7 @@ public partial struct StdVideoDecodeH265ReferenceInfoFlags public uint used_for_long_term_reference { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield & 0x1u; } @@ -31,7 +31,7 @@ public uint used_for_long_term_reference public uint unused_for_reference { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 1) & 0x1u; } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_encode/StdVideoEncodeH265PictureInfoFlags.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_encode/StdVideoEncodeH265PictureInfoFlags.cs index 9a757e2fd..564aca26b 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_encode/StdVideoEncodeH265PictureInfoFlags.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_encode/StdVideoEncodeH265PictureInfoFlags.cs @@ -15,7 +15,7 @@ public partial struct StdVideoEncodeH265PictureInfoFlags public uint is_reference_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield & 0x1u; } @@ -31,7 +31,7 @@ public uint is_reference_flag public uint IrapPicFlag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 1) & 0x1u; } @@ -47,7 +47,7 @@ public uint IrapPicFlag public uint long_term_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 2) & 0x1u; } @@ -63,7 +63,7 @@ public uint long_term_flag public uint discardable_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 3) & 0x1u; } @@ -79,7 +79,7 @@ public uint discardable_flag public uint cross_layer_bla_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 4) & 0x1u; } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_encode/StdVideoEncodeH265ReferenceInfoFlags.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_encode/StdVideoEncodeH265ReferenceInfoFlags.cs index 2ebcacac4..787f0e1ed 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_encode/StdVideoEncodeH265ReferenceInfoFlags.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_encode/StdVideoEncodeH265ReferenceInfoFlags.cs @@ -15,7 +15,7 @@ public partial struct StdVideoEncodeH265ReferenceInfoFlags public uint used_for_long_term_reference { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield & 0x1u; } @@ -31,7 +31,7 @@ public uint used_for_long_term_reference public uint unused_for_reference { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 1) & 0x1u; } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_encode/StdVideoEncodeH265ReferenceModificationFlags.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_encode/StdVideoEncodeH265ReferenceModificationFlags.cs index e20f9966a..78ccd3813 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_encode/StdVideoEncodeH265ReferenceModificationFlags.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_encode/StdVideoEncodeH265ReferenceModificationFlags.cs @@ -15,7 +15,7 @@ public partial struct StdVideoEncodeH265ReferenceModificationFlags public uint ref_pic_list_modification_flag_l0 { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield & 0x1u; } @@ -31,7 +31,7 @@ public uint ref_pic_list_modification_flag_l0 public uint ref_pic_list_modification_flag_l1 { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 1) & 0x1u; } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_encode/StdVideoEncodeH265SliceSegmentHeaderFlags.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_encode/StdVideoEncodeH265SliceSegmentHeaderFlags.cs index ff6863a75..adf8d29a3 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_encode/StdVideoEncodeH265SliceSegmentHeaderFlags.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_encode/StdVideoEncodeH265SliceSegmentHeaderFlags.cs @@ -15,7 +15,7 @@ public partial struct StdVideoEncodeH265SliceSegmentHeaderFlags public uint first_slice_segment_in_pic_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield & 0x1u; } @@ -31,7 +31,7 @@ public uint first_slice_segment_in_pic_flag public uint no_output_of_prior_pics_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 1) & 0x1u; } @@ -47,7 +47,7 @@ public uint no_output_of_prior_pics_flag public uint dependent_slice_segment_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 2) & 0x1u; } @@ -63,7 +63,7 @@ public uint dependent_slice_segment_flag public uint pic_output_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 3) & 0x1u; } @@ -79,7 +79,7 @@ public uint pic_output_flag public uint short_term_ref_pic_set_sps_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 4) & 0x1u; } @@ -95,7 +95,7 @@ public uint short_term_ref_pic_set_sps_flag public uint slice_temporal_mvp_enable_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 5) & 0x1u; } @@ -111,7 +111,7 @@ public uint slice_temporal_mvp_enable_flag public uint slice_sao_luma_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 6) & 0x1u; } @@ -127,7 +127,7 @@ public uint slice_sao_luma_flag public uint slice_sao_chroma_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 7) & 0x1u; } @@ -143,7 +143,7 @@ public uint slice_sao_chroma_flag public uint num_ref_idx_active_override_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 8) & 0x1u; } @@ -159,7 +159,7 @@ public uint num_ref_idx_active_override_flag public uint mvd_l1_zero_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 9) & 0x1u; } @@ -175,7 +175,7 @@ public uint mvd_l1_zero_flag public uint cabac_init_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 10) & 0x1u; } @@ -191,7 +191,7 @@ public uint cabac_init_flag public uint cu_chroma_qp_offset_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 11) & 0x1u; } @@ -207,7 +207,7 @@ public uint cu_chroma_qp_offset_enabled_flag public uint deblocking_filter_override_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 12) & 0x1u; } @@ -223,7 +223,7 @@ public uint deblocking_filter_override_flag public uint slice_deblocking_filter_disabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 13) & 0x1u; } @@ -239,7 +239,7 @@ public uint slice_deblocking_filter_disabled_flag public uint collocated_from_l0_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 14) & 0x1u; } @@ -255,7 +255,7 @@ public uint collocated_from_l0_flag public uint slice_loop_filter_across_slices_enabled_flag { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield >> 15) & 0x1u; } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_encode/StdVideoEncodeH265SliceSegmentLongTermRefPics.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_encode/StdVideoEncodeH265SliceSegmentLongTermRefPics.cs index 4987b69fb..855cd1eb5 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_encode/StdVideoEncodeH265SliceSegmentLongTermRefPics.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_encode/StdVideoEncodeH265SliceSegmentLongTermRefPics.cs @@ -3,9 +3,11 @@ // Ported from include/vk_video/vulkan_video_codec_h265std_encode.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct StdVideoEncodeH265SliceSegmentLongTermRefPics +public partial struct StdVideoEncodeH265SliceSegmentLongTermRefPics { [NativeTypeName("uint8_t")] public byte num_long_term_sps; @@ -14,17 +16,41 @@ public unsafe partial struct StdVideoEncodeH265SliceSegmentLongTermRefPics public byte num_long_term_pics; [NativeTypeName("uint8_t[32]")] - public fixed byte lt_idx_sps[32]; + public _lt_idx_sps_e__FixedBuffer lt_idx_sps; [NativeTypeName("uint8_t[16]")] - public fixed byte poc_lsb_lt[16]; + public _poc_lsb_lt_e__FixedBuffer poc_lsb_lt; [NativeTypeName("uint16_t")] public ushort used_by_curr_pic_lt_flag; [NativeTypeName("uint8_t[48]")] - public fixed byte delta_poc_msb_present_flag[48]; + public _delta_poc_msb_present_flag_e__FixedBuffer delta_poc_msb_present_flag; [NativeTypeName("uint8_t[48]")] - public fixed byte delta_poc_msb_cycle_lt[48]; + public _delta_poc_msb_cycle_lt_e__FixedBuffer delta_poc_msb_cycle_lt; + + [InlineArray(32)] + public partial struct _lt_idx_sps_e__FixedBuffer + { + public byte e0; + } + + [InlineArray(16)] + public partial struct _poc_lsb_lt_e__FixedBuffer + { + public byte e0; + } + + [InlineArray(48)] + public partial struct _delta_poc_msb_present_flag_e__FixedBuffer + { + public byte e0; + } + + [InlineArray(48)] + public partial struct _delta_poc_msb_cycle_lt_e__FixedBuffer + { + public byte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_encode/StdVideoEncodeH265WeightTable.cs b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_encode/StdVideoEncodeH265WeightTable.cs index fde8dcff0..b1e46956f 100644 --- a/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_encode/StdVideoEncodeH265WeightTable.cs +++ b/sources/Interop/Vulkan/Vulkan/vk_video/vulkan_video_codec_h265std_encode/StdVideoEncodeH265WeightTable.cs @@ -3,9 +3,11 @@ // Ported from include/vk_video/vulkan_video_codec_h265std_encode.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct StdVideoEncodeH265WeightTable +public partial struct StdVideoEncodeH265WeightTable { public StdVideoEncodeH265WeightTableFlags flags; @@ -16,26 +18,74 @@ public unsafe partial struct StdVideoEncodeH265WeightTable public sbyte delta_chroma_log2_weight_denom; [NativeTypeName("int8_t[15]")] - public fixed sbyte delta_luma_weight_l0[15]; + public _delta_luma_weight_l0_e__FixedBuffer delta_luma_weight_l0; [NativeTypeName("int8_t[15]")] - public fixed sbyte luma_offset_l0[15]; + public _luma_offset_l0_e__FixedBuffer luma_offset_l0; [NativeTypeName("int8_t[15][2]")] - public fixed sbyte delta_chroma_weight_l0[15 * 2]; + public _delta_chroma_weight_l0_e__FixedBuffer delta_chroma_weight_l0; [NativeTypeName("int8_t[15][2]")] - public fixed sbyte delta_chroma_offset_l0[15 * 2]; + public _delta_chroma_offset_l0_e__FixedBuffer delta_chroma_offset_l0; [NativeTypeName("int8_t[15]")] - public fixed sbyte delta_luma_weight_l1[15]; + public _delta_luma_weight_l1_e__FixedBuffer delta_luma_weight_l1; [NativeTypeName("int8_t[15]")] - public fixed sbyte luma_offset_l1[15]; + public _luma_offset_l1_e__FixedBuffer luma_offset_l1; [NativeTypeName("int8_t[15][2]")] - public fixed sbyte delta_chroma_weight_l1[15 * 2]; + public _delta_chroma_weight_l1_e__FixedBuffer delta_chroma_weight_l1; [NativeTypeName("int8_t[15][2]")] - public fixed sbyte delta_chroma_offset_l1[15 * 2]; + public _delta_chroma_offset_l1_e__FixedBuffer delta_chroma_offset_l1; + + [InlineArray(15)] + public partial struct _delta_luma_weight_l0_e__FixedBuffer + { + public sbyte e0; + } + + [InlineArray(15)] + public partial struct _luma_offset_l0_e__FixedBuffer + { + public sbyte e0; + } + + [InlineArray(15 * 2)] + public partial struct _delta_chroma_weight_l0_e__FixedBuffer + { + public sbyte e0_0; + } + + [InlineArray(15 * 2)] + public partial struct _delta_chroma_offset_l0_e__FixedBuffer + { + public sbyte e0_0; + } + + [InlineArray(15)] + public partial struct _delta_luma_weight_l1_e__FixedBuffer + { + public sbyte e0; + } + + [InlineArray(15)] + public partial struct _luma_offset_l1_e__FixedBuffer + { + public sbyte e0; + } + + [InlineArray(15 * 2)] + public partial struct _delta_chroma_weight_l1_e__FixedBuffer + { + public sbyte e0_0; + } + + [InlineArray(15 * 2)] + public partial struct _delta_chroma_offset_l1_e__FixedBuffer + { + public sbyte e0_0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vk_layer/VkLayerDeviceCreateInfo.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vk_layer/VkLayerDeviceCreateInfo.cs index 88ebbf479..3b0a90fdc 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vk_layer/VkLayerDeviceCreateInfo.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vk_layer/VkLayerDeviceCreateInfo.cs @@ -16,7 +16,7 @@ public unsafe partial struct VkLayerDeviceCreateInfo public VkLayerFunction function; - [NativeTypeName("union (anonymous union at C:/VulkanSDK/1.3.239.0/Include/vulkan/vk_layer.h:147:5)")] + [NativeTypeName("__AnonymousRecord_vk_layer_L147_C5")] public _u_e__Union u; [StructLayout(LayoutKind.Explicit)] diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vk_layer/VkLayerInstanceCreateInfo.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vk_layer/VkLayerInstanceCreateInfo.cs index 67217cfac..64ab3b0d7 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vk_layer/VkLayerInstanceCreateInfo.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vk_layer/VkLayerInstanceCreateInfo.cs @@ -16,7 +16,7 @@ public unsafe partial struct VkLayerInstanceCreateInfo public VkLayerFunction function; - [NativeTypeName("union (anonymous union at C:/VulkanSDK/1.3.239.0/Include/vulkan/vk_layer.h:126:5)")] + [NativeTypeName("__AnonymousRecord_vk_layer_L126_C5")] public _u_e__Union u; [StructLayout(LayoutKind.Explicit)] @@ -30,7 +30,7 @@ public unsafe partial struct _u_e__Union public delegate* unmanaged pfnSetInstanceLoaderData; [FieldOffset(0)] - [NativeTypeName("struct (anonymous struct at C:/VulkanSDK/1.3.239.0/Include/vulkan/vk_layer.h:129:9)")] + [NativeTypeName("__AnonymousRecord_vk_layer_L129_C9")] public _layerDevice_e__Struct layerDevice; [FieldOffset(0)] diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_android/VkAndroidSurfaceCreateInfoKHR.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_android/VkAndroidSurfaceCreateInfoKHR.cs index 9d1450ebf..a3e03f5bd 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_android/VkAndroidSurfaceCreateInfoKHR.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_android/VkAndroidSurfaceCreateInfoKHR.cs @@ -3,8 +3,6 @@ // Ported from include/vulkan/vulkan_android.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkAndroidSurfaceCreateInfoKHR @@ -17,5 +15,5 @@ public unsafe partial struct VkAndroidSurfaceCreateInfoKHR public VkAndroidSurfaceCreateFlagsKHR flags; [NativeTypeName("struct ANativeWindow *")] - public IntPtr window; + public void* window; } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_android/VkDeviceManualImports.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_android/VkDeviceManualImports.cs index 7ee775e93..149c68ff5 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_android/VkDeviceManualImports.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_android/VkDeviceManualImports.cs @@ -3,13 +3,11 @@ // Ported from include/vulkan/vulkan_android.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkDeviceManualImports { - public delegate* unmanaged vkGetAndroidHardwareBufferPropertiesANDROID; + public delegate* unmanaged vkGetAndroidHardwareBufferPropertiesANDROID; - public delegate* unmanaged vkGetMemoryAndroidHardwareBufferANDROID; + public delegate* unmanaged vkGetMemoryAndroidHardwareBufferANDROID; } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_android/VkImportAndroidHardwareBufferInfoANDROID.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_android/VkImportAndroidHardwareBufferInfoANDROID.cs index af25f5e95..cc3b10808 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_android/VkImportAndroidHardwareBufferInfoANDROID.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_android/VkImportAndroidHardwareBufferInfoANDROID.cs @@ -3,8 +3,6 @@ // Ported from include/vulkan/vulkan_android.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkImportAndroidHardwareBufferInfoANDROID @@ -15,5 +13,5 @@ public unsafe partial struct VkImportAndroidHardwareBufferInfoANDROID public void* pNext; [NativeTypeName("struct AHardwareBuffer *")] - public IntPtr buffer; + public void* buffer; } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkAccelerationStructureInstanceKHR.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkAccelerationStructureInstanceKHR.cs index 9cf67051c..90100c5dd 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkAccelerationStructureInstanceKHR.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkAccelerationStructureInstanceKHR.cs @@ -17,7 +17,7 @@ public partial struct VkAccelerationStructureInstanceKHR public uint instanceCustomIndex { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield1 & 0xFFFFFFu; } @@ -33,7 +33,7 @@ public uint instanceCustomIndex public uint mask { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield1 >> 24) & 0xFFu; } @@ -51,7 +51,7 @@ public uint mask public uint instanceShaderBindingTableRecordOffset { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield2 & 0xFFFFFFu; } @@ -67,7 +67,7 @@ public uint instanceShaderBindingTableRecordOffset public VkGeometryInstanceFlagsKHR flags { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (VkGeometryInstanceFlagsKHR)((_bitfield2 >> 24) & 0xFFu); } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkAccelerationStructureMatrixMotionInstanceNV.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkAccelerationStructureMatrixMotionInstanceNV.cs index e1878a216..57fb5e64e 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkAccelerationStructureMatrixMotionInstanceNV.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkAccelerationStructureMatrixMotionInstanceNV.cs @@ -19,7 +19,7 @@ public partial struct VkAccelerationStructureMatrixMotionInstanceNV public uint instanceCustomIndex { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield1 & 0xFFFFFFu; } @@ -35,7 +35,7 @@ public uint instanceCustomIndex public uint mask { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield1 >> 24) & 0xFFu; } @@ -53,7 +53,7 @@ public uint mask public uint instanceShaderBindingTableRecordOffset { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield2 & 0xFFFFFFu; } @@ -69,7 +69,7 @@ public uint instanceShaderBindingTableRecordOffset public VkGeometryInstanceFlagsKHR flags { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (VkGeometryInstanceFlagsKHR)((_bitfield2 >> 24) & 0xFFu); } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkAccelerationStructureSRTMotionInstanceNV.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkAccelerationStructureSRTMotionInstanceNV.cs index e807aa14a..9cf2376cf 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkAccelerationStructureSRTMotionInstanceNV.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkAccelerationStructureSRTMotionInstanceNV.cs @@ -19,7 +19,7 @@ public partial struct VkAccelerationStructureSRTMotionInstanceNV public uint instanceCustomIndex { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield1 & 0xFFFFFFu; } @@ -35,7 +35,7 @@ public uint instanceCustomIndex public uint mask { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (_bitfield1 >> 24) & 0xFFu; } @@ -53,7 +53,7 @@ public uint mask public uint instanceShaderBindingTableRecordOffset { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return _bitfield2 & 0xFFFFFFu; } @@ -69,7 +69,7 @@ public uint instanceShaderBindingTableRecordOffset public VkGeometryInstanceFlagsKHR flags { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get + readonly get { return (VkGeometryInstanceFlagsKHR)((_bitfield2 >> 24) & 0xFFu); } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkClearColorValue.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkClearColorValue.cs index 5f8f694b2..1a41b835d 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkClearColorValue.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkClearColorValue.cs @@ -3,22 +3,41 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; using System.Runtime.InteropServices; namespace TerraFX.Interop.Vulkan; [StructLayout(LayoutKind.Explicit)] -public unsafe partial struct VkClearColorValue +public partial struct VkClearColorValue { [FieldOffset(0)] [NativeTypeName("float[4]")] - public fixed float float32[4]; + public _float32_e__FixedBuffer float32; [FieldOffset(0)] [NativeTypeName("int32_t[4]")] - public fixed int int32[4]; + public _int32_e__FixedBuffer int32; [FieldOffset(0)] [NativeTypeName("uint32_t[4]")] - public fixed uint uint32[4]; + public _uint32_e__FixedBuffer uint32; + + [InlineArray(4)] + public partial struct _float32_e__FixedBuffer + { + public float e0; + } + + [InlineArray(4)] + public partial struct _int32_e__FixedBuffer + { + public int e0; + } + + [InlineArray(4)] + public partial struct _uint32_e__FixedBuffer + { + public uint e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkDebugMarkerMarkerInfoEXT.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkDebugMarkerMarkerInfoEXT.cs index 55c0982a0..2fb446a52 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkDebugMarkerMarkerInfoEXT.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkDebugMarkerMarkerInfoEXT.cs @@ -3,6 +3,8 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkDebugMarkerMarkerInfoEXT @@ -16,5 +18,11 @@ public unsafe partial struct VkDebugMarkerMarkerInfoEXT public sbyte* pMarkerName; [NativeTypeName("float[4]")] - public fixed float color[4]; + public _color_e__FixedBuffer color; + + [InlineArray(4)] + public partial struct _color_e__FixedBuffer + { + public float e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkDebugUtilsLabelEXT.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkDebugUtilsLabelEXT.cs index 6a6743975..f2e1ea837 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkDebugUtilsLabelEXT.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkDebugUtilsLabelEXT.cs @@ -3,6 +3,8 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkDebugUtilsLabelEXT @@ -16,5 +18,11 @@ public unsafe partial struct VkDebugUtilsLabelEXT public sbyte* pLabelName; [NativeTypeName("float[4]")] - public fixed float color[4]; + public _color_e__FixedBuffer color; + + [InlineArray(4)] + public partial struct _color_e__FixedBuffer + { + public float e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkDeviceFaultInfoEXT.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkDeviceFaultInfoEXT.cs index a6ba8e003..219a26773 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkDeviceFaultInfoEXT.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkDeviceFaultInfoEXT.cs @@ -3,6 +3,8 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkDeviceFaultInfoEXT @@ -12,11 +14,17 @@ public unsafe partial struct VkDeviceFaultInfoEXT public void* pNext; [NativeTypeName("char[256]")] - public fixed sbyte description[256]; + public _description_e__FixedBuffer description; public VkDeviceFaultAddressInfoEXT* pAddressInfos; public VkDeviceFaultVendorInfoEXT* pVendorInfos; public void* pVendorBinaryData; + + [InlineArray(256)] + public partial struct _description_e__FixedBuffer + { + public sbyte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkDeviceFaultVendorBinaryHeaderVersionOneEXT.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkDeviceFaultVendorBinaryHeaderVersionOneEXT.cs index 318eefcc8..37e31293d 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkDeviceFaultVendorBinaryHeaderVersionOneEXT.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkDeviceFaultVendorBinaryHeaderVersionOneEXT.cs @@ -3,9 +3,11 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct VkDeviceFaultVendorBinaryHeaderVersionOneEXT +public partial struct VkDeviceFaultVendorBinaryHeaderVersionOneEXT { [NativeTypeName("uint32_t")] public uint headerSize; @@ -22,7 +24,7 @@ public unsafe partial struct VkDeviceFaultVendorBinaryHeaderVersionOneEXT public uint driverVersion; [NativeTypeName("uint8_t[16]")] - public fixed byte pipelineCacheUUID[16]; + public _pipelineCacheUUID_e__FixedBuffer pipelineCacheUUID; [NativeTypeName("uint32_t")] public uint applicationNameOffset; @@ -32,4 +34,10 @@ public unsafe partial struct VkDeviceFaultVendorBinaryHeaderVersionOneEXT [NativeTypeName("uint32_t")] public uint engineNameOffset; + + [InlineArray(16)] + public partial struct _pipelineCacheUUID_e__FixedBuffer + { + public byte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkDeviceFaultVendorInfoEXT.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkDeviceFaultVendorInfoEXT.cs index 4614e7a85..afc082c69 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkDeviceFaultVendorInfoEXT.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkDeviceFaultVendorInfoEXT.cs @@ -3,16 +3,24 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct VkDeviceFaultVendorInfoEXT +public partial struct VkDeviceFaultVendorInfoEXT { [NativeTypeName("char[256]")] - public fixed sbyte description[256]; + public _description_e__FixedBuffer description; [NativeTypeName("uint64_t")] public ulong vendorFaultCode; [NativeTypeName("uint64_t")] public ulong vendorFaultData; + + [InlineArray(256)] + public partial struct _description_e__FixedBuffer + { + public sbyte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkDeviceGroupPresentCapabilitiesKHR.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkDeviceGroupPresentCapabilitiesKHR.cs index 03a77ef43..5e9f07e4b 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkDeviceGroupPresentCapabilitiesKHR.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkDeviceGroupPresentCapabilitiesKHR.cs @@ -3,6 +3,8 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkDeviceGroupPresentCapabilitiesKHR @@ -12,7 +14,13 @@ public unsafe partial struct VkDeviceGroupPresentCapabilitiesKHR public void* pNext; [NativeTypeName("uint32_t[32]")] - public fixed uint presentMask[32]; + public _presentMask_e__FixedBuffer presentMask; public VkDeviceGroupPresentModeFlagsKHR modes; + + [InlineArray(32)] + public partial struct _presentMask_e__FixedBuffer + { + public uint e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkExtensionProperties.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkExtensionProperties.cs index 6bc788815..e0775fb25 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkExtensionProperties.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkExtensionProperties.cs @@ -3,13 +3,21 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct VkExtensionProperties +public partial struct VkExtensionProperties { [NativeTypeName("char[256]")] - public fixed sbyte extensionName[256]; + public _extensionName_e__FixedBuffer extensionName; [NativeTypeName("uint32_t")] public uint specVersion; + + [InlineArray(256)] + public partial struct _extensionName_e__FixedBuffer + { + public sbyte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkImageBlit.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkImageBlit.cs index 90451bcf5..feafe135f 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkImageBlit.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkImageBlit.cs @@ -3,10 +3,7 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; -using System.Diagnostics.CodeAnalysis; using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; namespace TerraFX.Interop.Vulkan; @@ -22,43 +19,15 @@ public partial struct VkImageBlit [NativeTypeName("VkOffset3D[2]")] public _dstOffsets_e__FixedBuffer dstOffsets; + [InlineArray(2)] public partial struct _srcOffsets_e__FixedBuffer { public VkOffset3D e0; - public VkOffset3D e1; - - [UnscopedRef] - public ref VkOffset3D this[int index] - { - [MethodImpl(MethodImplOptions.AggressiveInlining)] - get - { - return ref AsSpan()[index]; - } - } - - [MethodImpl(MethodImplOptions.AggressiveInlining)] - [UnscopedRef] - public Span AsSpan() => MemoryMarshal.CreateSpan(ref e0, 2); } + [InlineArray(2)] public partial struct _dstOffsets_e__FixedBuffer { public VkOffset3D e0; - public VkOffset3D e1; - - [UnscopedRef] - public ref VkOffset3D this[int index] - { - [MethodImpl(MethodImplOptions.AggressiveInlining)] - get - { - return ref AsSpan()[index]; - } - } - - [MethodImpl(MethodImplOptions.AggressiveInlining)] - [UnscopedRef] - public Span AsSpan() => MemoryMarshal.CreateSpan(ref e0, 2); } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkImageBlit2.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkImageBlit2.cs index d45ce0e50..c0d70e94d 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkImageBlit2.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkImageBlit2.cs @@ -3,10 +3,7 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; -using System.Diagnostics.CodeAnalysis; using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; namespace TerraFX.Interop.Vulkan; @@ -27,43 +24,15 @@ public unsafe partial struct VkImageBlit2 [NativeTypeName("VkOffset3D[2]")] public _dstOffsets_e__FixedBuffer dstOffsets; + [InlineArray(2)] public partial struct _srcOffsets_e__FixedBuffer { public VkOffset3D e0; - public VkOffset3D e1; - - [UnscopedRef] - public ref VkOffset3D this[int index] - { - [MethodImpl(MethodImplOptions.AggressiveInlining)] - get - { - return ref AsSpan()[index]; - } - } - - [MethodImpl(MethodImplOptions.AggressiveInlining)] - [UnscopedRef] - public Span AsSpan() => MemoryMarshal.CreateSpan(ref e0, 2); } + [InlineArray(2)] public partial struct _dstOffsets_e__FixedBuffer { public VkOffset3D e0; - public VkOffset3D e1; - - [UnscopedRef] - public ref VkOffset3D this[int index] - { - [MethodImpl(MethodImplOptions.AggressiveInlining)] - get - { - return ref AsSpan()[index]; - } - } - - [MethodImpl(MethodImplOptions.AggressiveInlining)] - [UnscopedRef] - public Span AsSpan() => MemoryMarshal.CreateSpan(ref e0, 2); } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkLayerProperties.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkLayerProperties.cs index 798f64efe..20b74e981 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkLayerProperties.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkLayerProperties.cs @@ -3,12 +3,14 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct VkLayerProperties +public partial struct VkLayerProperties { [NativeTypeName("char[256]")] - public fixed sbyte layerName[256]; + public _layerName_e__FixedBuffer layerName; [NativeTypeName("uint32_t")] public uint specVersion; @@ -17,5 +19,17 @@ public unsafe partial struct VkLayerProperties public uint implementationVersion; [NativeTypeName("char[256]")] - public fixed sbyte description[256]; + public _description_e__FixedBuffer description; + + [InlineArray(256)] + public partial struct _layerName_e__FixedBuffer + { + public sbyte e0; + } + + [InlineArray(256)] + public partial struct _description_e__FixedBuffer + { + public sbyte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPerformanceCounterDescriptionKHR.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPerformanceCounterDescriptionKHR.cs index 5edff824f..3a1f53fd0 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPerformanceCounterDescriptionKHR.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPerformanceCounterDescriptionKHR.cs @@ -3,6 +3,8 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkPerformanceCounterDescriptionKHR @@ -14,11 +16,29 @@ public unsafe partial struct VkPerformanceCounterDescriptionKHR public VkPerformanceCounterDescriptionFlagsKHR flags; [NativeTypeName("char[256]")] - public fixed sbyte name[256]; + public _name_e__FixedBuffer name; [NativeTypeName("char[256]")] - public fixed sbyte category[256]; + public _category_e__FixedBuffer category; [NativeTypeName("char[256]")] - public fixed sbyte description[256]; + public _description_e__FixedBuffer description; + + [InlineArray(256)] + public partial struct _name_e__FixedBuffer + { + public sbyte e0; + } + + [InlineArray(256)] + public partial struct _category_e__FixedBuffer + { + public sbyte e0; + } + + [InlineArray(256)] + public partial struct _description_e__FixedBuffer + { + public sbyte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPerformanceCounterKHR.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPerformanceCounterKHR.cs index 178200bb7..4cf7bd222 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPerformanceCounterKHR.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPerformanceCounterKHR.cs @@ -3,6 +3,8 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkPerformanceCounterKHR @@ -18,5 +20,11 @@ public unsafe partial struct VkPerformanceCounterKHR public VkPerformanceCounterStorageKHR storage; [NativeTypeName("uint8_t[16]")] - public fixed byte uuid[16]; + public _uuid_e__FixedBuffer uuid; + + [InlineArray(16)] + public partial struct _uuid_e__FixedBuffer + { + public byte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI.cs index e7d5c21bc..0b10f3ed3 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI.cs @@ -3,6 +3,8 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI @@ -12,11 +14,23 @@ public unsafe partial struct VkPhysicalDeviceClusterCullingShaderPropertiesHUAWE public void* pNext; [NativeTypeName("uint32_t[3]")] - public fixed uint maxWorkGroupCount[3]; + public _maxWorkGroupCount_e__FixedBuffer maxWorkGroupCount; [NativeTypeName("uint32_t[3]")] - public fixed uint maxWorkGroupSize[3]; + public _maxWorkGroupSize_e__FixedBuffer maxWorkGroupSize; [NativeTypeName("uint32_t")] public uint maxOutputClusterCount; + + [InlineArray(3)] + public partial struct _maxWorkGroupCount_e__FixedBuffer + { + public uint e0; + } + + [InlineArray(3)] + public partial struct _maxWorkGroupSize_e__FixedBuffer + { + public uint e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceDriverProperties.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceDriverProperties.cs index ab49d88ab..acd196eb7 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceDriverProperties.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceDriverProperties.cs @@ -3,6 +3,8 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkPhysicalDeviceDriverProperties @@ -14,10 +16,22 @@ public unsafe partial struct VkPhysicalDeviceDriverProperties public VkDriverId driverID; [NativeTypeName("char[256]")] - public fixed sbyte driverName[256]; + public _driverName_e__FixedBuffer driverName; [NativeTypeName("char[256]")] - public fixed sbyte driverInfo[256]; + public _driverInfo_e__FixedBuffer driverInfo; public VkConformanceVersion conformanceVersion; + + [InlineArray(256)] + public partial struct _driverName_e__FixedBuffer + { + public sbyte e0; + } + + [InlineArray(256)] + public partial struct _driverInfo_e__FixedBuffer + { + public sbyte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceIDProperties.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceIDProperties.cs index d8e546a21..79a604574 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceIDProperties.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceIDProperties.cs @@ -3,6 +3,8 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkPhysicalDeviceIDProperties @@ -12,16 +14,34 @@ public unsafe partial struct VkPhysicalDeviceIDProperties public void* pNext; [NativeTypeName("uint8_t[16]")] - public fixed byte deviceUUID[16]; + public _deviceUUID_e__FixedBuffer deviceUUID; [NativeTypeName("uint8_t[16]")] - public fixed byte driverUUID[16]; + public _driverUUID_e__FixedBuffer driverUUID; [NativeTypeName("uint8_t[8]")] - public fixed byte deviceLUID[8]; + public _deviceLUID_e__FixedBuffer deviceLUID; [NativeTypeName("uint32_t")] public uint deviceNodeMask; public VkBool32 deviceLUIDValid; + + [InlineArray(16)] + public partial struct _deviceUUID_e__FixedBuffer + { + public byte e0; + } + + [InlineArray(16)] + public partial struct _driverUUID_e__FixedBuffer + { + public byte e0; + } + + [InlineArray(8)] + public partial struct _deviceLUID_e__FixedBuffer + { + public byte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceLimits.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceLimits.cs index ade11d89a..69632dc88 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceLimits.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceLimits.cs @@ -3,9 +3,11 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct VkPhysicalDeviceLimits +public partial struct VkPhysicalDeviceLimits { [NativeTypeName("uint32_t")] public uint maxImageDimension1D; @@ -164,13 +166,13 @@ public unsafe partial struct VkPhysicalDeviceLimits public uint maxComputeSharedMemorySize; [NativeTypeName("uint32_t[3]")] - public fixed uint maxComputeWorkGroupCount[3]; + public _maxComputeWorkGroupCount_e__FixedBuffer maxComputeWorkGroupCount; [NativeTypeName("uint32_t")] public uint maxComputeWorkGroupInvocations; [NativeTypeName("uint32_t[3]")] - public fixed uint maxComputeWorkGroupSize[3]; + public _maxComputeWorkGroupSize_e__FixedBuffer maxComputeWorkGroupSize; [NativeTypeName("uint32_t")] public uint subPixelPrecisionBits; @@ -195,10 +197,10 @@ public unsafe partial struct VkPhysicalDeviceLimits public uint maxViewports; [NativeTypeName("uint32_t[2]")] - public fixed uint maxViewportDimensions[2]; + public _maxViewportDimensions_e__FixedBuffer maxViewportDimensions; [NativeTypeName("float[2]")] - public fixed float viewportBoundsRange[2]; + public _viewportBoundsRange_e__FixedBuffer viewportBoundsRange; [NativeTypeName("uint32_t")] public uint viewportSubPixelBits; @@ -284,10 +286,10 @@ public unsafe partial struct VkPhysicalDeviceLimits public uint discreteQueuePriorities; [NativeTypeName("float[2]")] - public fixed float pointSizeRange[2]; + public _pointSizeRange_e__FixedBuffer pointSizeRange; [NativeTypeName("float[2]")] - public fixed float lineWidthRange[2]; + public _lineWidthRange_e__FixedBuffer lineWidthRange; public float pointSizeGranularity; @@ -305,4 +307,40 @@ public unsafe partial struct VkPhysicalDeviceLimits [NativeTypeName("VkDeviceSize")] public ulong nonCoherentAtomSize; + + [InlineArray(3)] + public partial struct _maxComputeWorkGroupCount_e__FixedBuffer + { + public uint e0; + } + + [InlineArray(3)] + public partial struct _maxComputeWorkGroupSize_e__FixedBuffer + { + public uint e0; + } + + [InlineArray(2)] + public partial struct _maxViewportDimensions_e__FixedBuffer + { + public uint e0; + } + + [InlineArray(2)] + public partial struct _viewportBoundsRange_e__FixedBuffer + { + public float e0; + } + + [InlineArray(2)] + public partial struct _pointSizeRange_e__FixedBuffer + { + public float e0; + } + + [InlineArray(2)] + public partial struct _lineWidthRange_e__FixedBuffer + { + public float e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceMemoryBudgetPropertiesEXT.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceMemoryBudgetPropertiesEXT.cs index 3f53302dc..7385ea138 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceMemoryBudgetPropertiesEXT.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceMemoryBudgetPropertiesEXT.cs @@ -3,6 +3,8 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkPhysicalDeviceMemoryBudgetPropertiesEXT @@ -12,8 +14,20 @@ public unsafe partial struct VkPhysicalDeviceMemoryBudgetPropertiesEXT public void* pNext; [NativeTypeName("VkDeviceSize[16]")] - public fixed ulong heapBudget[16]; + public _heapBudget_e__FixedBuffer heapBudget; [NativeTypeName("VkDeviceSize[16]")] - public fixed ulong heapUsage[16]; + public _heapUsage_e__FixedBuffer heapUsage; + + [InlineArray(16)] + public partial struct _heapBudget_e__FixedBuffer + { + public ulong e0; + } + + [InlineArray(16)] + public partial struct _heapUsage_e__FixedBuffer + { + public ulong e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceMemoryProperties.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceMemoryProperties.cs index a46c60218..612d129c5 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceMemoryProperties.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceMemoryProperties.cs @@ -3,10 +3,7 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; -using System.Diagnostics.CodeAnalysis; using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; namespace TerraFX.Interop.Vulkan; @@ -24,87 +21,15 @@ public partial struct VkPhysicalDeviceMemoryProperties [NativeTypeName("VkMemoryHeap[16]")] public _memoryHeaps_e__FixedBuffer memoryHeaps; + [InlineArray(32)] public partial struct _memoryTypes_e__FixedBuffer { public VkMemoryType e0; - public VkMemoryType e1; - public VkMemoryType e2; - public VkMemoryType e3; - public VkMemoryType e4; - public VkMemoryType e5; - public VkMemoryType e6; - public VkMemoryType e7; - public VkMemoryType e8; - public VkMemoryType e9; - public VkMemoryType e10; - public VkMemoryType e11; - public VkMemoryType e12; - public VkMemoryType e13; - public VkMemoryType e14; - public VkMemoryType e15; - public VkMemoryType e16; - public VkMemoryType e17; - public VkMemoryType e18; - public VkMemoryType e19; - public VkMemoryType e20; - public VkMemoryType e21; - public VkMemoryType e22; - public VkMemoryType e23; - public VkMemoryType e24; - public VkMemoryType e25; - public VkMemoryType e26; - public VkMemoryType e27; - public VkMemoryType e28; - public VkMemoryType e29; - public VkMemoryType e30; - public VkMemoryType e31; - - [UnscopedRef] - public ref VkMemoryType this[int index] - { - [MethodImpl(MethodImplOptions.AggressiveInlining)] - get - { - return ref AsSpan()[index]; - } - } - - [MethodImpl(MethodImplOptions.AggressiveInlining)] - [UnscopedRef] - public Span AsSpan() => MemoryMarshal.CreateSpan(ref e0, 32); } + [InlineArray(16)] public partial struct _memoryHeaps_e__FixedBuffer { public VkMemoryHeap e0; - public VkMemoryHeap e1; - public VkMemoryHeap e2; - public VkMemoryHeap e3; - public VkMemoryHeap e4; - public VkMemoryHeap e5; - public VkMemoryHeap e6; - public VkMemoryHeap e7; - public VkMemoryHeap e8; - public VkMemoryHeap e9; - public VkMemoryHeap e10; - public VkMemoryHeap e11; - public VkMemoryHeap e12; - public VkMemoryHeap e13; - public VkMemoryHeap e14; - public VkMemoryHeap e15; - - [UnscopedRef] - public ref VkMemoryHeap this[int index] - { - [MethodImpl(MethodImplOptions.AggressiveInlining)] - get - { - return ref AsSpan()[index]; - } - } - - [MethodImpl(MethodImplOptions.AggressiveInlining)] - [UnscopedRef] - public Span AsSpan() => MemoryMarshal.CreateSpan(ref e0, 16); } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceMeshShaderPropertiesEXT.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceMeshShaderPropertiesEXT.cs index 7bc093bab..76721afd3 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceMeshShaderPropertiesEXT.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceMeshShaderPropertiesEXT.cs @@ -3,6 +3,8 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkPhysicalDeviceMeshShaderPropertiesEXT @@ -15,13 +17,13 @@ public unsafe partial struct VkPhysicalDeviceMeshShaderPropertiesEXT public uint maxTaskWorkGroupTotalCount; [NativeTypeName("uint32_t[3]")] - public fixed uint maxTaskWorkGroupCount[3]; + public _maxTaskWorkGroupCount_e__FixedBuffer maxTaskWorkGroupCount; [NativeTypeName("uint32_t")] public uint maxTaskWorkGroupInvocations; [NativeTypeName("uint32_t[3]")] - public fixed uint maxTaskWorkGroupSize[3]; + public _maxTaskWorkGroupSize_e__FixedBuffer maxTaskWorkGroupSize; [NativeTypeName("uint32_t")] public uint maxTaskPayloadSize; @@ -36,13 +38,13 @@ public unsafe partial struct VkPhysicalDeviceMeshShaderPropertiesEXT public uint maxMeshWorkGroupTotalCount; [NativeTypeName("uint32_t[3]")] - public fixed uint maxMeshWorkGroupCount[3]; + public _maxMeshWorkGroupCount_e__FixedBuffer maxMeshWorkGroupCount; [NativeTypeName("uint32_t")] public uint maxMeshWorkGroupInvocations; [NativeTypeName("uint32_t[3]")] - public fixed uint maxMeshWorkGroupSize[3]; + public _maxMeshWorkGroupSize_e__FixedBuffer maxMeshWorkGroupSize; [NativeTypeName("uint32_t")] public uint maxMeshSharedMemorySize; @@ -90,4 +92,28 @@ public unsafe partial struct VkPhysicalDeviceMeshShaderPropertiesEXT public VkBool32 prefersCompactVertexOutput; public VkBool32 prefersCompactPrimitiveOutput; + + [InlineArray(3)] + public partial struct _maxTaskWorkGroupCount_e__FixedBuffer + { + public uint e0; + } + + [InlineArray(3)] + public partial struct _maxTaskWorkGroupSize_e__FixedBuffer + { + public uint e0; + } + + [InlineArray(3)] + public partial struct _maxMeshWorkGroupCount_e__FixedBuffer + { + public uint e0; + } + + [InlineArray(3)] + public partial struct _maxMeshWorkGroupSize_e__FixedBuffer + { + public uint e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceMeshShaderPropertiesNV.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceMeshShaderPropertiesNV.cs index 3f5c2e2e7..bdb4d8979 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceMeshShaderPropertiesNV.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceMeshShaderPropertiesNV.cs @@ -3,6 +3,8 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkPhysicalDeviceMeshShaderPropertiesNV @@ -18,7 +20,7 @@ public unsafe partial struct VkPhysicalDeviceMeshShaderPropertiesNV public uint maxTaskWorkGroupInvocations; [NativeTypeName("uint32_t[3]")] - public fixed uint maxTaskWorkGroupSize[3]; + public _maxTaskWorkGroupSize_e__FixedBuffer maxTaskWorkGroupSize; [NativeTypeName("uint32_t")] public uint maxTaskTotalMemorySize; @@ -30,7 +32,7 @@ public unsafe partial struct VkPhysicalDeviceMeshShaderPropertiesNV public uint maxMeshWorkGroupInvocations; [NativeTypeName("uint32_t[3]")] - public fixed uint maxMeshWorkGroupSize[3]; + public _maxMeshWorkGroupSize_e__FixedBuffer maxMeshWorkGroupSize; [NativeTypeName("uint32_t")] public uint maxMeshTotalMemorySize; @@ -49,4 +51,16 @@ public unsafe partial struct VkPhysicalDeviceMeshShaderPropertiesNV [NativeTypeName("uint32_t")] public uint meshOutputPerPrimitiveGranularity; + + [InlineArray(3)] + public partial struct _maxTaskWorkGroupSize_e__FixedBuffer + { + public uint e0; + } + + [InlineArray(3)] + public partial struct _maxMeshWorkGroupSize_e__FixedBuffer + { + public uint e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceProperties.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceProperties.cs index 3198829bc..76b631849 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceProperties.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceProperties.cs @@ -3,9 +3,11 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct VkPhysicalDeviceProperties +public partial struct VkPhysicalDeviceProperties { [NativeTypeName("uint32_t")] public uint apiVersion; @@ -22,12 +24,24 @@ public unsafe partial struct VkPhysicalDeviceProperties public VkPhysicalDeviceType deviceType; [NativeTypeName("char[256]")] - public fixed sbyte deviceName[256]; + public _deviceName_e__FixedBuffer deviceName; [NativeTypeName("uint8_t[16]")] - public fixed byte pipelineCacheUUID[16]; + public _pipelineCacheUUID_e__FixedBuffer pipelineCacheUUID; public VkPhysicalDeviceLimits limits; public VkPhysicalDeviceSparseProperties sparseProperties; + + [InlineArray(256)] + public partial struct _deviceName_e__FixedBuffer + { + public sbyte e0; + } + + [InlineArray(16)] + public partial struct _pipelineCacheUUID_e__FixedBuffer + { + public byte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceSampleLocationsPropertiesEXT.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceSampleLocationsPropertiesEXT.cs index 4a1ce7fa4..c073229ac 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceSampleLocationsPropertiesEXT.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceSampleLocationsPropertiesEXT.cs @@ -3,6 +3,8 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkPhysicalDeviceSampleLocationsPropertiesEXT @@ -16,10 +18,16 @@ public unsafe partial struct VkPhysicalDeviceSampleLocationsPropertiesEXT public VkExtent2D maxSampleLocationGridSize; [NativeTypeName("float[2]")] - public fixed float sampleLocationCoordinateRange[2]; + public _sampleLocationCoordinateRange_e__FixedBuffer sampleLocationCoordinateRange; [NativeTypeName("uint32_t")] public uint sampleLocationSubPixelBits; public VkBool32 variableSampleLocations; + + [InlineArray(2)] + public partial struct _sampleLocationCoordinateRange_e__FixedBuffer + { + public float e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT.cs index 9d62494df..01d78a8db 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT.cs @@ -3,6 +3,8 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT @@ -12,5 +14,11 @@ public unsafe partial struct VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT public void* pNext; [NativeTypeName("uint8_t[16]")] - public fixed byte shaderModuleIdentifierAlgorithmUUID[16]; + public _shaderModuleIdentifierAlgorithmUUID_e__FixedBuffer shaderModuleIdentifierAlgorithmUUID; + + [InlineArray(16)] + public partial struct _shaderModuleIdentifierAlgorithmUUID_e__FixedBuffer + { + public byte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceToolProperties.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceToolProperties.cs index a4df49b70..d85243c3b 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceToolProperties.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceToolProperties.cs @@ -3,6 +3,8 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkPhysicalDeviceToolProperties @@ -12,16 +14,40 @@ public unsafe partial struct VkPhysicalDeviceToolProperties public void* pNext; [NativeTypeName("char[256]")] - public fixed sbyte name[256]; + public _name_e__FixedBuffer name; [NativeTypeName("char[256]")] - public fixed sbyte version[256]; + public _version_e__FixedBuffer version; public VkToolPurposeFlags purposes; [NativeTypeName("char[256]")] - public fixed sbyte description[256]; + public _description_e__FixedBuffer description; [NativeTypeName("char[256]")] - public fixed sbyte layer[256]; + public _layer_e__FixedBuffer layer; + + [InlineArray(256)] + public partial struct _name_e__FixedBuffer + { + public sbyte e0; + } + + [InlineArray(256)] + public partial struct _version_e__FixedBuffer + { + public sbyte e0; + } + + [InlineArray(256)] + public partial struct _description_e__FixedBuffer + { + public sbyte e0; + } + + [InlineArray(256)] + public partial struct _layer_e__FixedBuffer + { + public sbyte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceVulkan11Properties.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceVulkan11Properties.cs index d02dc6db2..2d5d7e707 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceVulkan11Properties.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceVulkan11Properties.cs @@ -3,6 +3,8 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkPhysicalDeviceVulkan11Properties @@ -12,13 +14,13 @@ public unsafe partial struct VkPhysicalDeviceVulkan11Properties public void* pNext; [NativeTypeName("uint8_t[16]")] - public fixed byte deviceUUID[16]; + public _deviceUUID_e__FixedBuffer deviceUUID; [NativeTypeName("uint8_t[16]")] - public fixed byte driverUUID[16]; + public _driverUUID_e__FixedBuffer driverUUID; [NativeTypeName("uint8_t[8]")] - public fixed byte deviceLUID[8]; + public _deviceLUID_e__FixedBuffer deviceLUID; [NativeTypeName("uint32_t")] public uint deviceNodeMask; @@ -49,4 +51,22 @@ public unsafe partial struct VkPhysicalDeviceVulkan11Properties [NativeTypeName("VkDeviceSize")] public ulong maxMemoryAllocationSize; + + [InlineArray(16)] + public partial struct _deviceUUID_e__FixedBuffer + { + public byte e0; + } + + [InlineArray(16)] + public partial struct _driverUUID_e__FixedBuffer + { + public byte e0; + } + + [InlineArray(8)] + public partial struct _deviceLUID_e__FixedBuffer + { + public byte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceVulkan12Properties.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceVulkan12Properties.cs index 9215b7a88..e0b30ba98 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceVulkan12Properties.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPhysicalDeviceVulkan12Properties.cs @@ -3,6 +3,8 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkPhysicalDeviceVulkan12Properties @@ -14,10 +16,10 @@ public unsafe partial struct VkPhysicalDeviceVulkan12Properties public VkDriverId driverID; [NativeTypeName("char[256]")] - public fixed sbyte driverName[256]; + public _driverName_e__FixedBuffer driverName; [NativeTypeName("char[256]")] - public fixed sbyte driverInfo[256]; + public _driverInfo_e__FixedBuffer driverInfo; public VkConformanceVersion conformanceVersion; @@ -133,4 +135,16 @@ public unsafe partial struct VkPhysicalDeviceVulkan12Properties public ulong maxTimelineSemaphoreValueDifference; public VkSampleCountFlags framebufferIntegerColorSampleCounts; + + [InlineArray(256)] + public partial struct _driverName_e__FixedBuffer + { + public sbyte e0; + } + + [InlineArray(256)] + public partial struct _driverInfo_e__FixedBuffer + { + public sbyte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineCacheHeaderVersionOne.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineCacheHeaderVersionOne.cs index e5ea07643..523f1f034 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineCacheHeaderVersionOne.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineCacheHeaderVersionOne.cs @@ -3,9 +3,11 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct VkPipelineCacheHeaderVersionOne +public partial struct VkPipelineCacheHeaderVersionOne { [NativeTypeName("uint32_t")] public uint headerSize; @@ -19,5 +21,11 @@ public unsafe partial struct VkPipelineCacheHeaderVersionOne public uint deviceID; [NativeTypeName("uint8_t[16]")] - public fixed byte pipelineCacheUUID[16]; + public _pipelineCacheUUID_e__FixedBuffer pipelineCacheUUID; + + [InlineArray(16)] + public partial struct _pipelineCacheUUID_e__FixedBuffer + { + public byte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineColorBlendStateCreateInfo.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineColorBlendStateCreateInfo.cs index 80c67ba3d..0d237a4ac 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineColorBlendStateCreateInfo.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineColorBlendStateCreateInfo.cs @@ -3,6 +3,8 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkPipelineColorBlendStateCreateInfo @@ -25,5 +27,11 @@ public unsafe partial struct VkPipelineColorBlendStateCreateInfo public VkPipelineColorBlendAttachmentState* pAttachments; [NativeTypeName("float[4]")] - public fixed float blendConstants[4]; + public _blendConstants_e__FixedBuffer blendConstants; + + [InlineArray(4)] + public partial struct _blendConstants_e__FixedBuffer + { + public float e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineExecutableInternalRepresentationKHR.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineExecutableInternalRepresentationKHR.cs index 67a8a09fe..f5d66a676 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineExecutableInternalRepresentationKHR.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineExecutableInternalRepresentationKHR.cs @@ -3,6 +3,8 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkPipelineExecutableInternalRepresentationKHR @@ -12,10 +14,10 @@ public unsafe partial struct VkPipelineExecutableInternalRepresentationKHR public void* pNext; [NativeTypeName("char[256]")] - public fixed sbyte name[256]; + public _name_e__FixedBuffer name; [NativeTypeName("char[256]")] - public fixed sbyte description[256]; + public _description_e__FixedBuffer description; public VkBool32 isText; @@ -23,4 +25,16 @@ public unsafe partial struct VkPipelineExecutableInternalRepresentationKHR public nuint dataSize; public void* pData; + + [InlineArray(256)] + public partial struct _name_e__FixedBuffer + { + public sbyte e0; + } + + [InlineArray(256)] + public partial struct _description_e__FixedBuffer + { + public sbyte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineExecutablePropertiesKHR.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineExecutablePropertiesKHR.cs index b1f13f6ca..77d2e977a 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineExecutablePropertiesKHR.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineExecutablePropertiesKHR.cs @@ -3,6 +3,8 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkPipelineExecutablePropertiesKHR @@ -14,11 +16,23 @@ public unsafe partial struct VkPipelineExecutablePropertiesKHR public VkShaderStageFlags stages; [NativeTypeName("char[256]")] - public fixed sbyte name[256]; + public _name_e__FixedBuffer name; [NativeTypeName("char[256]")] - public fixed sbyte description[256]; + public _description_e__FixedBuffer description; [NativeTypeName("uint32_t")] public uint subgroupSize; + + [InlineArray(256)] + public partial struct _name_e__FixedBuffer + { + public sbyte e0; + } + + [InlineArray(256)] + public partial struct _description_e__FixedBuffer + { + public sbyte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineExecutableStatisticKHR.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineExecutableStatisticKHR.cs index 53ecac9b0..71357264e 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineExecutableStatisticKHR.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineExecutableStatisticKHR.cs @@ -3,6 +3,8 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkPipelineExecutableStatisticKHR @@ -12,12 +14,24 @@ public unsafe partial struct VkPipelineExecutableStatisticKHR public void* pNext; [NativeTypeName("char[256]")] - public fixed sbyte name[256]; + public _name_e__FixedBuffer name; [NativeTypeName("char[256]")] - public fixed sbyte description[256]; + public _description_e__FixedBuffer description; public VkPipelineExecutableStatisticFormatKHR format; public VkPipelineExecutableStatisticValueKHR value; + + [InlineArray(256)] + public partial struct _name_e__FixedBuffer + { + public sbyte e0; + } + + [InlineArray(256)] + public partial struct _description_e__FixedBuffer + { + public sbyte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineFragmentShadingRateEnumStateCreateInfoNV.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineFragmentShadingRateEnumStateCreateInfoNV.cs index 762bfd075..3d2c2303c 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineFragmentShadingRateEnumStateCreateInfoNV.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineFragmentShadingRateEnumStateCreateInfoNV.cs @@ -3,10 +3,7 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; -using System.Diagnostics.CodeAnalysis; using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; namespace TerraFX.Interop.Vulkan; @@ -24,23 +21,9 @@ public unsafe partial struct VkPipelineFragmentShadingRateEnumStateCreateInfoNV [NativeTypeName("VkFragmentShadingRateCombinerOpKHR[2]")] public _combinerOps_e__FixedBuffer combinerOps; + [InlineArray(2)] public partial struct _combinerOps_e__FixedBuffer { public VkFragmentShadingRateCombinerOpKHR e0; - public VkFragmentShadingRateCombinerOpKHR e1; - - [UnscopedRef] - public ref VkFragmentShadingRateCombinerOpKHR this[int index] - { - [MethodImpl(MethodImplOptions.AggressiveInlining)] - get - { - return ref AsSpan()[index]; - } - } - - [MethodImpl(MethodImplOptions.AggressiveInlining)] - [UnscopedRef] - public Span AsSpan() => MemoryMarshal.CreateSpan(ref e0, 2); } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineFragmentShadingRateStateCreateInfoKHR.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineFragmentShadingRateStateCreateInfoKHR.cs index 00356b087..81387be04 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineFragmentShadingRateStateCreateInfoKHR.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelineFragmentShadingRateStateCreateInfoKHR.cs @@ -3,10 +3,7 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; -using System.Diagnostics.CodeAnalysis; using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; namespace TerraFX.Interop.Vulkan; @@ -22,23 +19,9 @@ public unsafe partial struct VkPipelineFragmentShadingRateStateCreateInfoKHR [NativeTypeName("VkFragmentShadingRateCombinerOpKHR[2]")] public _combinerOps_e__FixedBuffer combinerOps; + [InlineArray(2)] public partial struct _combinerOps_e__FixedBuffer { public VkFragmentShadingRateCombinerOpKHR e0; - public VkFragmentShadingRateCombinerOpKHR e1; - - [UnscopedRef] - public ref VkFragmentShadingRateCombinerOpKHR this[int index] - { - [MethodImpl(MethodImplOptions.AggressiveInlining)] - get - { - return ref AsSpan()[index]; - } - } - - [MethodImpl(MethodImplOptions.AggressiveInlining)] - [UnscopedRef] - public Span AsSpan() => MemoryMarshal.CreateSpan(ref e0, 2); } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelinePropertiesIdentifierEXT.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelinePropertiesIdentifierEXT.cs index 110385a07..1365dc746 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelinePropertiesIdentifierEXT.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkPipelinePropertiesIdentifierEXT.cs @@ -3,6 +3,8 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkPipelinePropertiesIdentifierEXT @@ -12,5 +14,11 @@ public unsafe partial struct VkPipelinePropertiesIdentifierEXT public void* pNext; [NativeTypeName("uint8_t[16]")] - public fixed byte pipelineIdentifier[16]; + public _pipelineIdentifier_e__FixedBuffer pipelineIdentifier; + + [InlineArray(16)] + public partial struct _pipelineIdentifier_e__FixedBuffer + { + public byte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkQueueFamilyGlobalPriorityPropertiesKHR.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkQueueFamilyGlobalPriorityPropertiesKHR.cs index 766e718d3..8c342e040 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkQueueFamilyGlobalPriorityPropertiesKHR.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkQueueFamilyGlobalPriorityPropertiesKHR.cs @@ -3,10 +3,7 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; -using System.Diagnostics.CodeAnalysis; using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; namespace TerraFX.Interop.Vulkan; @@ -22,37 +19,9 @@ public unsafe partial struct VkQueueFamilyGlobalPriorityPropertiesKHR [NativeTypeName("VkQueueGlobalPriorityKHR[16]")] public _priorities_e__FixedBuffer priorities; + [InlineArray(16)] public partial struct _priorities_e__FixedBuffer { public VkQueueGlobalPriorityKHR e0; - public VkQueueGlobalPriorityKHR e1; - public VkQueueGlobalPriorityKHR e2; - public VkQueueGlobalPriorityKHR e3; - public VkQueueGlobalPriorityKHR e4; - public VkQueueGlobalPriorityKHR e5; - public VkQueueGlobalPriorityKHR e6; - public VkQueueGlobalPriorityKHR e7; - public VkQueueGlobalPriorityKHR e8; - public VkQueueGlobalPriorityKHR e9; - public VkQueueGlobalPriorityKHR e10; - public VkQueueGlobalPriorityKHR e11; - public VkQueueGlobalPriorityKHR e12; - public VkQueueGlobalPriorityKHR e13; - public VkQueueGlobalPriorityKHR e14; - public VkQueueGlobalPriorityKHR e15; - - [UnscopedRef] - public ref VkQueueGlobalPriorityKHR this[int index] - { - [MethodImpl(MethodImplOptions.AggressiveInlining)] - get - { - return ref AsSpan()[index]; - } - } - - [MethodImpl(MethodImplOptions.AggressiveInlining)] - [UnscopedRef] - public Span AsSpan() => MemoryMarshal.CreateSpan(ref e0, 16); } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkRenderPassSubpassFeedbackInfoEXT.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkRenderPassSubpassFeedbackInfoEXT.cs index 1d5416f2a..dbe25b363 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkRenderPassSubpassFeedbackInfoEXT.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkRenderPassSubpassFeedbackInfoEXT.cs @@ -3,15 +3,23 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct VkRenderPassSubpassFeedbackInfoEXT +public partial struct VkRenderPassSubpassFeedbackInfoEXT { public VkSubpassMergeStatusEXT subpassMergeStatus; [NativeTypeName("char[256]")] - public fixed sbyte description[256]; + public _description_e__FixedBuffer description; [NativeTypeName("uint32_t")] public uint postMergeIndex; + + [InlineArray(256)] + public partial struct _description_e__FixedBuffer + { + public sbyte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkShaderModuleIdentifierEXT.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkShaderModuleIdentifierEXT.cs index d5791ee53..38d13b2d0 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkShaderModuleIdentifierEXT.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkShaderModuleIdentifierEXT.cs @@ -3,6 +3,8 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkShaderModuleIdentifierEXT @@ -15,5 +17,11 @@ public unsafe partial struct VkShaderModuleIdentifierEXT public uint identifierSize; [NativeTypeName("uint8_t[32]")] - public fixed byte identifier[32]; + public _identifier_e__FixedBuffer identifier; + + [InlineArray(32)] + public partial struct _identifier_e__FixedBuffer + { + public byte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkShaderStatisticsInfoAMD.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkShaderStatisticsInfoAMD.cs index 40b0dea2d..cb24089f6 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkShaderStatisticsInfoAMD.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkShaderStatisticsInfoAMD.cs @@ -3,9 +3,11 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct VkShaderStatisticsInfoAMD +public partial struct VkShaderStatisticsInfoAMD { public VkShaderStageFlags shaderStageMask; @@ -24,5 +26,11 @@ public unsafe partial struct VkShaderStatisticsInfoAMD public uint numAvailableSgprs; [NativeTypeName("uint32_t[3]")] - public fixed uint computeWorkGroupSize[3]; + public _computeWorkGroupSize_e__FixedBuffer computeWorkGroupSize; + + [InlineArray(3)] + public partial struct _computeWorkGroupSize_e__FixedBuffer + { + public uint e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkTransformMatrixKHR.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkTransformMatrixKHR.cs index a99860d2b..7ce352e96 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkTransformMatrixKHR.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_core/VkTransformMatrixKHR.cs @@ -3,10 +3,18 @@ // Ported from include/vulkan/vulkan_core.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct VkTransformMatrixKHR +public partial struct VkTransformMatrixKHR { [NativeTypeName("float[3][4]")] - public fixed float matrix[3 * 4]; + public _matrix_e__FixedBuffer matrix; + + [InlineArray(3 * 4)] + public partial struct _matrix_e__FixedBuffer + { + public float e0_0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_directfb/VkDirectFBSurfaceCreateInfoEXT.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_directfb/VkDirectFBSurfaceCreateInfoEXT.cs index 279053db1..20d8f1f51 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_directfb/VkDirectFBSurfaceCreateInfoEXT.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_directfb/VkDirectFBSurfaceCreateInfoEXT.cs @@ -3,8 +3,6 @@ // Ported from include/vulkan/vulkan_directfb.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkDirectFBSurfaceCreateInfoEXT @@ -16,7 +14,9 @@ public unsafe partial struct VkDirectFBSurfaceCreateInfoEXT public VkDirectFBSurfaceCreateFlagsEXT flags; - public IntPtr dfb; + [NativeTypeName("IDirectFB*")] + public void* dfb; - public IntPtr surface; + [NativeTypeName("IDirectFBSurface*")] + public void* surface; } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_directfb/VkPhysicalDeviceManualImports.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_directfb/VkPhysicalDeviceManualImports.cs index 3e3d62a69..cc8d5fabd 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_directfb/VkPhysicalDeviceManualImports.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_directfb/VkPhysicalDeviceManualImports.cs @@ -3,11 +3,9 @@ // Ported from include/vulkan/vulkan_directfb.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkPhysicalDeviceManualImports { - public delegate* unmanaged vkGetPhysicalDeviceDirectFBPresentationSupportEXT; + public delegate* unmanaged vkGetPhysicalDeviceDirectFBPresentationSupportEXT; } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_metal/VkExportMetalIOSurfaceInfoEXT.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_metal/VkExportMetalIOSurfaceInfoEXT.cs index fc70bf293..504d3e556 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_metal/VkExportMetalIOSurfaceInfoEXT.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_metal/VkExportMetalIOSurfaceInfoEXT.cs @@ -3,8 +3,6 @@ // Ported from include/vulkan/vulkan_metal.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkExportMetalIOSurfaceInfoEXT @@ -17,5 +15,5 @@ public unsafe partial struct VkExportMetalIOSurfaceInfoEXT public VkImage image; [NativeTypeName("IOSurfaceRef")] - public IntPtr ioSurface; + public void* ioSurface; } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_metal/VkImportMetalIOSurfaceInfoEXT.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_metal/VkImportMetalIOSurfaceInfoEXT.cs index faec8392d..4819ea14c 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_metal/VkImportMetalIOSurfaceInfoEXT.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_metal/VkImportMetalIOSurfaceInfoEXT.cs @@ -3,8 +3,6 @@ // Ported from include/vulkan/vulkan_metal.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkImportMetalIOSurfaceInfoEXT @@ -15,5 +13,5 @@ public unsafe partial struct VkImportMetalIOSurfaceInfoEXT public void* pNext; [NativeTypeName("IOSurfaceRef")] - public IntPtr ioSurface; + public void* ioSurface; } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_profiles/VpProfileProperties.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_profiles/VpProfileProperties.cs index fc828114d..c4f30ddf7 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_profiles/VpProfileProperties.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_profiles/VpProfileProperties.cs @@ -3,13 +3,21 @@ // Ported from include/vulkan/vulkan_profiles.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2021-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) +using System.Runtime.CompilerServices; + namespace TerraFX.Interop.Vulkan; -public unsafe partial struct VpProfileProperties +public partial struct VpProfileProperties { [NativeTypeName("char[256]")] - public fixed sbyte profileName[256]; + public _profileName_e__FixedBuffer profileName; [NativeTypeName("uint32_t")] public uint specVersion; + + [InlineArray(256)] + public partial struct _profileName_e__FixedBuffer + { + public sbyte e0; + } } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_screen/VkPhysicalDeviceManualImports.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_screen/VkPhysicalDeviceManualImports.cs index 7c0d1c89b..e10dacc5c 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_screen/VkPhysicalDeviceManualImports.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_screen/VkPhysicalDeviceManualImports.cs @@ -3,11 +3,9 @@ // Ported from include/vulkan/vulkan_screen.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkPhysicalDeviceManualImports { - public delegate* unmanaged vkGetPhysicalDeviceScreenPresentationSupportQNX; + public delegate* unmanaged vkGetPhysicalDeviceScreenPresentationSupportQNX; } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_screen/VkScreenSurfaceCreateInfoQNX.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_screen/VkScreenSurfaceCreateInfoQNX.cs index 5feaae4c8..175b8b64b 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_screen/VkScreenSurfaceCreateInfoQNX.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_screen/VkScreenSurfaceCreateInfoQNX.cs @@ -3,8 +3,6 @@ // Ported from include/vulkan/vulkan_screen.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkScreenSurfaceCreateInfoQNX @@ -17,8 +15,8 @@ public unsafe partial struct VkScreenSurfaceCreateInfoQNX public VkScreenSurfaceCreateFlagsQNX flags; [NativeTypeName("struct _screen_context *")] - public IntPtr context; + public void* context; [NativeTypeName("struct _screen_window *")] - public IntPtr window; + public void* window; } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_wayland/VkPhysicalDeviceManualImports.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_wayland/VkPhysicalDeviceManualImports.cs index 31a70ab66..98094b567 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_wayland/VkPhysicalDeviceManualImports.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_wayland/VkPhysicalDeviceManualImports.cs @@ -3,11 +3,9 @@ // Ported from include/vulkan/vulkan_wayland.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkPhysicalDeviceManualImports { - public delegate* unmanaged vkGetPhysicalDeviceWaylandPresentationSupportKHR; + public delegate* unmanaged vkGetPhysicalDeviceWaylandPresentationSupportKHR; } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_wayland/VkWaylandSurfaceCreateInfoKHR.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_wayland/VkWaylandSurfaceCreateInfoKHR.cs index 9d0be3a39..1b56d9cbb 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_wayland/VkWaylandSurfaceCreateInfoKHR.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_wayland/VkWaylandSurfaceCreateInfoKHR.cs @@ -3,8 +3,6 @@ // Ported from include/vulkan/vulkan_wayland.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkWaylandSurfaceCreateInfoKHR @@ -17,8 +15,8 @@ public unsafe partial struct VkWaylandSurfaceCreateInfoKHR public VkWaylandSurfaceCreateFlagsKHR flags; [NativeTypeName("struct wl_display *")] - public IntPtr display; + public void* display; [NativeTypeName("struct wl_surface *")] - public IntPtr surface; + public void* surface; } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkDeviceManualImports.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkDeviceManualImports.cs index 892e582a5..8938ba437 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkDeviceManualImports.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkDeviceManualImports.cs @@ -3,25 +3,23 @@ // Ported from include/vulkan/vulkan_win32.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkDeviceManualImports { - public delegate* unmanaged vkGetMemoryWin32HandleKHR; + public delegate* unmanaged vkGetMemoryWin32HandleKHR; - public delegate* unmanaged vkGetMemoryWin32HandlePropertiesKHR; + public delegate* unmanaged vkGetMemoryWin32HandlePropertiesKHR; public delegate* unmanaged vkImportSemaphoreWin32HandleKHR; - public delegate* unmanaged vkGetSemaphoreWin32HandleKHR; + public delegate* unmanaged vkGetSemaphoreWin32HandleKHR; public delegate* unmanaged vkImportFenceWin32HandleKHR; - public delegate* unmanaged vkGetFenceWin32HandleKHR; + public delegate* unmanaged vkGetFenceWin32HandleKHR; - public delegate* unmanaged vkGetMemoryWin32HandleNV; + public delegate* unmanaged vkGetMemoryWin32HandleNV; public delegate* unmanaged vkAcquireFullScreenExclusiveModeEXT; diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkExportFenceWin32HandleInfoKHR.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkExportFenceWin32HandleInfoKHR.cs index f80090edd..655ed00d0 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkExportFenceWin32HandleInfoKHR.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkExportFenceWin32HandleInfoKHR.cs @@ -3,8 +3,6 @@ // Ported from include/vulkan/vulkan_win32.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkExportFenceWin32HandleInfoKHR @@ -15,11 +13,11 @@ public unsafe partial struct VkExportFenceWin32HandleInfoKHR public void* pNext; [NativeTypeName("const SECURITY_ATTRIBUTES *")] - public IntPtr pAttributes; + public void* pAttributes; [NativeTypeName("DWORD")] public uint dwAccess; [NativeTypeName("LPCWSTR")] - public ushort* name; + public char* name; } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkExportMemoryWin32HandleInfoKHR.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkExportMemoryWin32HandleInfoKHR.cs index 31e28335e..8cd063833 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkExportMemoryWin32HandleInfoKHR.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkExportMemoryWin32HandleInfoKHR.cs @@ -3,8 +3,6 @@ // Ported from include/vulkan/vulkan_win32.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkExportMemoryWin32HandleInfoKHR @@ -15,11 +13,11 @@ public unsafe partial struct VkExportMemoryWin32HandleInfoKHR public void* pNext; [NativeTypeName("const SECURITY_ATTRIBUTES *")] - public IntPtr pAttributes; + public void* pAttributes; [NativeTypeName("DWORD")] public uint dwAccess; [NativeTypeName("LPCWSTR")] - public ushort* name; + public char* name; } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkExportMemoryWin32HandleInfoNV.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkExportMemoryWin32HandleInfoNV.cs index 65ac61ca8..b1b1b8b05 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkExportMemoryWin32HandleInfoNV.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkExportMemoryWin32HandleInfoNV.cs @@ -3,8 +3,6 @@ // Ported from include/vulkan/vulkan_win32.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkExportMemoryWin32HandleInfoNV @@ -15,7 +13,7 @@ public unsafe partial struct VkExportMemoryWin32HandleInfoNV public void* pNext; [NativeTypeName("const SECURITY_ATTRIBUTES *")] - public IntPtr pAttributes; + public void* pAttributes; [NativeTypeName("DWORD")] public uint dwAccess; diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkExportSemaphoreWin32HandleInfoKHR.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkExportSemaphoreWin32HandleInfoKHR.cs index 76dc9e9ea..c511ba3e5 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkExportSemaphoreWin32HandleInfoKHR.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkExportSemaphoreWin32HandleInfoKHR.cs @@ -3,8 +3,6 @@ // Ported from include/vulkan/vulkan_win32.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkExportSemaphoreWin32HandleInfoKHR @@ -15,11 +13,11 @@ public unsafe partial struct VkExportSemaphoreWin32HandleInfoKHR public void* pNext; [NativeTypeName("const SECURITY_ATTRIBUTES *")] - public IntPtr pAttributes; + public void* pAttributes; [NativeTypeName("DWORD")] public uint dwAccess; [NativeTypeName("LPCWSTR")] - public ushort* name; + public char* name; } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkImportFenceWin32HandleInfoKHR.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkImportFenceWin32HandleInfoKHR.cs index 1d85de9c5..288dadd9c 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkImportFenceWin32HandleInfoKHR.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkImportFenceWin32HandleInfoKHR.cs @@ -3,8 +3,6 @@ // Ported from include/vulkan/vulkan_win32.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkImportFenceWin32HandleInfoKHR @@ -22,8 +20,8 @@ public unsafe partial struct VkImportFenceWin32HandleInfoKHR public VkExternalFenceHandleTypeFlags handleType; [NativeTypeName("HANDLE")] - public IntPtr handle; + public void* handle; [NativeTypeName("LPCWSTR")] - public ushort* name; + public char* name; } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkImportMemoryWin32HandleInfoKHR.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkImportMemoryWin32HandleInfoKHR.cs index 75caf8f07..08f37e255 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkImportMemoryWin32HandleInfoKHR.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkImportMemoryWin32HandleInfoKHR.cs @@ -3,8 +3,6 @@ // Ported from include/vulkan/vulkan_win32.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkImportMemoryWin32HandleInfoKHR @@ -18,8 +16,8 @@ public unsafe partial struct VkImportMemoryWin32HandleInfoKHR public VkExternalMemoryHandleTypeFlags handleType; [NativeTypeName("HANDLE")] - public IntPtr handle; + public void* handle; [NativeTypeName("LPCWSTR")] - public ushort* name; + public char* name; } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkImportMemoryWin32HandleInfoNV.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkImportMemoryWin32HandleInfoNV.cs index 87d42f40b..ca905fd9b 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkImportMemoryWin32HandleInfoNV.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkImportMemoryWin32HandleInfoNV.cs @@ -3,8 +3,6 @@ // Ported from include/vulkan/vulkan_win32.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkImportMemoryWin32HandleInfoNV @@ -17,5 +15,5 @@ public unsafe partial struct VkImportMemoryWin32HandleInfoNV public VkExternalMemoryHandleTypeFlagsNV handleType; [NativeTypeName("HANDLE")] - public IntPtr handle; + public void* handle; } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkImportSemaphoreWin32HandleInfoKHR.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkImportSemaphoreWin32HandleInfoKHR.cs index bc7eccd31..1630307c2 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkImportSemaphoreWin32HandleInfoKHR.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkImportSemaphoreWin32HandleInfoKHR.cs @@ -3,8 +3,6 @@ // Ported from include/vulkan/vulkan_win32.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkImportSemaphoreWin32HandleInfoKHR @@ -22,8 +20,8 @@ public unsafe partial struct VkImportSemaphoreWin32HandleInfoKHR public VkExternalSemaphoreHandleTypeFlags handleType; [NativeTypeName("HANDLE")] - public IntPtr handle; + public void* handle; [NativeTypeName("LPCWSTR")] - public ushort* name; + public char* name; } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkSurfaceFullScreenExclusiveWin32InfoEXT.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkSurfaceFullScreenExclusiveWin32InfoEXT.cs index d9322451a..34aa18d07 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkSurfaceFullScreenExclusiveWin32InfoEXT.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkSurfaceFullScreenExclusiveWin32InfoEXT.cs @@ -3,8 +3,6 @@ // Ported from include/vulkan/vulkan_win32.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkSurfaceFullScreenExclusiveWin32InfoEXT @@ -15,5 +13,5 @@ public unsafe partial struct VkSurfaceFullScreenExclusiveWin32InfoEXT public void* pNext; [NativeTypeName("HMONITOR")] - public IntPtr hmonitor; + public void* hmonitor; } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkWin32SurfaceCreateInfoKHR.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkWin32SurfaceCreateInfoKHR.cs index 28ed0ffe1..15ff4177d 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkWin32SurfaceCreateInfoKHR.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_win32/VkWin32SurfaceCreateInfoKHR.cs @@ -3,8 +3,6 @@ // Ported from include/vulkan/vulkan_win32.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkWin32SurfaceCreateInfoKHR @@ -17,8 +15,8 @@ public unsafe partial struct VkWin32SurfaceCreateInfoKHR public VkWin32SurfaceCreateFlagsKHR flags; [NativeTypeName("HINSTANCE")] - public IntPtr hinstance; + public void* hinstance; [NativeTypeName("HWND")] - public IntPtr hwnd; + public void* hwnd; } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_xcb/VkPhysicalDeviceManualImports.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_xcb/VkPhysicalDeviceManualImports.cs index bf6e0c022..ef24f29e5 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_xcb/VkPhysicalDeviceManualImports.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_xcb/VkPhysicalDeviceManualImports.cs @@ -3,11 +3,9 @@ // Ported from include/vulkan/vulkan_xcb.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkPhysicalDeviceManualImports { - public delegate* unmanaged vkGetPhysicalDeviceXcbPresentationSupportKHR; + public delegate* unmanaged vkGetPhysicalDeviceXcbPresentationSupportKHR; } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_xcb/VkXcbSurfaceCreateInfoKHR.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_xcb/VkXcbSurfaceCreateInfoKHR.cs index a446e46ff..ba9ef5584 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_xcb/VkXcbSurfaceCreateInfoKHR.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_xcb/VkXcbSurfaceCreateInfoKHR.cs @@ -3,8 +3,6 @@ // Ported from include/vulkan/vulkan_xcb.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkXcbSurfaceCreateInfoKHR @@ -16,7 +14,8 @@ public unsafe partial struct VkXcbSurfaceCreateInfoKHR public VkXcbSurfaceCreateFlagsKHR flags; - public IntPtr connection; + [NativeTypeName("xcb_connection_t*")] + public void* connection; [NativeTypeName("xcb_window_t")] public uint window; diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_xlib/VkPhysicalDeviceManualImports.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_xlib/VkPhysicalDeviceManualImports.cs index 9ea6f4ff0..94d6e3ea5 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_xlib/VkPhysicalDeviceManualImports.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_xlib/VkPhysicalDeviceManualImports.cs @@ -3,11 +3,9 @@ // Ported from include/vulkan/vulkan_xlib.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkPhysicalDeviceManualImports { - public delegate* unmanaged vkGetPhysicalDeviceXlibPresentationSupportKHR; + public delegate* unmanaged vkGetPhysicalDeviceXlibPresentationSupportKHR; } diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_xlib/VkXlibSurfaceCreateInfoKHR.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_xlib/VkXlibSurfaceCreateInfoKHR.cs index d103fe55e..71ac11be5 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_xlib/VkXlibSurfaceCreateInfoKHR.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_xlib/VkXlibSurfaceCreateInfoKHR.cs @@ -3,8 +3,6 @@ // Ported from include/vulkan/vulkan_xlib.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkXlibSurfaceCreateInfoKHR @@ -16,7 +14,8 @@ public unsafe partial struct VkXlibSurfaceCreateInfoKHR public VkXlibSurfaceCreateFlagsKHR flags; - public IntPtr dpy; + [NativeTypeName("Display*")] + public void* dpy; [NativeTypeName("Window")] public nuint window; diff --git a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_xlib_xrandr/VkPhysicalDeviceManualImports.cs b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_xlib_xrandr/VkPhysicalDeviceManualImports.cs index 294dce12e..83ed9914b 100644 --- a/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_xlib_xrandr/VkPhysicalDeviceManualImports.cs +++ b/sources/Interop/Vulkan/Vulkan/vulkan/vulkan_xlib_xrandr/VkPhysicalDeviceManualImports.cs @@ -3,13 +3,11 @@ // Ported from include/vulkan/vulkan_xlib_xrandr.h in the KhronosGroup/Vulkan-Headers repository for tag v1.3.239 // Original source is Copyright © 2015-2022 The Khronos Group Inc. Licensed under the Apache License v2.0 (Apache-2.0) -using System; - namespace TerraFX.Interop.Vulkan; public unsafe partial struct VkPhysicalDeviceManualImports { - public delegate* unmanaged vkAcquireXlibDisplayEXT; + public delegate* unmanaged vkAcquireXlibDisplayEXT; - public delegate* unmanaged vkGetRandROutputDisplayEXT; + public delegate* unmanaged vkGetRandROutputDisplayEXT; } diff --git a/tests/Interop/Vulkan/ResolveDllImportTests.cs b/tests/Interop/Vulkan/ResolveDllImportTests.cs index 6e8dd3bbe..5b869af9e 100644 --- a/tests/Interop/Vulkan/ResolveDllImportTests.cs +++ b/tests/Interop/Vulkan/ResolveDllImportTests.cs @@ -57,6 +57,8 @@ private static void ProcessMethod(MethodInfo method) { Assert.Fail($"Fail: {exception.Message}"); } + + throw; } } diff --git a/tests/Interop/Vulkan/TerraFX.Interop.Vulkan.UnitTests.csproj b/tests/Interop/Vulkan/TerraFX.Interop.Vulkan.UnitTests.csproj index 3879bf0a9..b0abc242d 100644 --- a/tests/Interop/Vulkan/TerraFX.Interop.Vulkan.UnitTests.csproj +++ b/tests/Interop/Vulkan/TerraFX.Interop.Vulkan.UnitTests.csproj @@ -4,9 +4,15 @@ TerraFX.Interop.UnitTests - net6.0;net7.0 + net8.0 + + + + $(NoWarn);CA1707;CA1708 + +