Skip to content

Commit

Permalink
v1.3.263
Browse files Browse the repository at this point in the history
  • Loading branch information
exomia-bot committed Sep 2, 2023
1 parent 7822f53 commit cbaeaef
Show file tree
Hide file tree
Showing 21 changed files with 175 additions and 25 deletions.
2 changes: 1 addition & 1 deletion .version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.3.262
1.3.263
23 changes: 23 additions & 0 deletions src/Exomia.Vulkan.Api.Core/Enums/VkDescriptorPoolCreateFlagBits.cs
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,29 @@ public enum VkDescriptorPoolCreateFlagBits
/// </summary>
VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_EXT = 0x4,

/// <summary>
/// VK_DESCRIPTOR_POOL_CREATE_ALLOW_OVERALLOCATION_SETS_BIT_NVspecifies that the implementation should allow the
/// application to allocate more than
/// <a href="https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkDescriptorPoolCreateInfo.html">VkDescriptorPoolCreateInfo</a>
/// ::maxSetsdescriptor set objects from the descriptor pool as available resources allow. The implementation may use
/// the maxSets value to allocate the initial available sets, but using zero is permitted.
/// </summary>
VK_DESCRIPTOR_POOL_CREATE_ALLOW_OVERALLOCATION_SETS_BIT_NV = 0x8,

/// <summary>
/// VK_DESCRIPTOR_POOL_CREATE_ALLOW_OVERALLOCATION_POOLS_BIT_NVspecifies that the implementation should allow the
/// application to allocate more descriptors from the pool than was specified by the
/// <a href="https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkDescriptorPoolSize.html">VkDescriptorPoolSize</a>
/// ::descriptorCount for any descriptor type as specified by
/// <a href="https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkDescriptorPoolCreateInfo.html">VkDescriptorPoolCreateInfo</a>
/// ::poolSizeCount and
/// <a href="https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkDescriptorPoolCreateInfo.html">VkDescriptorPoolCreateInfo</a>
/// ::pPoolSizes, as available resources allow. The implementation may use the descriptorCount for each descriptor type
/// to allocate the initial pool, but the application is allowed to set the poolSizeCount to zero, or any of the
/// descriptorCount values in the pPoolSizes array to zero.
/// </summary>
VK_DESCRIPTOR_POOL_CREATE_ALLOW_OVERALLOCATION_POOLS_BIT_NV = 0x10,

/// <summary>
/// VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT specifies that descriptor sets allocated from this pool can
/// include bindings with the VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT bit set. It is valid to allocate descriptor
Expand Down
6 changes: 6 additions & 0 deletions src/Exomia.Vulkan.Api.Core/Enums/VkStructureType.cs
Original file line number Diff line number Diff line change
Expand Up @@ -4975,6 +4975,12 @@ public enum VkStructureType
/// </summary>
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_SCREEN_BUFFER_FEATURES_QNX = 1000529004,

/// <summary>
/// VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_POOL_OVERALLOCATION_FEATURES_NV<br />
/// <a href="https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkStructureType">https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkStructureType</a>
/// </summary>
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_POOL_OVERALLOCATION_FEATURES_NV = 1000546000,

/// <summary>
/// VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES<br />
/// <a href="https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkStructureType">https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkStructureType</a>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,10 +44,7 @@ public unsafe struct VkPresentInfoKHR
/// <summary>swapchainCount is the number of swapchains being presented to by this command.</summary>
public uint swapchainCount;

/// <summary>
/// pSwapchains is a pointer to an array of VkSwapchainKHRobjects with swapchainCount entries. A given swapchain
/// must not appear in this list more than once.
/// </summary>
/// <summary>pSwapchains is a pointer to an array of VkSwapchainKHRobjects with swapchainCount entries.</summary>
public VkSwapchainKHR* pSwapchains;

/// <summary>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,9 @@ public unsafe struct VkVideoDecodeH264CapabilitiesKHR
public void* pNext;

