build: Update to header v1.4.361
diff --git a/CMakeLists.txt b/CMakeLists.txt index aa048aa..7a21337 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt
@@ -6,7 +6,7 @@ cmake_minimum_required(VERSION 3.22.1) # The VERSION field is generated with the "--generated-version" flag in the generate_source.py script -project(VUL VERSION 1.4.360 LANGUAGES CXX) +project(VUL VERSION 1.4.361 LANGUAGES CXX) set_property(GLOBAL PROPERTY USE_FOLDERS ON) # Remove when min is 3.26, see CMP0143
diff --git a/include/vulkan/utility/vk_safe_struct.hpp b/include/vulkan/utility/vk_safe_struct.hpp index 9337f42..f259211 100644 --- a/include/vulkan/utility/vk_safe_struct.hpp +++ b/include/vulkan/utility/vk_safe_struct.hpp
@@ -25549,6 +25549,27 @@ return reinterpret_cast<VkPhysicalDeviceCooperativeMatrixDecodeVectorFeaturesNV const*>(this); } }; +struct safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV { + VkStructureType sType; + void* pNext{}; + VkBool32 privateDataBaseHandle; + + safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV(const VkPhysicalDevicePrivateDataBaseHandleFeaturesNV* in_struct, + PNextCopyState* copy_state = {}, bool copy_pnext = true); + safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV(const safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV& copy_src); + safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV& operator=( + const safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV& copy_src); + safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV(); + ~safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV(); + void initialize(const VkPhysicalDevicePrivateDataBaseHandleFeaturesNV* in_struct, PNextCopyState* copy_state = {}); + void initialize(const safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV* copy_src, PNextCopyState* copy_state = {}); + VkPhysicalDevicePrivateDataBaseHandleFeaturesNV* ptr() { + return reinterpret_cast<VkPhysicalDevicePrivateDataBaseHandleFeaturesNV*>(this); + } + VkPhysicalDevicePrivateDataBaseHandleFeaturesNV const* ptr() const { + return reinterpret_cast<VkPhysicalDevicePrivateDataBaseHandleFeaturesNV const*>(this); + } +}; struct safe_VkAccelerationStructureGeometryTrianglesDataKHR { VkStructureType sType; const void* pNext{};
diff --git a/include/vulkan/utility/vk_struct_helper.hpp b/include/vulkan/utility/vk_struct_helper.hpp index c8217aa..96ae014 100644 --- a/include/vulkan/utility/vk_struct_helper.hpp +++ b/include/vulkan/utility/vk_struct_helper.hpp
@@ -1315,6 +1315,7 @@ template <> inline VkStructureType GetSType<VkPhysicalDeviceImageTilingControlFeaturesEXT>() { return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_TILING_CONTROL_FEATURES_EXT; } template <> inline VkStructureType GetSType<VkImageTilingControlCreateInfoEXT>() { return VK_STRUCTURE_TYPE_IMAGE_TILING_CONTROL_CREATE_INFO_EXT; } template <> inline VkStructureType GetSType<VkPhysicalDeviceCooperativeMatrixDecodeVectorFeaturesNV>() { return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_DECODE_VECTOR_FEATURES_NV; } +template <> inline VkStructureType GetSType<VkPhysicalDevicePrivateDataBaseHandleFeaturesNV>() { return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_BASE_HANDLE_FEATURES_NV; } template <> inline VkStructureType GetSType<VkAccelerationStructureGeometryTrianglesDataKHR>() { return VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR; } template <> inline VkStructureType GetSType<VkAccelerationStructureGeometryAabbsDataKHR>() { return VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR; } template <> inline VkStructureType GetSType<VkAccelerationStructureGeometryInstancesDataKHR>() { return VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR; }
diff --git a/include/vulkan/vk_enum_string_helper.h b/include/vulkan/vk_enum_string_helper.h index 84e2304..ac55546 100644 --- a/include/vulkan/vk_enum_string_helper.h +++ b/include/vulkan/vk_enum_string_helper.h
@@ -2642,6 +2642,8 @@ return "VK_STRUCTURE_TYPE_IMAGE_TILING_CONTROL_CREATE_INFO_EXT"; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_DECODE_VECTOR_FEATURES_NV: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_DECODE_VECTOR_FEATURES_NV"; + case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_BASE_HANDLE_FEATURES_NV: + return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_BASE_HANDLE_FEATURES_NV"; default: return "Unhandled VkStructureType"; } @@ -8586,6 +8588,31 @@ return ret; } #endif // __cplusplus +static inline const char* string_VkPrivateDataSlotCreateFlagBits(VkPrivateDataSlotCreateFlagBits input_value) { + switch (input_value) { + case VK_PRIVATE_DATA_SLOT_CREATE_BASE_OBJECT_HANDLE_BIT_NV: + return "VK_PRIVATE_DATA_SLOT_CREATE_BASE_OBJECT_HANDLE_BIT_NV"; + default: + return "Unhandled VkPrivateDataSlotCreateFlagBits"; + } +} + +#ifdef __cplusplus +static inline std::string string_VkPrivateDataSlotCreateFlags(VkPrivateDataSlotCreateFlags input_value) { + std::string ret; + int index = 0; + while(input_value) { + if (input_value & 1) { + if( !ret.empty()) ret.append("|"); + ret.append(string_VkPrivateDataSlotCreateFlagBits(static_cast<VkPrivateDataSlotCreateFlagBits>(1U << index))); + } + ++index; + input_value >>= 1; + } + if (ret.empty()) ret.append("VkPrivateDataSlotCreateFlags(0)"); + return ret; +} +#endif // __cplusplus static inline const char* string_VkPipelineStageFlagBits2(uint64_t input_value) { if (input_value == VK_PIPELINE_STAGE_2_NONE) return "VK_PIPELINE_STAGE_2_NONE"; if (input_value == VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT) return "VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT"; @@ -14882,6 +14909,8 @@ return "VkImageTilingControlCreateInfoEXT"; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_DECODE_VECTOR_FEATURES_NV: return "VkPhysicalDeviceCooperativeMatrixDecodeVectorFeaturesNV"; + case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_BASE_HANDLE_FEATURES_NV: + return "VkPhysicalDevicePrivateDataBaseHandleFeaturesNV"; case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR: return "VkAccelerationStructureGeometryTrianglesDataKHR"; case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR:
diff --git a/scripts/known_good.json b/scripts/known_good.json index fc9ebf9..5e2cb06 100644 --- a/scripts/known_good.json +++ b/scripts/known_good.json
@@ -7,7 +7,7 @@ "sub_dir": "Vulkan-Headers", "build_dir": "Vulkan-Headers/build", "install_dir": "Vulkan-Headers/build/install", - "commit": "v1.4.360" + "commit": "v1.4.361" }, { "name": "googletest",
diff --git a/src/vulkan/vk_safe_struct_utils.cpp b/src/vulkan/vk_safe_struct_utils.cpp index 29aa05d..67f5cf1 100644 --- a/src/vulkan/vk_safe_struct_utils.cpp +++ b/src/vulkan/vk_safe_struct_utils.cpp
@@ -2540,6 +2540,9 @@ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_DECODE_VECTOR_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceCooperativeMatrixDecodeVectorFeaturesNV(reinterpret_cast<const VkPhysicalDeviceCooperativeMatrixDecodeVectorFeaturesNV *>(pNext), copy_state, false); break; + case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_BASE_HANDLE_FEATURES_NV: + safe_pNext = new safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV(reinterpret_cast<const VkPhysicalDevicePrivateDataBaseHandleFeaturesNV *>(pNext), copy_state, false); + break; case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR: safe_pNext = new safe_VkWriteDescriptorSetAccelerationStructureKHR(reinterpret_cast<const VkWriteDescriptorSetAccelerationStructureKHR *>(pNext), copy_state, false); break; @@ -5091,6 +5094,9 @@ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_DECODE_VECTOR_FEATURES_NV: delete reinterpret_cast<safe_VkPhysicalDeviceCooperativeMatrixDecodeVectorFeaturesNV *>(header); break; + case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_BASE_HANDLE_FEATURES_NV: + delete reinterpret_cast<safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV *>(header); + break; case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR: delete reinterpret_cast<safe_VkWriteDescriptorSetAccelerationStructureKHR *>(header); break;
diff --git a/src/vulkan/vk_safe_struct_vendor.cpp b/src/vulkan/vk_safe_struct_vendor.cpp index d33b8d7..438d0e0 100644 --- a/src/vulkan/vk_safe_struct_vendor.cpp +++ b/src/vulkan/vk_safe_struct_vendor.cpp
@@ -26407,6 +26407,56 @@ pNext = SafePnextCopy(copy_src->pNext); } +safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV::safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV( + const VkPhysicalDevicePrivateDataBaseHandleFeaturesNV* in_struct, [[maybe_unused]] PNextCopyState* copy_state, bool copy_pnext) + : sType(in_struct->sType), privateDataBaseHandle(in_struct->privateDataBaseHandle) { + if (copy_pnext) { + pNext = SafePnextCopy(in_struct->pNext, copy_state); + } +} + +safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV::safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV() + : sType(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_BASE_HANDLE_FEATURES_NV), pNext(nullptr), privateDataBaseHandle() {} + +safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV::safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV( + const safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV& copy_src) { + sType = copy_src.sType; + privateDataBaseHandle = copy_src.privateDataBaseHandle; + pNext = SafePnextCopy(copy_src.pNext); +} + +safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV& safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV::operator=( + const safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV& copy_src) { + if (©_src == this) return *this; + + FreePnextChain(pNext); + + sType = copy_src.sType; + privateDataBaseHandle = copy_src.privateDataBaseHandle; + pNext = SafePnextCopy(copy_src.pNext); + + return *this; +} + +safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV::~safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV() { + FreePnextChain(pNext); +} + +void safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV::initialize( + const VkPhysicalDevicePrivateDataBaseHandleFeaturesNV* in_struct, [[maybe_unused]] PNextCopyState* copy_state) { + FreePnextChain(pNext); + sType = in_struct->sType; + privateDataBaseHandle = in_struct->privateDataBaseHandle; + pNext = SafePnextCopy(in_struct->pNext, copy_state); +} + +void safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV::initialize( + const safe_VkPhysicalDevicePrivateDataBaseHandleFeaturesNV* copy_src, [[maybe_unused]] PNextCopyState* copy_state) { + sType = copy_src->sType; + privateDataBaseHandle = copy_src->privateDataBaseHandle; + pNext = SafePnextCopy(copy_src->pNext); +} + } // namespace vku // NOLINTEND