/// <summary>
/// maxLevelIdc is a StdVideoH264LevelIdc value specifying the maximum H.264 level supported by the profile, as
/// defined in section A.3 of the ITU-T H.264 Specification.
/// maxLevelIdc is a StdVideoH264LevelIdc value specifying the maximum H.264 level supported by the profile, where
/// enum constant STD_VIDEO_H264_LEVEL_IDC_&lt;major&gt;_&lt;minor&gt; identifies H.264 level &lt;major&gt;.&lt;minor
/// &gt; as defined in section A.3 of the ITU-T H.264 Specification.
/// </summary>
public StdVideoH264LevelIdc maxLevelIdc;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,9 @@ public unsafe struct VkVideoDecodeH265CapabilitiesKHR
public void* pNext;

/// <summary>
/// maxLevelIdc is a StdVideoH265LevelIdc value specifying the maximum H.265 level supported by the profile, as
/// defined in section A.4 of the ITU-T H.265 Specification.
/// maxLevelIdc is a StdVideoH265LevelIdc value specifying the maximum H.265 level supported by the profile, where
/// enum constant STD_VIDEO_H265_LEVEL_IDC_&lt;major&gt;_&lt;minor&gt; identifies H.265 level &lt;major&gt;.&lt;minor
/// &gt; as defined in section A.4 of the ITU-T H.265 Specification.
/// </summary>
public StdVideoH265LevelIdc maxLevelIdc;
}
Original file line number Diff line number Diff line change
Expand Up @@ -29,5 +29,12 @@ public enum VkQueryResultStatusKHR
/// VK_QUERY_RESULT_STATUS_COMPLETE_KHR specifies that operations completed successfully and the query result is
/// available.
/// </summary>
VK_QUERY_RESULT_STATUS_COMPLETE_KHR = 1
VK_QUERY_RESULT_STATUS_COMPLETE_KHR = 1,

/// <summary>
/// VK_QUERY_RESULT_STATUS_INSUFFICIENT_BITSTREAM_BUFFER_RANGE_KHRindicates that a video encode operation did not
/// complete successfully due to the destination video bitstream buffer range not being sufficiently large to fit the
/// encoded bitstream data.
/// </summary>
VK_QUERY_RESULT_STATUS_INSUFFICIENT_BITSTREAM_BUFFER_RANGE_KHR = -1000299000
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
#region License

// Copyright (c) 2018-2023, exomia
// All rights reserved.
//
// This source code is licensed under the BSD-style license found in the
// LICENSE file in the root directory of this source tree.

#endregion

global using static Exomia.Vulkan.Api.Core.VkNvDescriptorPoolOverallocation;

#pragma warning disable CA2211 // Non-constant fields should not be visible
#pragma warning disable CS1591 // Missing XML comment for publicly visible type or member

// ReSharper disable UnusedMember.Global
// ReSharper disable InconsistentNaming
// ReSharper disable once CheckNamespace
namespace Exomia.Vulkan.Api.Core;

/// <summary>
/// VK_NV_descriptor_pool_overallocation - device extension (nr. 547) - author 'NV' [platform '' | contact 'Piers
/// Daniell @pdaniell-nv']<br />
/// <a
/// href="https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_NV_descriptor_pool_overallocation.html">
/// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_NV_descriptor_pool_overallocation.html
/// </a>
/// </summary>
[VkDepends("VK_VERSION_1_1")]
public static class VkNvDescriptorPoolOverallocation
{
/// <summary> The spec version. </summary>
public const uint VK_NV_DESCRIPTOR_POOL_OVERALLOCATION_SPEC_VERSION = 1;

/// <summary> The extension name. </summary>
public const string VK_NV_DESCRIPTOR_POOL_OVERALLOCATION_EXTENSION_NAME = "VK_NV_descriptor_pool_overallocation";

/// <summary>
/// An UTF8 null terminated version of <see cref="VK_NV_DESCRIPTOR_POOL_OVERALLOCATION_EXTENSION_NAME" />
/// represented by an UTF16 string.
/// </summary>
/// <remarks>
/// Example usage:<br />
/// <br />
/// fixed(char* ptr = VK_NV_DESCRIPTOR_POOL_OVERALLOCATION_EXTENSION_NAME_UTF8_NT) {<br />
/// sbyte* utf8NtPtr = (sbyte*)ptr; // utf8NtPtr - can now be passed and used directly as a utf8_nt string for
/// unmanaged code.<br />
/// }
/// </remarks>
public const string VK_NV_DESCRIPTOR_POOL_OVERALLOCATION_EXTENSION_NAME_UTF8_NT =
"\u4b56\u4e5f\u5f56\u4544\u4353\u4952\u5450\u524f\u505f\u4f4f\u5f4c\u564f\u5245\u4c41\u4f4c\u4143\u4954\u4e4f\u455f\u5458\u4e45\u4953\u4e4f\u4e5f\u4d41\u0045";
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
#region License

// Copyright (c) 2018-2023, exomia
// All rights reserved.
//
// This source code is licensed under the BSD-style license found in the
// LICENSE file in the root directory of this source tree.

#endregion

// ReSharper disable UnusedMember.Global
// ReSharper disable InconsistentNaming
// ReSharper disable once CheckNamespace
namespace Exomia.Vulkan.Api.Core;

/// <summary>
/// VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV - Structure describing feature to allow descriptor pool
/// overallocation -
/// <a
/// href="https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV.html">
/// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV.html
/// </a>
/// </summary>
/// <remarks>
/// <list type="table">
/// <item>
/// <term>structextends</term><description>VkPhysicalDeviceFeatures2,VkDeviceCreateInfo</description>
/// </item>
/// </list>
/// </remarks>
[VkStructExtends("VkPhysicalDeviceFeatures2,VkDeviceCreateInfo")]
[StructLayout(LayoutKind.Sequential)]
public unsafe struct VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV
{
/// <summary> The stype of this structure. </summary>
public const VkStructureType STYPE = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_POOL_OVERALLOCATION_FEATURES_NV;

/// <summary>sType is a VkStructureType value identifying this structure.</summary>
public VkStructureType sType;

/// <summary>pNext is NULL or a pointer to a structure extending this structure.</summary>
public void* pNext;

/// <summary>
/// descriptorPoolOverallocation indicates that the implementation allows the application to opt into descriptor
/// pool overallocation by creating the descriptor pool with VK_DESCRIPTOR_POOL_CREATE_ALLOW_OVERALLOCATION_SETS_BIT_NV
/// and/or VK_DESCRIPTOR_POOL_CREATE_ALLOW_OVERALLOCATION_POOLS_BIT_NV flags.
/// </summary>
public VkBool32 descriptorPoolOverallocation;
}
Original file line number Diff line number Diff line change
Expand Up @@ -45,14 +45,19 @@ public unsafe struct VkPipelineColorBlendStateCreateInfo
/// <summary>logicOp selects which logical operation to apply.</summary>
public VkLogicOp logicOp;

/// <summary>attachmentCount is the number of VkPipelineColorBlendAttachmentState elements in pAttachments.</summary>
/// <summary>
/// attachmentCount is the number of VkPipelineColorBlendAttachmentState elements in pAttachments. It is ignored
/// if the pipeline is created with VK_DYNAMIC_STATE_COLOR_BLEND_ENABLE_EXT, VK_DYNAMIC_STATE_COLOR_BLEND_EQUATION_EXT,
/// and VK_DYNAMIC_STATE_COLOR_WRITE_MASK_EXT dynamic states set, and either VK_DYNAMIC_STATE_COLOR_BLEND_ADVANCED_EXT
/// set or advancedBlendCoherentOperationsis not enabled on the device.
/// </summary>
public uint attachmentCount;

/// <summary>
/// pAttachments is a pointer to an array of VkPipelineColorBlendAttachmentState structures defining blend state
/// for each color attachment. It is ignored if the pipeline is created with VK_DYNAMIC_STATE_COLOR_BLEND_ADVANCED_EXT,
/// VK_DYNAMIC_STATE_COLOR_BLEND_ENABLE_EXT, VK_DYNAMIC_STATE_COLOR_BLEND_EQUATION_EXT, and
/// VK_DYNAMIC_STATE_COLOR_WRITE_MASK_EXT dynamic states set.
/// for each color attachment. It is ignored if the pipeline is created with VK_DYNAMIC_STATE_COLOR_BLEND_ENABLE_EXT,
/// VK_DYNAMIC_STATE_COLOR_BLEND_EQUATION_EXT, and VK_DYNAMIC_STATE_COLOR_WRITE_MASK_EXT dynamic states set, and either
/// VK_DYNAMIC_STATE_COLOR_BLEND_ADVANCED_EXT set or advancedBlendCoherentOperationsis not enabled on the device.
/// </summary>
public VkPipelineColorBlendAttachmentState* pAttachments;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,4 +33,6 @@ public static class VulkanVideoCodecH264std
public const int STD_VIDEO_H264_MAX_NUM_LIST_REF = 32;

public const int STD_VIDEO_H264_MAX_CHROMA_PLANES = 2;

public const int STD_VIDEO_H264_NO_REFERENCE_PICTURE = 0xFF;
}
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ namespace Exomia.Vulkan.Api.Core;
[StructLayout(LayoutKind.Sequential)]
public struct StdVideoEncodeH264RefPicMarkingEntry
{
public StdVideoH264MemMgmtControlOp operation;
public StdVideoH264MemMgmtControlOp memory_management_control_operation;

public ushort difference_of_pic_nums_minus1;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,9 @@ public unsafe struct StdVideoEncodeH264SliceHeader

public sbyte slice_beta_offset_div2;

public ushort reserved1;
public sbyte slice_qp_delta;

public byte reserved1;

public StdVideoH264CabacInitIdc cabac_init_idc;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ namespace Exomia.Vulkan.Api.Core;
public static class VulkanVideoCodecH264stdEncode
{
/// <summary> The spec version. </summary>
public const uint VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_SPEC_VERSION = VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_10;
public const uint VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_SPEC_VERSION = VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_11;

/// <summary> The extension name. </summary>
public const string VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_EXTENSION_NAME = "VK_STD_vulkan_video_codec_h264_encode";
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,6 @@ namespace Exomia.Vulkan.Api.Core;
/// <summary>The VulkanVideoCodecH264stdEncodeDefines class.</summary>
public static class VulkanVideoCodecH264stdEncodeDefines
{
/// <summary>The VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_10.</summary>
public const uint VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_10 = (0 << 22) | (9 << 12) | 10;
/// <summary>The VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_11.</summary>
public const uint VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_11 = (0 << 22) | (9 << 12) | 11;
}
Original file line number Diff line number Diff line change
Expand Up @@ -63,4 +63,6 @@ public static class VulkanVideoCodecH265std
public const int STD_VIDEO_H265_MAX_LONG_TERM_PICS = 16;

public const int STD_VIDEO_H265_MAX_DELTA_POC = 48;

public const int STD_VIDEO_H265_NO_REFERENCE_PICTURE = 0xFF;
}
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
namespace Exomia.Vulkan.Api.Core;

[StructLayout(LayoutKind.Sequential)]
public unsafe struct StdVideoEncodeH265SliceSegmentLongTermRefPics
public unsafe struct StdVideoEncodeH265LongTermRefPics
{
public byte num_long_term_sps;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,5 +41,5 @@ public unsafe struct StdVideoEncodeH265PictureInfo

public StdVideoH265ShortTermRefPicSet* pShortTermRefPicSet;

public StdVideoEncodeH265SliceSegmentLongTermRefPics* pLongTermRefPics;
public StdVideoEncodeH265LongTermRefPics* pLongTermRefPics;
}
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,9 @@ public unsafe struct StdVideoEncodeH265SliceSegmentHeader

public sbyte slice_act_cr_qp_offset;

public VkArray3<byte> reserved1;
public sbyte slice_qp_delta;

public ushort reserved1;

public StdVideoEncodeH265WeightTable* pWeightTable;
}
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ namespace Exomia.Vulkan.Api.Core;
public static class VulkanVideoCodecH265stdEncode
{
/// <summary> The spec version. </summary>
public const uint VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_SPEC_VERSION = VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_11;
public const uint VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_SPEC_VERSION = VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_12;

/// <summary> The extension name. </summary>
public const string VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_EXTENSION_NAME = "VK_STD_vulkan_video_codec_h265_encode";
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,6 @@ namespace Exomia.Vulkan.Api.Core;
/// <summary>The VulkanVideoCodecH265stdEncodeDefines class.</summary>
public static class VulkanVideoCodecH265stdEncodeDefines
{
/// <summary>The VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_11.</summary>
public const uint VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_11 = (0 << 22) | (9 << 12) | 11;
/// <summary>The VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_12.</summary>
public const uint VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_12 = (0 << 22) | (9 << 12) | 12;
}

0 comments on commit cbaeaef

Please sign in to comment.