Update for Vulkan-Docs 1.2.194

This commit is contained in:
Jon Leech 2021-09-28 06:20:03 -07:00 committed by Jon Leech
parent 31dfaa4c63
commit e500c7c809
11 changed files with 5959 additions and 2986 deletions

View file

@ -119,7 +119,7 @@ extern "C" __declspec( dllimport ) FARPROC __stdcall GetProcAddress( HINSTANCE h
# include <span> # include <span>
#endif #endif
static_assert( VK_HEADER_VERSION == 193, "Wrong VK_HEADER_VERSION!" ); static_assert( VK_HEADER_VERSION == 194, "Wrong VK_HEADER_VERSION!" );
// 32-bit vulkan is not typesafe for handles, so don't allow copy constructors on this platform by default. // 32-bit vulkan is not typesafe for handles, so don't allow copy constructors on this platform by default.
// To enable this feature on 32-bit platforms please define VULKAN_HPP_TYPESAFE_CONVERSION // To enable this feature on 32-bit platforms please define VULKAN_HPP_TYPESAFE_CONVERSION
@ -5468,6 +5468,49 @@ namespace VULKAN_HPP_NAMESPACE
} }
# endif /*VK_USE_PLATFORM_FUCHSIA*/ # endif /*VK_USE_PLATFORM_FUCHSIA*/
# if defined( VK_USE_PLATFORM_FUCHSIA )
//=== VK_FUCHSIA_buffer_collection ===
VkResult vkCreateBufferCollectionFUCHSIA( VkDevice device,
const VkBufferCollectionCreateInfoFUCHSIA * pCreateInfo,
const VkAllocationCallbacks * pAllocator,
VkBufferCollectionFUCHSIA * pCollection ) const VULKAN_HPP_NOEXCEPT
{
return ::vkCreateBufferCollectionFUCHSIA( device, pCreateInfo, pAllocator, pCollection );
}
VkResult vkSetBufferCollectionImageConstraintsFUCHSIA(
VkDevice device,
VkBufferCollectionFUCHSIA collection,
const VkImageConstraintsInfoFUCHSIA * pImageConstraintsInfo ) const VULKAN_HPP_NOEXCEPT
{
return ::vkSetBufferCollectionImageConstraintsFUCHSIA( device, collection, pImageConstraintsInfo );
}
VkResult vkSetBufferCollectionBufferConstraintsFUCHSIA(
VkDevice device,
VkBufferCollectionFUCHSIA collection,
const VkBufferConstraintsInfoFUCHSIA * pBufferConstraintsInfo ) const VULKAN_HPP_NOEXCEPT
{
return ::vkSetBufferCollectionBufferConstraintsFUCHSIA( device, collection, pBufferConstraintsInfo );
}
void vkDestroyBufferCollectionFUCHSIA( VkDevice device,
VkBufferCollectionFUCHSIA collection,
const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT
{
return ::vkDestroyBufferCollectionFUCHSIA( device, collection, pAllocator );
}
VkResult vkGetBufferCollectionPropertiesFUCHSIA( VkDevice device,
VkBufferCollectionFUCHSIA collection,
VkBufferCollectionPropertiesFUCHSIA * pProperties ) const
VULKAN_HPP_NOEXCEPT
{
return ::vkGetBufferCollectionPropertiesFUCHSIA( device, collection, pProperties );
}
# endif /*VK_USE_PLATFORM_FUCHSIA*/
//=== VK_HUAWEI_subpass_shading === //=== VK_HUAWEI_subpass_shading ===
VkResult vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI( VkDevice device, VkResult vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI( VkDevice device,
@ -10320,6 +10363,34 @@ namespace VULKAN_HPP_NAMESPACE
}; };
#endif /*VK_USE_PLATFORM_FUCHSIA*/ #endif /*VK_USE_PLATFORM_FUCHSIA*/
#if defined( VK_USE_PLATFORM_FUCHSIA )
//=== VK_FUCHSIA_buffer_collection ===
template <>
struct StructExtends<ImportMemoryBufferCollectionFUCHSIA, MemoryAllocateInfo>
{
enum
{
value = true
};
};
template <>
struct StructExtends<BufferCollectionImageCreateInfoFUCHSIA, ImageCreateInfo>
{
enum
{
value = true
};
};
template <>
struct StructExtends<BufferCollectionBufferCreateInfoFUCHSIA, BufferCreateInfo>
{
enum
{
value = true
};
};
#endif /*VK_USE_PLATFORM_FUCHSIA*/
//=== VK_HUAWEI_subpass_shading === //=== VK_HUAWEI_subpass_shading ===
template <> template <>
struct StructExtends<SubpassShadingPipelineCreateInfoHUAWEI, ComputePipelineCreateInfo> struct StructExtends<SubpassShadingPipelineCreateInfoHUAWEI, ComputePipelineCreateInfo>
@ -11438,6 +11509,21 @@ namespace VULKAN_HPP_NAMESPACE
PFN_dummy vkGetSemaphoreZirconHandleFUCHSIA_placeholder = 0; PFN_dummy vkGetSemaphoreZirconHandleFUCHSIA_placeholder = 0;
#endif /*VK_USE_PLATFORM_FUCHSIA*/ #endif /*VK_USE_PLATFORM_FUCHSIA*/
#if defined( VK_USE_PLATFORM_FUCHSIA )
//=== VK_FUCHSIA_buffer_collection ===
PFN_vkCreateBufferCollectionFUCHSIA vkCreateBufferCollectionFUCHSIA = 0;
PFN_vkSetBufferCollectionImageConstraintsFUCHSIA vkSetBufferCollectionImageConstraintsFUCHSIA = 0;
PFN_vkSetBufferCollectionBufferConstraintsFUCHSIA vkSetBufferCollectionBufferConstraintsFUCHSIA = 0;
PFN_vkDestroyBufferCollectionFUCHSIA vkDestroyBufferCollectionFUCHSIA = 0;
PFN_vkGetBufferCollectionPropertiesFUCHSIA vkGetBufferCollectionPropertiesFUCHSIA = 0;
#else
PFN_dummy vkCreateBufferCollectionFUCHSIA_placeholder = 0;
PFN_dummy vkSetBufferCollectionImageConstraintsFUCHSIA_placeholder = 0;
PFN_dummy vkSetBufferCollectionBufferConstraintsFUCHSIA_placeholder = 0;
PFN_dummy vkDestroyBufferCollectionFUCHSIA_placeholder = 0;
PFN_dummy vkGetBufferCollectionPropertiesFUCHSIA_placeholder = 0;
#endif /*VK_USE_PLATFORM_FUCHSIA*/
//=== VK_HUAWEI_subpass_shading === //=== VK_HUAWEI_subpass_shading ===
PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = 0; PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = 0;
PFN_vkCmdSubpassShadingHUAWEI vkCmdSubpassShadingHUAWEI = 0; PFN_vkCmdSubpassShadingHUAWEI vkCmdSubpassShadingHUAWEI = 0;
@ -12714,6 +12800,20 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkGetSemaphoreZirconHandleFUCHSIA( vkGetInstanceProcAddr( instance, "vkGetSemaphoreZirconHandleFUCHSIA" ) ); PFN_vkGetSemaphoreZirconHandleFUCHSIA( vkGetInstanceProcAddr( instance, "vkGetSemaphoreZirconHandleFUCHSIA" ) );
#endif /*VK_USE_PLATFORM_FUCHSIA*/ #endif /*VK_USE_PLATFORM_FUCHSIA*/
#if defined( VK_USE_PLATFORM_FUCHSIA )
//=== VK_FUCHSIA_buffer_collection ===
vkCreateBufferCollectionFUCHSIA =
PFN_vkCreateBufferCollectionFUCHSIA( vkGetInstanceProcAddr( instance, "vkCreateBufferCollectionFUCHSIA" ) );
vkSetBufferCollectionImageConstraintsFUCHSIA = PFN_vkSetBufferCollectionImageConstraintsFUCHSIA(
vkGetInstanceProcAddr( instance, "vkSetBufferCollectionImageConstraintsFUCHSIA" ) );
vkSetBufferCollectionBufferConstraintsFUCHSIA = PFN_vkSetBufferCollectionBufferConstraintsFUCHSIA(
vkGetInstanceProcAddr( instance, "vkSetBufferCollectionBufferConstraintsFUCHSIA" ) );
vkDestroyBufferCollectionFUCHSIA =
PFN_vkDestroyBufferCollectionFUCHSIA( vkGetInstanceProcAddr( instance, "vkDestroyBufferCollectionFUCHSIA" ) );
vkGetBufferCollectionPropertiesFUCHSIA = PFN_vkGetBufferCollectionPropertiesFUCHSIA(
vkGetInstanceProcAddr( instance, "vkGetBufferCollectionPropertiesFUCHSIA" ) );
#endif /*VK_USE_PLATFORM_FUCHSIA*/
//=== VK_HUAWEI_subpass_shading === //=== VK_HUAWEI_subpass_shading ===
vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI( vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI(
vkGetInstanceProcAddr( instance, "vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI" ) ); vkGetInstanceProcAddr( instance, "vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI" ) );
@ -13584,6 +13684,20 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkGetSemaphoreZirconHandleFUCHSIA( vkGetDeviceProcAddr( device, "vkGetSemaphoreZirconHandleFUCHSIA" ) ); PFN_vkGetSemaphoreZirconHandleFUCHSIA( vkGetDeviceProcAddr( device, "vkGetSemaphoreZirconHandleFUCHSIA" ) );
#endif /*VK_USE_PLATFORM_FUCHSIA*/ #endif /*VK_USE_PLATFORM_FUCHSIA*/
#if defined( VK_USE_PLATFORM_FUCHSIA )
//=== VK_FUCHSIA_buffer_collection ===
vkCreateBufferCollectionFUCHSIA =
PFN_vkCreateBufferCollectionFUCHSIA( vkGetDeviceProcAddr( device, "vkCreateBufferCollectionFUCHSIA" ) );
vkSetBufferCollectionImageConstraintsFUCHSIA = PFN_vkSetBufferCollectionImageConstraintsFUCHSIA(
vkGetDeviceProcAddr( device, "vkSetBufferCollectionImageConstraintsFUCHSIA" ) );
vkSetBufferCollectionBufferConstraintsFUCHSIA = PFN_vkSetBufferCollectionBufferConstraintsFUCHSIA(
vkGetDeviceProcAddr( device, "vkSetBufferCollectionBufferConstraintsFUCHSIA" ) );
vkDestroyBufferCollectionFUCHSIA =
PFN_vkDestroyBufferCollectionFUCHSIA( vkGetDeviceProcAddr( device, "vkDestroyBufferCollectionFUCHSIA" ) );
vkGetBufferCollectionPropertiesFUCHSIA = PFN_vkGetBufferCollectionPropertiesFUCHSIA(
vkGetDeviceProcAddr( device, "vkGetBufferCollectionPropertiesFUCHSIA" ) );
#endif /*VK_USE_PLATFORM_FUCHSIA*/
//=== VK_HUAWEI_subpass_shading === //=== VK_HUAWEI_subpass_shading ===
vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI( vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI(
vkGetDeviceProcAddr( device, "vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI" ) ); vkGetDeviceProcAddr( device, "vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI" ) );
@ -14090,5 +14204,20 @@ namespace std
} }
}; };
#if defined( VK_USE_PLATFORM_FUCHSIA )
//=== VK_FUCHSIA_buffer_collection ===
template <>
struct hash<VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA>
{
std::size_t operator()( VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA const & bufferCollectionFUCHSIA ) const
VULKAN_HPP_NOEXCEPT
{
return std::hash<VkBufferCollectionFUCHSIA>{}(
static_cast<VkBufferCollectionFUCHSIA>( bufferCollectionFUCHSIA ) );
}
};
#endif /*VK_USE_PLATFORM_FUCHSIA*/
} // namespace std } // namespace std
#endif #endif

View file

@ -72,7 +72,7 @@ extern "C" {
#define VK_API_VERSION_1_0 VK_MAKE_API_VERSION(0, 1, 0, 0)// Patch version should always be set to 0 #define VK_API_VERSION_1_0 VK_MAKE_API_VERSION(0, 1, 0, 0)// Patch version should always be set to 0
// Version of this file // Version of this file
#define VK_HEADER_VERSION 193 #define VK_HEADER_VERSION 194
// Complete version of this file // Complete version of this file
#define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 2, VK_HEADER_VERSION) #define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 2, VK_HEADER_VERSION)
@ -832,6 +832,16 @@ typedef enum VkStructureType {
VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA = 1000364002, VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA = 1000364002,
VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA = 1000365000, VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA = 1000365000,
VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA = 1000365001, VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA = 1000365001,
VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CREATE_INFO_FUCHSIA = 1000366000,
VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA = 1000366001,
VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA = 1000366002,
VK_STRUCTURE_TYPE_BUFFER_COLLECTION_PROPERTIES_FUCHSIA = 1000366003,
VK_STRUCTURE_TYPE_BUFFER_CONSTRAINTS_INFO_FUCHSIA = 1000366004,
VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA = 1000366005,
VK_STRUCTURE_TYPE_IMAGE_CONSTRAINTS_INFO_FUCHSIA = 1000366006,
VK_STRUCTURE_TYPE_IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA = 1000366007,
VK_STRUCTURE_TYPE_SYSMEM_COLOR_SPACE_FUCHSIA = 1000366008,
VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA = 1000366009,
VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI = 1000369000, VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI = 1000369000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI = 1000369001, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI = 1000369001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI = 1000369002, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI = 1000369002,
@ -1064,6 +1074,7 @@ typedef enum VkObjectType {
VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR = 1000268000, VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR = 1000268000,
VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV = 1000277000, VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV = 1000277000,
VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT = 1000295000, VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT = 1000295000,
VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA = 1000366000,
VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR = VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE, VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR = VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE,
VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR = VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION, VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR = VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION,
VK_OBJECT_TYPE_MAX_ENUM = 0x7FFFFFFF VK_OBJECT_TYPE_MAX_ENUM = 0x7FFFFFFF
@ -8452,6 +8463,7 @@ typedef enum VkDebugReportObjectTypeEXT {
VK_DEBUG_REPORT_OBJECT_TYPE_CU_FUNCTION_NVX_EXT = 1000029001, VK_DEBUG_REPORT_OBJECT_TYPE_CU_FUNCTION_NVX_EXT = 1000029001,
VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT = 1000150000, VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT = 1000150000,
VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT = 1000165000, VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT = 1000165000,
VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA_EXT = 1000366000,
VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT,
VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT,
VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT,

View file

@ -824,6 +824,16 @@ namespace VULKAN_HPP_NAMESPACE
eMemoryGetZirconHandleInfoFUCHSIA = VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA, eMemoryGetZirconHandleInfoFUCHSIA = VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA,
eImportSemaphoreZirconHandleInfoFUCHSIA = VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA, eImportSemaphoreZirconHandleInfoFUCHSIA = VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA,
eSemaphoreGetZirconHandleInfoFUCHSIA = VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA, eSemaphoreGetZirconHandleInfoFUCHSIA = VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA,
eBufferCollectionCreateInfoFUCHSIA = VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CREATE_INFO_FUCHSIA,
eImportMemoryBufferCollectionFUCHSIA = VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA,
eBufferCollectionImageCreateInfoFUCHSIA = VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA,
eBufferCollectionPropertiesFUCHSIA = VK_STRUCTURE_TYPE_BUFFER_COLLECTION_PROPERTIES_FUCHSIA,
eBufferConstraintsInfoFUCHSIA = VK_STRUCTURE_TYPE_BUFFER_CONSTRAINTS_INFO_FUCHSIA,
eBufferCollectionBufferCreateInfoFUCHSIA = VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA,
eImageConstraintsInfoFUCHSIA = VK_STRUCTURE_TYPE_IMAGE_CONSTRAINTS_INFO_FUCHSIA,
eImageFormatConstraintsInfoFUCHSIA = VK_STRUCTURE_TYPE_IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA,
eSysmemColorSpaceFUCHSIA = VK_STRUCTURE_TYPE_SYSMEM_COLOR_SPACE_FUCHSIA,
eBufferCollectionConstraintsInfoFUCHSIA = VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA,
#endif /*VK_USE_PLATFORM_FUCHSIA*/ #endif /*VK_USE_PLATFORM_FUCHSIA*/
eSubpassShadingPipelineCreateInfoHUAWEI = VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI, eSubpassShadingPipelineCreateInfoHUAWEI = VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI,
ePhysicalDeviceSubpassShadingFeaturesHUAWEI = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI, ePhysicalDeviceSubpassShadingFeaturesHUAWEI = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI,
@ -1731,6 +1741,16 @@ namespace VULKAN_HPP_NAMESPACE
case StructureType::eMemoryGetZirconHandleInfoFUCHSIA: return "MemoryGetZirconHandleInfoFUCHSIA"; case StructureType::eMemoryGetZirconHandleInfoFUCHSIA: return "MemoryGetZirconHandleInfoFUCHSIA";
case StructureType::eImportSemaphoreZirconHandleInfoFUCHSIA: return "ImportSemaphoreZirconHandleInfoFUCHSIA"; case StructureType::eImportSemaphoreZirconHandleInfoFUCHSIA: return "ImportSemaphoreZirconHandleInfoFUCHSIA";
case StructureType::eSemaphoreGetZirconHandleInfoFUCHSIA: return "SemaphoreGetZirconHandleInfoFUCHSIA"; case StructureType::eSemaphoreGetZirconHandleInfoFUCHSIA: return "SemaphoreGetZirconHandleInfoFUCHSIA";
case StructureType::eBufferCollectionCreateInfoFUCHSIA: return "BufferCollectionCreateInfoFUCHSIA";
case StructureType::eImportMemoryBufferCollectionFUCHSIA: return "ImportMemoryBufferCollectionFUCHSIA";
case StructureType::eBufferCollectionImageCreateInfoFUCHSIA: return "BufferCollectionImageCreateInfoFUCHSIA";
case StructureType::eBufferCollectionPropertiesFUCHSIA: return "BufferCollectionPropertiesFUCHSIA";
case StructureType::eBufferConstraintsInfoFUCHSIA: return "BufferConstraintsInfoFUCHSIA";
case StructureType::eBufferCollectionBufferCreateInfoFUCHSIA: return "BufferCollectionBufferCreateInfoFUCHSIA";
case StructureType::eImageConstraintsInfoFUCHSIA: return "ImageConstraintsInfoFUCHSIA";
case StructureType::eImageFormatConstraintsInfoFUCHSIA: return "ImageFormatConstraintsInfoFUCHSIA";
case StructureType::eSysmemColorSpaceFUCHSIA: return "SysmemColorSpaceFUCHSIA";
case StructureType::eBufferCollectionConstraintsInfoFUCHSIA: return "BufferCollectionConstraintsInfoFUCHSIA";
#endif /*VK_USE_PLATFORM_FUCHSIA*/ #endif /*VK_USE_PLATFORM_FUCHSIA*/
case StructureType::eSubpassShadingPipelineCreateInfoHUAWEI: return "SubpassShadingPipelineCreateInfoHUAWEI"; case StructureType::eSubpassShadingPipelineCreateInfoHUAWEI: return "SubpassShadingPipelineCreateInfoHUAWEI";
case StructureType::ePhysicalDeviceSubpassShadingFeaturesHUAWEI: case StructureType::ePhysicalDeviceSubpassShadingFeaturesHUAWEI:
@ -1810,6 +1830,9 @@ namespace VULKAN_HPP_NAMESPACE
eDeferredOperationKHR = VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR, eDeferredOperationKHR = VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR,
eIndirectCommandsLayoutNV = VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV, eIndirectCommandsLayoutNV = VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV,
ePrivateDataSlotEXT = VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT, ePrivateDataSlotEXT = VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT,
#if defined( VK_USE_PLATFORM_FUCHSIA )
eBufferCollectionFUCHSIA = VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA,
#endif /*VK_USE_PLATFORM_FUCHSIA*/
eDescriptorUpdateTemplateKHR = VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR, eDescriptorUpdateTemplateKHR = VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR,
eSamplerYcbcrConversionKHR = VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR eSamplerYcbcrConversionKHR = VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR
}; };
@ -1865,6 +1888,9 @@ namespace VULKAN_HPP_NAMESPACE
case ObjectType::eDeferredOperationKHR: return "DeferredOperationKHR"; case ObjectType::eDeferredOperationKHR: return "DeferredOperationKHR";
case ObjectType::eIndirectCommandsLayoutNV: return "IndirectCommandsLayoutNV"; case ObjectType::eIndirectCommandsLayoutNV: return "IndirectCommandsLayoutNV";
case ObjectType::ePrivateDataSlotEXT: return "PrivateDataSlotEXT"; case ObjectType::ePrivateDataSlotEXT: return "PrivateDataSlotEXT";
#if defined( VK_USE_PLATFORM_FUCHSIA )
case ObjectType::eBufferCollectionFUCHSIA: return "BufferCollectionFUCHSIA";
#endif /*VK_USE_PLATFORM_FUCHSIA*/
default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )"; default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
} }
} }
@ -5578,6 +5604,9 @@ namespace VULKAN_HPP_NAMESPACE
eCuFunctionNVX = VK_DEBUG_REPORT_OBJECT_TYPE_CU_FUNCTION_NVX_EXT, eCuFunctionNVX = VK_DEBUG_REPORT_OBJECT_TYPE_CU_FUNCTION_NVX_EXT,
eAccelerationStructureKHR = VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT, eAccelerationStructureKHR = VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT,
eAccelerationStructureNV = VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT, eAccelerationStructureNV = VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT,
#if defined( VK_USE_PLATFORM_FUCHSIA )
eBufferCollectionFUCHSIA = VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA_EXT,
#endif /*VK_USE_PLATFORM_FUCHSIA*/
eDebugReport = VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT, eDebugReport = VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT,
eDescriptorUpdateTemplateKHR = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT, eDescriptorUpdateTemplateKHR = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT,
eSamplerYcbcrConversionKHR = VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT, eSamplerYcbcrConversionKHR = VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT,
@ -5626,6 +5655,9 @@ namespace VULKAN_HPP_NAMESPACE
case DebugReportObjectTypeEXT::eCuFunctionNVX: return "CuFunctionNVX"; case DebugReportObjectTypeEXT::eCuFunctionNVX: return "CuFunctionNVX";
case DebugReportObjectTypeEXT::eAccelerationStructureKHR: return "AccelerationStructureKHR"; case DebugReportObjectTypeEXT::eAccelerationStructureKHR: return "AccelerationStructureKHR";
case DebugReportObjectTypeEXT::eAccelerationStructureNV: return "AccelerationStructureNV"; case DebugReportObjectTypeEXT::eAccelerationStructureNV: return "AccelerationStructureNV";
#if defined( VK_USE_PLATFORM_FUCHSIA )
case DebugReportObjectTypeEXT::eBufferCollectionFUCHSIA: return "BufferCollectionFUCHSIA";
#endif /*VK_USE_PLATFORM_FUCHSIA*/
default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )"; default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
} }
} }
@ -7873,6 +7905,41 @@ namespace VULKAN_HPP_NAMESPACE
} }
} }
#if defined( VK_USE_PLATFORM_FUCHSIA )
//=== VK_FUCHSIA_buffer_collection ===
enum class ImageFormatConstraintsFlagBitsFUCHSIA : VkImageFormatConstraintsFlagsFUCHSIA
{
};
VULKAN_HPP_INLINE std::string to_string( ImageFormatConstraintsFlagBitsFUCHSIA )
{
return "(void)";
}
enum class ImageConstraintsInfoFlagBitsFUCHSIA : VkImageConstraintsInfoFlagsFUCHSIA
{
eCpuReadRarely = VK_IMAGE_CONSTRAINTS_INFO_CPU_READ_RARELY_FUCHSIA,
eCpuReadOften = VK_IMAGE_CONSTRAINTS_INFO_CPU_READ_OFTEN_FUCHSIA,
eCpuWriteRarely = VK_IMAGE_CONSTRAINTS_INFO_CPU_WRITE_RARELY_FUCHSIA,
eCpuWriteOften = VK_IMAGE_CONSTRAINTS_INFO_CPU_WRITE_OFTEN_FUCHSIA,
eProtectedOptional = VK_IMAGE_CONSTRAINTS_INFO_PROTECTED_OPTIONAL_FUCHSIA
};
VULKAN_HPP_INLINE std::string to_string( ImageConstraintsInfoFlagBitsFUCHSIA value )
{
switch ( value )
{
case ImageConstraintsInfoFlagBitsFUCHSIA::eCpuReadRarely: return "CpuReadRarely";
case ImageConstraintsInfoFlagBitsFUCHSIA::eCpuReadOften: return "CpuReadOften";
case ImageConstraintsInfoFlagBitsFUCHSIA::eCpuWriteRarely: return "CpuWriteRarely";
case ImageConstraintsInfoFlagBitsFUCHSIA::eCpuWriteOften: return "CpuWriteOften";
case ImageConstraintsInfoFlagBitsFUCHSIA::eProtectedOptional: return "ProtectedOptional";
default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
}
}
#endif /*VK_USE_PLATFORM_FUCHSIA*/
#if defined( VK_USE_PLATFORM_SCREEN_QNX ) #if defined( VK_USE_PLATFORM_SCREEN_QNX )
//=== VK_QNX_screen_surface === //=== VK_QNX_screen_surface ===
@ -8328,8 +8395,8 @@ namespace VULKAN_HPP_NAMESPACE
return MemoryPropertyFlags( bit0 ) | bit1; return MemoryPropertyFlags( bit0 ) | bit1;
} }
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryPropertyFlags operator&(MemoryPropertyFlagBits bit0, VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryPropertyFlags
MemoryPropertyFlagBits bit1)VULKAN_HPP_NOEXCEPT operator&( MemoryPropertyFlagBits bit0, MemoryPropertyFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{ {
return MemoryPropertyFlags( bit0 ) & bit1; return MemoryPropertyFlags( bit0 ) & bit1;
} }
@ -8396,7 +8463,8 @@ namespace VULKAN_HPP_NAMESPACE
return QueueFlags( bit0 ) | bit1; return QueueFlags( bit0 ) | bit1;
} }
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueueFlags operator&(QueueFlagBits bit0, QueueFlagBits bit1)VULKAN_HPP_NOEXCEPT VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueueFlags operator&( QueueFlagBits bit0,
QueueFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{ {
return QueueFlags( bit0 ) & bit1; return QueueFlags( bit0 ) & bit1;
} }
@ -9272,8 +9340,8 @@ namespace VULKAN_HPP_NAMESPACE
return ImageViewCreateFlags( bit0 ) | bit1; return ImageViewCreateFlags( bit0 ) | bit1;
} }
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageViewCreateFlags operator&(ImageViewCreateFlagBits bit0, VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageViewCreateFlags
ImageViewCreateFlagBits bit1)VULKAN_HPP_NOEXCEPT operator&( ImageViewCreateFlagBits bit0, ImageViewCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{ {
return ImageViewCreateFlags( bit0 ) & bit1; return ImageViewCreateFlags( bit0 ) & bit1;
} }
@ -9376,8 +9444,8 @@ namespace VULKAN_HPP_NAMESPACE
return ColorComponentFlags( bit0 ) | bit1; return ColorComponentFlags( bit0 ) | bit1;
} }
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ColorComponentFlags operator&(ColorComponentFlagBits bit0, VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ColorComponentFlags
ColorComponentFlagBits bit1)VULKAN_HPP_NOEXCEPT operator&( ColorComponentFlagBits bit0, ColorComponentFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{ {
return ColorComponentFlags( bit0 ) & bit1; return ColorComponentFlags( bit0 ) & bit1;
} }
@ -9501,8 +9569,8 @@ namespace VULKAN_HPP_NAMESPACE
return PipelineCreateFlags( bit0 ) | bit1; return PipelineCreateFlags( bit0 ) | bit1;
} }
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreateFlags operator&(PipelineCreateFlagBits bit0, VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreateFlags
PipelineCreateFlagBits bit1)VULKAN_HPP_NOEXCEPT operator&( PipelineCreateFlagBits bit0, PipelineCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{ {
return PipelineCreateFlags( bit0 ) & bit1; return PipelineCreateFlags( bit0 ) & bit1;
} }
@ -10611,8 +10679,8 @@ namespace VULKAN_HPP_NAMESPACE
return SubgroupFeatureFlags( bit0 ) | bit1; return SubgroupFeatureFlags( bit0 ) | bit1;
} }
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubgroupFeatureFlags operator&(SubgroupFeatureFlagBits bit0, VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubgroupFeatureFlags
SubgroupFeatureFlagBits bit1)VULKAN_HPP_NOEXCEPT operator&( SubgroupFeatureFlagBits bit0, SubgroupFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{ {
return SubgroupFeatureFlags( bit0 ) & bit1; return SubgroupFeatureFlags( bit0 ) & bit1;
} }
@ -10731,8 +10799,8 @@ namespace VULKAN_HPP_NAMESPACE
return MemoryAllocateFlags( bit0 ) | bit1; return MemoryAllocateFlags( bit0 ) | bit1;
} }
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryAllocateFlags operator&(MemoryAllocateFlagBits bit0, VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryAllocateFlags
MemoryAllocateFlagBits bit1)VULKAN_HPP_NOEXCEPT operator&( MemoryAllocateFlagBits bit0, MemoryAllocateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{ {
return MemoryAllocateFlags( bit0 ) & bit1; return MemoryAllocateFlags( bit0 ) & bit1;
} }
@ -11108,8 +11176,8 @@ namespace VULKAN_HPP_NAMESPACE
return SemaphoreImportFlags( bit0 ) | bit1; return SemaphoreImportFlags( bit0 ) | bit1;
} }
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SemaphoreImportFlags operator&(SemaphoreImportFlagBits bit0, VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SemaphoreImportFlags
SemaphoreImportFlagBits bit1)VULKAN_HPP_NOEXCEPT operator&( SemaphoreImportFlagBits bit0, SemaphoreImportFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{ {
return SemaphoreImportFlags( bit0 ) & bit1; return SemaphoreImportFlags( bit0 ) & bit1;
} }
@ -11808,8 +11876,8 @@ namespace VULKAN_HPP_NAMESPACE
return DebugReportFlagsEXT( bit0 ) | bit1; return DebugReportFlagsEXT( bit0 ) | bit1;
} }
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugReportFlagsEXT operator&(DebugReportFlagBitsEXT bit0, VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugReportFlagsEXT
DebugReportFlagBitsEXT bit1)VULKAN_HPP_NOEXCEPT operator&( DebugReportFlagBitsEXT bit0, DebugReportFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{ {
return DebugReportFlagsEXT( bit0 ) & bit1; return DebugReportFlagsEXT( bit0 ) & bit1;
} }
@ -12249,8 +12317,8 @@ namespace VULKAN_HPP_NAMESPACE
return VideoDecodeFlagsKHR( bit0 ) | bit1; return VideoDecodeFlagsKHR( bit0 ) | bit1;
} }
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoDecodeFlagsKHR operator&(VideoDecodeFlagBitsKHR bit0, VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoDecodeFlagsKHR
VideoDecodeFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT operator&( VideoDecodeFlagBitsKHR bit0, VideoDecodeFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
{ {
return VideoDecodeFlagsKHR( bit0 ) & bit1; return VideoDecodeFlagsKHR( bit0 ) & bit1;
} }
@ -12319,8 +12387,8 @@ namespace VULKAN_HPP_NAMESPACE
return VideoEncodeH264CapabilityFlagsEXT( bit0 ) | bit1; return VideoEncodeH264CapabilityFlagsEXT( bit0 ) | bit1;
} }
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeH264CapabilityFlagsEXT VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeH264CapabilityFlagsEXT operator&(
operator&(VideoEncodeH264CapabilityFlagBitsEXT bit0, VideoEncodeH264CapabilityFlagBitsEXT bit1)VULKAN_HPP_NOEXCEPT VideoEncodeH264CapabilityFlagBitsEXT bit0, VideoEncodeH264CapabilityFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{ {
return VideoEncodeH264CapabilityFlagsEXT( bit0 ) & bit1; return VideoEncodeH264CapabilityFlagsEXT( bit0 ) & bit1;
} }
@ -12441,8 +12509,8 @@ namespace VULKAN_HPP_NAMESPACE
return VideoEncodeH264OutputModeFlagsEXT( bit0 ) | bit1; return VideoEncodeH264OutputModeFlagsEXT( bit0 ) | bit1;
} }
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeH264OutputModeFlagsEXT VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeH264OutputModeFlagsEXT operator&(
operator&(VideoEncodeH264OutputModeFlagBitsEXT bit0, VideoEncodeH264OutputModeFlagBitsEXT bit1)VULKAN_HPP_NOEXCEPT VideoEncodeH264OutputModeFlagBitsEXT bit0, VideoEncodeH264OutputModeFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{ {
return VideoEncodeH264OutputModeFlagsEXT( bit0 ) & bit1; return VideoEncodeH264OutputModeFlagsEXT( bit0 ) & bit1;
} }
@ -12957,8 +13025,8 @@ namespace VULKAN_HPP_NAMESPACE
return DebugUtilsMessageSeverityFlagsEXT( bit0 ) | bit1; return DebugUtilsMessageSeverityFlagsEXT( bit0 ) | bit1;
} }
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageSeverityFlagsEXT VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageSeverityFlagsEXT operator&(
operator&(DebugUtilsMessageSeverityFlagBitsEXT bit0, DebugUtilsMessageSeverityFlagBitsEXT bit1)VULKAN_HPP_NOEXCEPT DebugUtilsMessageSeverityFlagBitsEXT bit0, DebugUtilsMessageSeverityFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{ {
return DebugUtilsMessageSeverityFlagsEXT( bit0 ) & bit1; return DebugUtilsMessageSeverityFlagsEXT( bit0 ) & bit1;
} }
@ -13201,8 +13269,8 @@ namespace VULKAN_HPP_NAMESPACE
return BuildAccelerationStructureFlagsKHR( bit0 ) | bit1; return BuildAccelerationStructureFlagsKHR( bit0 ) | bit1;
} }
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BuildAccelerationStructureFlagsKHR VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BuildAccelerationStructureFlagsKHR operator&(
operator&(BuildAccelerationStructureFlagBitsKHR bit0, BuildAccelerationStructureFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT BuildAccelerationStructureFlagBitsKHR bit0, BuildAccelerationStructureFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
{ {
return BuildAccelerationStructureFlagsKHR( bit0 ) & bit1; return BuildAccelerationStructureFlagsKHR( bit0 ) & bit1;
} }
@ -13439,8 +13507,8 @@ namespace VULKAN_HPP_NAMESPACE
return ToolPurposeFlagsEXT( bit0 ) | bit1; return ToolPurposeFlagsEXT( bit0 ) | bit1;
} }
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ToolPurposeFlagsEXT operator&(ToolPurposeFlagBitsEXT bit0, VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ToolPurposeFlagsEXT
ToolPurposeFlagBitsEXT bit1)VULKAN_HPP_NOEXCEPT operator&( ToolPurposeFlagBitsEXT bit0, ToolPurposeFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{ {
return ToolPurposeFlagsEXT( bit0 ) & bit1; return ToolPurposeFlagsEXT( bit0 ) & bit1;
} }
@ -13518,8 +13586,8 @@ namespace VULKAN_HPP_NAMESPACE
return IndirectStateFlagsNV( bit0 ) | bit1; return IndirectStateFlagsNV( bit0 ) | bit1;
} }
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR IndirectStateFlagsNV operator&(IndirectStateFlagBitsNV bit0, VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR IndirectStateFlagsNV
IndirectStateFlagBitsNV bit1)VULKAN_HPP_NOEXCEPT operator&( IndirectStateFlagBitsNV bit0, IndirectStateFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
{ {
return IndirectStateFlagsNV( bit0 ) & bit1; return IndirectStateFlagsNV( bit0 ) & bit1;
} }
@ -13567,8 +13635,8 @@ namespace VULKAN_HPP_NAMESPACE
return IndirectCommandsLayoutUsageFlagsNV( bit0 ) | bit1; return IndirectCommandsLayoutUsageFlagsNV( bit0 ) | bit1;
} }
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutUsageFlagsNV VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutUsageFlagsNV operator&(
operator&(IndirectCommandsLayoutUsageFlagBitsNV bit0, IndirectCommandsLayoutUsageFlagBitsNV bit1)VULKAN_HPP_NOEXCEPT IndirectCommandsLayoutUsageFlagBitsNV bit0, IndirectCommandsLayoutUsageFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
{ {
return IndirectCommandsLayoutUsageFlagsNV( bit0 ) & bit1; return IndirectCommandsLayoutUsageFlagsNV( bit0 ) & bit1;
} }
@ -13639,8 +13707,8 @@ namespace VULKAN_HPP_NAMESPACE
return VideoEncodeFlagsKHR( bit0 ) | bit1; return VideoEncodeFlagsKHR( bit0 ) | bit1;
} }
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeFlagsKHR operator&(VideoEncodeFlagBitsKHR bit0, VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeFlagsKHR
VideoEncodeFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT operator&( VideoEncodeFlagBitsKHR bit0, VideoEncodeFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
{ {
return VideoEncodeFlagsKHR( bit0 ) & bit1; return VideoEncodeFlagsKHR( bit0 ) & bit1;
} }
@ -13736,8 +13804,8 @@ namespace VULKAN_HPP_NAMESPACE
return VideoEncodeRateControlModeFlagsKHR( bit0 ) | bit1; return VideoEncodeRateControlModeFlagsKHR( bit0 ) | bit1;
} }
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeRateControlModeFlagsKHR VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR VideoEncodeRateControlModeFlagsKHR operator&(
operator&(VideoEncodeRateControlModeFlagBitsKHR bit0, VideoEncodeRateControlModeFlagBitsKHR bit1)VULKAN_HPP_NOEXCEPT VideoEncodeRateControlModeFlagBitsKHR bit0, VideoEncodeRateControlModeFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
{ {
return VideoEncodeRateControlModeFlagsKHR( bit0 ) & bit1; return VideoEncodeRateControlModeFlagsKHR( bit0 ) & bit1;
} }
@ -14192,6 +14260,76 @@ namespace VULKAN_HPP_NAMESPACE
} }
#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/ #endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
#if defined( VK_USE_PLATFORM_FUCHSIA )
//=== VK_FUCHSIA_buffer_collection ===
using ImageFormatConstraintsFlagsFUCHSIA = Flags<ImageFormatConstraintsFlagBitsFUCHSIA>;
VULKAN_HPP_INLINE std::string to_string( ImageFormatConstraintsFlagsFUCHSIA )
{
return "{}";
}
using ImageConstraintsInfoFlagsFUCHSIA = Flags<ImageConstraintsInfoFlagBitsFUCHSIA>;
template <>
struct FlagTraits<ImageConstraintsInfoFlagBitsFUCHSIA>
{
enum : VkFlags
{
allFlags = VkFlags( ImageConstraintsInfoFlagBitsFUCHSIA::eCpuReadRarely ) |
VkFlags( ImageConstraintsInfoFlagBitsFUCHSIA::eCpuReadOften ) |
VkFlags( ImageConstraintsInfoFlagBitsFUCHSIA::eCpuWriteRarely ) |
VkFlags( ImageConstraintsInfoFlagBitsFUCHSIA::eCpuWriteOften ) |
VkFlags( ImageConstraintsInfoFlagBitsFUCHSIA::eProtectedOptional )
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageConstraintsInfoFlagsFUCHSIA
operator|( ImageConstraintsInfoFlagBitsFUCHSIA bit0, ImageConstraintsInfoFlagBitsFUCHSIA bit1 ) VULKAN_HPP_NOEXCEPT
{
return ImageConstraintsInfoFlagsFUCHSIA( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageConstraintsInfoFlagsFUCHSIA
operator&( ImageConstraintsInfoFlagBitsFUCHSIA bit0, ImageConstraintsInfoFlagBitsFUCHSIA bit1 ) VULKAN_HPP_NOEXCEPT
{
return ImageConstraintsInfoFlagsFUCHSIA( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageConstraintsInfoFlagsFUCHSIA
operator^( ImageConstraintsInfoFlagBitsFUCHSIA bit0, ImageConstraintsInfoFlagBitsFUCHSIA bit1 ) VULKAN_HPP_NOEXCEPT
{
return ImageConstraintsInfoFlagsFUCHSIA( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageConstraintsInfoFlagsFUCHSIA
operator~( ImageConstraintsInfoFlagBitsFUCHSIA bits ) VULKAN_HPP_NOEXCEPT
{
return ~( ImageConstraintsInfoFlagsFUCHSIA( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( ImageConstraintsInfoFlagsFUCHSIA value )
{
if ( !value )
return "{}";
std::string result;
if ( value & ImageConstraintsInfoFlagBitsFUCHSIA::eCpuReadRarely )
result += "CpuReadRarely | ";
if ( value & ImageConstraintsInfoFlagBitsFUCHSIA::eCpuReadOften )
result += "CpuReadOften | ";
if ( value & ImageConstraintsInfoFlagBitsFUCHSIA::eCpuWriteRarely )
result += "CpuWriteRarely | ";
if ( value & ImageConstraintsInfoFlagBitsFUCHSIA::eCpuWriteOften )
result += "CpuWriteOften | ";
if ( value & ImageConstraintsInfoFlagBitsFUCHSIA::eProtectedOptional )
result += "ProtectedOptional | ";
return "{ " + result.substr( 0, result.size() - 3 ) + " }";
}
#endif /*VK_USE_PLATFORM_FUCHSIA*/
#if defined( VK_USE_PLATFORM_SCREEN_QNX ) #if defined( VK_USE_PLATFORM_SCREEN_QNX )
//=== VK_QNX_screen_surface === //=== VK_QNX_screen_surface ===

View file

@ -114,6 +114,147 @@ VKAPI_ATTR VkResult VKAPI_CALL vkGetSemaphoreZirconHandleFUCHSIA(
zx_handle_t* pZirconHandle); zx_handle_t* pZirconHandle);
#endif #endif
#define VK_FUCHSIA_buffer_collection 1
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkBufferCollectionFUCHSIA)
#define VK_FUCHSIA_BUFFER_COLLECTION_SPEC_VERSION 2
#define VK_FUCHSIA_BUFFER_COLLECTION_EXTENSION_NAME "VK_FUCHSIA_buffer_collection"
typedef enum VkImageFormatConstraintsFlagBitsFUCHSIA {
VK_IMAGE_FORMAT_CONSTRAINTS_FLAG_BITS_MAX_ENUM_FUCHSIA = 0x7FFFFFFF
} VkImageFormatConstraintsFlagBitsFUCHSIA;
typedef VkFlags VkImageFormatConstraintsFlagsFUCHSIA;
typedef enum VkImageConstraintsInfoFlagBitsFUCHSIA {
VK_IMAGE_CONSTRAINTS_INFO_CPU_READ_RARELY_FUCHSIA = 0x00000001,
VK_IMAGE_CONSTRAINTS_INFO_CPU_READ_OFTEN_FUCHSIA = 0x00000002,
VK_IMAGE_CONSTRAINTS_INFO_CPU_WRITE_RARELY_FUCHSIA = 0x00000004,
VK_IMAGE_CONSTRAINTS_INFO_CPU_WRITE_OFTEN_FUCHSIA = 0x00000008,
VK_IMAGE_CONSTRAINTS_INFO_PROTECTED_OPTIONAL_FUCHSIA = 0x00000010,
VK_IMAGE_CONSTRAINTS_INFO_FLAG_BITS_MAX_ENUM_FUCHSIA = 0x7FFFFFFF
} VkImageConstraintsInfoFlagBitsFUCHSIA;
typedef VkFlags VkImageConstraintsInfoFlagsFUCHSIA;
typedef struct VkBufferCollectionCreateInfoFUCHSIA {
VkStructureType sType;
const void* pNext;
zx_handle_t collectionToken;
} VkBufferCollectionCreateInfoFUCHSIA;
typedef struct VkImportMemoryBufferCollectionFUCHSIA {
VkStructureType sType;
const void* pNext;
VkBufferCollectionFUCHSIA collection;
uint32_t index;
} VkImportMemoryBufferCollectionFUCHSIA;
typedef struct VkBufferCollectionImageCreateInfoFUCHSIA {
VkStructureType sType;
const void* pNext;
VkBufferCollectionFUCHSIA collection;
uint32_t index;
} VkBufferCollectionImageCreateInfoFUCHSIA;
typedef struct VkBufferCollectionConstraintsInfoFUCHSIA {
VkStructureType sType;
const void* pNext;
uint32_t minBufferCount;
uint32_t maxBufferCount;
uint32_t minBufferCountForCamping;
uint32_t minBufferCountForDedicatedSlack;
uint32_t minBufferCountForSharedSlack;
} VkBufferCollectionConstraintsInfoFUCHSIA;
typedef struct VkBufferConstraintsInfoFUCHSIA {
VkStructureType sType;
const void* pNext;
VkBufferCreateInfo createInfo;
VkFormatFeatureFlags requiredFormatFeatures;
VkBufferCollectionConstraintsInfoFUCHSIA bufferCollectionConstraints;
} VkBufferConstraintsInfoFUCHSIA;
typedef struct VkBufferCollectionBufferCreateInfoFUCHSIA {
VkStructureType sType;
const void* pNext;
VkBufferCollectionFUCHSIA collection;
uint32_t index;
} VkBufferCollectionBufferCreateInfoFUCHSIA;
typedef struct VkSysmemColorSpaceFUCHSIA {
VkStructureType sType;
const void* pNext;
uint32_t colorSpace;
} VkSysmemColorSpaceFUCHSIA;
typedef struct VkBufferCollectionPropertiesFUCHSIA {
VkStructureType sType;
void* pNext;
uint32_t memoryTypeBits;
uint32_t bufferCount;
uint32_t createInfoIndex;
uint64_t sysmemPixelFormat;
VkFormatFeatureFlags formatFeatures;
VkSysmemColorSpaceFUCHSIA sysmemColorSpaceIndex;
VkComponentMapping samplerYcbcrConversionComponents;
VkSamplerYcbcrModelConversion suggestedYcbcrModel;
VkSamplerYcbcrRange suggestedYcbcrRange;
VkChromaLocation suggestedXChromaOffset;
VkChromaLocation suggestedYChromaOffset;
} VkBufferCollectionPropertiesFUCHSIA;
typedef struct VkImageFormatConstraintsInfoFUCHSIA {
VkStructureType sType;
const void* pNext;
VkImageCreateInfo imageCreateInfo;
VkFormatFeatureFlags requiredFormatFeatures;
VkImageFormatConstraintsFlagsFUCHSIA flags;
uint64_t sysmemPixelFormat;
uint32_t colorSpaceCount;
const VkSysmemColorSpaceFUCHSIA* pColorSpaces;
} VkImageFormatConstraintsInfoFUCHSIA;
typedef struct VkImageConstraintsInfoFUCHSIA {
VkStructureType sType;
const void* pNext;
uint32_t formatConstraintsCount;
const VkImageFormatConstraintsInfoFUCHSIA* pFormatConstraints;
VkBufferCollectionConstraintsInfoFUCHSIA bufferCollectionConstraints;
VkImageConstraintsInfoFlagsFUCHSIA flags;
} VkImageConstraintsInfoFUCHSIA;
typedef VkResult (VKAPI_PTR *PFN_vkCreateBufferCollectionFUCHSIA)(VkDevice device, const VkBufferCollectionCreateInfoFUCHSIA* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBufferCollectionFUCHSIA* pCollection);
typedef VkResult (VKAPI_PTR *PFN_vkSetBufferCollectionImageConstraintsFUCHSIA)(VkDevice device, VkBufferCollectionFUCHSIA collection, const VkImageConstraintsInfoFUCHSIA* pImageConstraintsInfo);
typedef VkResult (VKAPI_PTR *PFN_vkSetBufferCollectionBufferConstraintsFUCHSIA)(VkDevice device, VkBufferCollectionFUCHSIA collection, const VkBufferConstraintsInfoFUCHSIA* pBufferConstraintsInfo);
typedef void (VKAPI_PTR *PFN_vkDestroyBufferCollectionFUCHSIA)(VkDevice device, VkBufferCollectionFUCHSIA collection, const VkAllocationCallbacks* pAllocator);
typedef VkResult (VKAPI_PTR *PFN_vkGetBufferCollectionPropertiesFUCHSIA)(VkDevice device, VkBufferCollectionFUCHSIA collection, VkBufferCollectionPropertiesFUCHSIA* pProperties);
#ifndef VK_NO_PROTOTYPES
VKAPI_ATTR VkResult VKAPI_CALL vkCreateBufferCollectionFUCHSIA(
VkDevice device,
const VkBufferCollectionCreateInfoFUCHSIA* pCreateInfo,
const VkAllocationCallbacks* pAllocator,
VkBufferCollectionFUCHSIA* pCollection);
VKAPI_ATTR VkResult VKAPI_CALL vkSetBufferCollectionImageConstraintsFUCHSIA(
VkDevice device,
VkBufferCollectionFUCHSIA collection,
const VkImageConstraintsInfoFUCHSIA* pImageConstraintsInfo);
VKAPI_ATTR VkResult VKAPI_CALL vkSetBufferCollectionBufferConstraintsFUCHSIA(
VkDevice device,
VkBufferCollectionFUCHSIA collection,
const VkBufferConstraintsInfoFUCHSIA* pBufferConstraintsInfo);
VKAPI_ATTR void VKAPI_CALL vkDestroyBufferCollectionFUCHSIA(
VkDevice device,
VkBufferCollectionFUCHSIA collection,
const VkAllocationCallbacks* pAllocator);
VKAPI_ATTR VkResult VKAPI_CALL vkGetBufferCollectionPropertiesFUCHSIA(
VkDevice device,
VkBufferCollectionFUCHSIA collection,
VkBufferCollectionPropertiesFUCHSIA* pProperties);
#endif
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif

View file

@ -15558,6 +15558,24 @@ namespace VULKAN_HPP_NAMESPACE
&maxDeviation ) ); &maxDeviation ) );
return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getCalibratedTimestampsEXT" ); return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getCalibratedTimestampsEXT" );
} }
template <typename Dispatch>
VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
typename ResultValueType<std::pair<uint64_t, uint64_t>>::type
Device::getCalibratedTimestampEXT( const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT & timestampInfo,
Dispatch const & d ) const
{
VULKAN_HPP_ASSERT( d.getVkHeaderVersion() == VK_HEADER_VERSION );
std::pair<uint64_t, uint64_t> data;
uint64_t & timestamp = data.first;
uint64_t & maxDeviation = data.second;
Result result = static_cast<Result>(
d.vkGetCalibratedTimestampsEXT( m_device,
1,
reinterpret_cast<const VkCalibratedTimestampInfoEXT *>( &timestampInfo ),
&timestamp,
&maxDeviation ) );
return createResultValue( result, data, VULKAN_HPP_NAMESPACE_STRING "::Device::getCalibratedTimestampEXT" );
}
#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/ #endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
//=== VK_NV_mesh_shader === //=== VK_NV_mesh_shader ===
@ -19125,6 +19143,213 @@ namespace VULKAN_HPP_NAMESPACE
result, zirconHandle, VULKAN_HPP_NAMESPACE_STRING "::Device::getSemaphoreZirconHandleFUCHSIA" ); result, zirconHandle, VULKAN_HPP_NAMESPACE_STRING "::Device::getSemaphoreZirconHandleFUCHSIA" );
} }
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/ # endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VK_USE_PLATFORM_FUCHSIA*/
#if defined( VK_USE_PLATFORM_FUCHSIA )
//=== VK_FUCHSIA_buffer_collection ===
template <typename Dispatch>
VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
Device::createBufferCollectionFUCHSIA( const VULKAN_HPP_NAMESPACE::BufferCollectionCreateInfoFUCHSIA * pCreateInfo,
const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA * pCollection,
Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
{
VULKAN_HPP_ASSERT( d.getVkHeaderVersion() == VK_HEADER_VERSION );
return static_cast<Result>(
d.vkCreateBufferCollectionFUCHSIA( m_device,
reinterpret_cast<const VkBufferCollectionCreateInfoFUCHSIA *>( pCreateInfo ),
reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ),
reinterpret_cast<VkBufferCollectionFUCHSIA *>( pCollection ) ) );
}
# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
template <typename Dispatch>
VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
typename ResultValueType<VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA>::type
Device::createBufferCollectionFUCHSIA( const BufferCollectionCreateInfoFUCHSIA & createInfo,
Optional<const AllocationCallbacks> allocator,
Dispatch const & d ) const
{
VULKAN_HPP_ASSERT( d.getVkHeaderVersion() == VK_HEADER_VERSION );
VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection;
Result result = static_cast<Result>( d.vkCreateBufferCollectionFUCHSIA(
m_device,
reinterpret_cast<const VkBufferCollectionCreateInfoFUCHSIA *>( &createInfo ),
reinterpret_cast<const VkAllocationCallbacks *>(
static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
reinterpret_cast<VkBufferCollectionFUCHSIA *>( &collection ) ) );
return createResultValue(
result, collection, VULKAN_HPP_NAMESPACE_STRING "::Device::createBufferCollectionFUCHSIA" );
}
# ifndef VULKAN_HPP_NO_SMART_HANDLE
template <typename Dispatch>
VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA, Dispatch>>::type
Device::createBufferCollectionFUCHSIAUnique( const BufferCollectionCreateInfoFUCHSIA & createInfo,
Optional<const AllocationCallbacks> allocator,
Dispatch const & d ) const
{
VULKAN_HPP_ASSERT( d.getVkHeaderVersion() == VK_HEADER_VERSION );
VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection;
Result result = static_cast<Result>( d.vkCreateBufferCollectionFUCHSIA(
m_device,
reinterpret_cast<const VkBufferCollectionCreateInfoFUCHSIA *>( &createInfo ),
reinterpret_cast<const VkAllocationCallbacks *>(
static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ),
reinterpret_cast<VkBufferCollectionFUCHSIA *>( &collection ) ) );
ObjectDestroy<Device, Dispatch> deleter( *this, allocator, d );
return createResultValue<VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA, Dispatch>(
result, collection, VULKAN_HPP_NAMESPACE_STRING "::Device::createBufferCollectionFUCHSIAUnique", deleter );
}
# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
template <typename Dispatch>
VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::setBufferCollectionImageConstraintsFUCHSIA(
VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection,
const VULKAN_HPP_NAMESPACE::ImageConstraintsInfoFUCHSIA * pImageConstraintsInfo,
Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
{
VULKAN_HPP_ASSERT( d.getVkHeaderVersion() == VK_HEADER_VERSION );
return static_cast<Result>( d.vkSetBufferCollectionImageConstraintsFUCHSIA(
m_device,
static_cast<VkBufferCollectionFUCHSIA>( collection ),
reinterpret_cast<const VkImageConstraintsInfoFUCHSIA *>( pImageConstraintsInfo ) ) );
}
# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
template <typename Dispatch>
VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
Device::setBufferCollectionImageConstraintsFUCHSIA( VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection,
const ImageConstraintsInfoFUCHSIA & imageConstraintsInfo,
Dispatch const & d ) const
{
VULKAN_HPP_ASSERT( d.getVkHeaderVersion() == VK_HEADER_VERSION );
Result result = static_cast<Result>( d.vkSetBufferCollectionImageConstraintsFUCHSIA(
m_device,
static_cast<VkBufferCollectionFUCHSIA>( collection ),
reinterpret_cast<const VkImageConstraintsInfoFUCHSIA *>( &imageConstraintsInfo ) ) );
return createResultValue( result,
VULKAN_HPP_NAMESPACE_STRING "::Device::setBufferCollectionImageConstraintsFUCHSIA" );
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
template <typename Dispatch>
VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result Device::setBufferCollectionBufferConstraintsFUCHSIA(
VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection,
const VULKAN_HPP_NAMESPACE::BufferConstraintsInfoFUCHSIA * pBufferConstraintsInfo,
Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
{
VULKAN_HPP_ASSERT( d.getVkHeaderVersion() == VK_HEADER_VERSION );
return static_cast<Result>( d.vkSetBufferCollectionBufferConstraintsFUCHSIA(
m_device,
static_cast<VkBufferCollectionFUCHSIA>( collection ),
reinterpret_cast<const VkBufferConstraintsInfoFUCHSIA *>( pBufferConstraintsInfo ) ) );
}
# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
template <typename Dispatch>
VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE typename ResultValueType<void>::type
Device::setBufferCollectionBufferConstraintsFUCHSIA( VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection,
const BufferConstraintsInfoFUCHSIA & bufferConstraintsInfo,
Dispatch const & d ) const
{
VULKAN_HPP_ASSERT( d.getVkHeaderVersion() == VK_HEADER_VERSION );
Result result = static_cast<Result>( d.vkSetBufferCollectionBufferConstraintsFUCHSIA(
m_device,
static_cast<VkBufferCollectionFUCHSIA>( collection ),
reinterpret_cast<const VkBufferConstraintsInfoFUCHSIA *>( &bufferConstraintsInfo ) ) );
return createResultValue( result,
VULKAN_HPP_NAMESPACE_STRING "::Device::setBufferCollectionBufferConstraintsFUCHSIA" );
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
template <typename Dispatch>
VULKAN_HPP_INLINE void
Device::destroyBufferCollectionFUCHSIA( VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection,
const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
{
VULKAN_HPP_ASSERT( d.getVkHeaderVersion() == VK_HEADER_VERSION );
d.vkDestroyBufferCollectionFUCHSIA( m_device,
static_cast<VkBufferCollectionFUCHSIA>( collection ),
reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
}
# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
template <typename Dispatch>
VULKAN_HPP_INLINE void
Device::destroyBufferCollectionFUCHSIA( VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection,
Optional<const AllocationCallbacks> allocator,
Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
{
VULKAN_HPP_ASSERT( d.getVkHeaderVersion() == VK_HEADER_VERSION );
d.vkDestroyBufferCollectionFUCHSIA(
m_device,
static_cast<VkBufferCollectionFUCHSIA>( collection ),
reinterpret_cast<const VkAllocationCallbacks *>(
static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
template <typename Dispatch>
VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection,
const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
{
VULKAN_HPP_ASSERT( d.getVkHeaderVersion() == VK_HEADER_VERSION );
d.vkDestroyBufferCollectionFUCHSIA( m_device,
static_cast<VkBufferCollectionFUCHSIA>( collection ),
reinterpret_cast<const VkAllocationCallbacks *>( pAllocator ) );
}
# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
template <typename Dispatch>
VULKAN_HPP_INLINE void Device::destroy( VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection,
Optional<const AllocationCallbacks> allocator,
Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
{
VULKAN_HPP_ASSERT( d.getVkHeaderVersion() == VK_HEADER_VERSION );
d.vkDestroyBufferCollectionFUCHSIA(
m_device,
static_cast<VkBufferCollectionFUCHSIA>( collection ),
reinterpret_cast<const VkAllocationCallbacks *>(
static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) );
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
template <typename Dispatch>
VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE Result
Device::getBufferCollectionPropertiesFUCHSIA( VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection,
VULKAN_HPP_NAMESPACE::BufferCollectionPropertiesFUCHSIA * pProperties,
Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
{
VULKAN_HPP_ASSERT( d.getVkHeaderVersion() == VK_HEADER_VERSION );
return static_cast<Result>( d.vkGetBufferCollectionPropertiesFUCHSIA(
m_device,
static_cast<VkBufferCollectionFUCHSIA>( collection ),
reinterpret_cast<VkBufferCollectionPropertiesFUCHSIA *>( pProperties ) ) );
}
# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
template <typename Dispatch>
VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
typename ResultValueType<VULKAN_HPP_NAMESPACE::BufferCollectionPropertiesFUCHSIA>::type
Device::getBufferCollectionPropertiesFUCHSIA( VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection,
Dispatch const & d ) const
{
VULKAN_HPP_ASSERT( d.getVkHeaderVersion() == VK_HEADER_VERSION );
VULKAN_HPP_NAMESPACE::BufferCollectionPropertiesFUCHSIA properties;
Result result = static_cast<Result>( d.vkGetBufferCollectionPropertiesFUCHSIA(
m_device,
static_cast<VkBufferCollectionFUCHSIA>( collection ),
reinterpret_cast<VkBufferCollectionPropertiesFUCHSIA *>( &properties ) ) );
return createResultValue(
result, properties, VULKAN_HPP_NAMESPACE_STRING "::Device::getBufferCollectionPropertiesFUCHSIA" );
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VK_USE_PLATFORM_FUCHSIA*/ #endif /*VK_USE_PLATFORM_FUCHSIA*/
//=== VK_HUAWEI_subpass_shading === //=== VK_HUAWEI_subpass_shading ===

View file

@ -1196,6 +1196,20 @@ namespace VULKAN_HPP_NAMESPACE
struct SemaphoreGetZirconHandleInfoFUCHSIA; struct SemaphoreGetZirconHandleInfoFUCHSIA;
#endif /*VK_USE_PLATFORM_FUCHSIA*/ #endif /*VK_USE_PLATFORM_FUCHSIA*/
#if defined( VK_USE_PLATFORM_FUCHSIA )
//=== VK_FUCHSIA_buffer_collection ===
struct BufferCollectionCreateInfoFUCHSIA;
struct ImportMemoryBufferCollectionFUCHSIA;
struct BufferCollectionImageCreateInfoFUCHSIA;
struct BufferConstraintsInfoFUCHSIA;
struct BufferCollectionBufferCreateInfoFUCHSIA;
struct BufferCollectionPropertiesFUCHSIA;
struct SysmemColorSpaceFUCHSIA;
struct ImageConstraintsInfoFUCHSIA;
struct ImageFormatConstraintsInfoFUCHSIA;
struct BufferCollectionConstraintsInfoFUCHSIA;
#endif /*VK_USE_PLATFORM_FUCHSIA*/
//=== VK_HUAWEI_subpass_shading === //=== VK_HUAWEI_subpass_shading ===
struct SubpassShadingPipelineCreateInfoHUAWEI; struct SubpassShadingPipelineCreateInfoHUAWEI;
struct PhysicalDeviceSubpassShadingFeaturesHUAWEI; struct PhysicalDeviceSubpassShadingFeaturesHUAWEI;
@ -5106,6 +5120,110 @@ namespace VULKAN_HPP_NAMESPACE
static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true; static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
}; };
#if defined( VK_USE_PLATFORM_FUCHSIA )
class BufferCollectionFUCHSIA
{
public:
using CType = VkBufferCollectionFUCHSIA;
using NativeType = VkBufferCollectionFUCHSIA;
static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
VULKAN_HPP_NAMESPACE::ObjectType::eBufferCollectionFUCHSIA;
static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eBufferCollectionFUCHSIA;
public:
VULKAN_HPP_CONSTEXPR BufferCollectionFUCHSIA() = default;
VULKAN_HPP_CONSTEXPR BufferCollectionFUCHSIA( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
VULKAN_HPP_TYPESAFE_EXPLICIT
BufferCollectionFUCHSIA( VkBufferCollectionFUCHSIA bufferCollectionFUCHSIA ) VULKAN_HPP_NOEXCEPT
: m_bufferCollectionFUCHSIA( bufferCollectionFUCHSIA )
{}
# if defined( VULKAN_HPP_TYPESAFE_CONVERSION )
BufferCollectionFUCHSIA & operator=( VkBufferCollectionFUCHSIA bufferCollectionFUCHSIA ) VULKAN_HPP_NOEXCEPT
{
m_bufferCollectionFUCHSIA = bufferCollectionFUCHSIA;
return *this;
}
# endif
BufferCollectionFUCHSIA & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
{
m_bufferCollectionFUCHSIA = {};
return *this;
}
# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
auto operator<=>( BufferCollectionFUCHSIA const & ) const = default;
# else
bool operator==( BufferCollectionFUCHSIA const & rhs ) const VULKAN_HPP_NOEXCEPT
{
return m_bufferCollectionFUCHSIA == rhs.m_bufferCollectionFUCHSIA;
}
bool operator!=( BufferCollectionFUCHSIA const & rhs ) const VULKAN_HPP_NOEXCEPT
{
return m_bufferCollectionFUCHSIA != rhs.m_bufferCollectionFUCHSIA;
}
bool operator<( BufferCollectionFUCHSIA const & rhs ) const VULKAN_HPP_NOEXCEPT
{
return m_bufferCollectionFUCHSIA < rhs.m_bufferCollectionFUCHSIA;
}
# endif
VULKAN_HPP_TYPESAFE_EXPLICIT operator VkBufferCollectionFUCHSIA() const VULKAN_HPP_NOEXCEPT
{
return m_bufferCollectionFUCHSIA;
}
explicit operator bool() const VULKAN_HPP_NOEXCEPT
{
return m_bufferCollectionFUCHSIA != VK_NULL_HANDLE;
}
bool operator!() const VULKAN_HPP_NOEXCEPT
{
return m_bufferCollectionFUCHSIA == VK_NULL_HANDLE;
}
private:
VkBufferCollectionFUCHSIA m_bufferCollectionFUCHSIA = {};
};
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA ) ==
sizeof( VkBufferCollectionFUCHSIA ),
"handle and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA>::value,
"BufferCollectionFUCHSIA is not nothrow_move_constructible!" );
template <>
struct VULKAN_HPP_DEPRECATED(
"vk::cpp_type is deprecated. Use vk::CppType instead." ) cpp_type<ObjectType::eBufferCollectionFUCHSIA>
{
using type = VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA;
};
template <>
struct CppType<VULKAN_HPP_NAMESPACE::ObjectType, VULKAN_HPP_NAMESPACE::ObjectType::eBufferCollectionFUCHSIA>
{
using Type = VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA;
};
template <>
struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT,
VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eBufferCollectionFUCHSIA>
{
using Type = VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA;
};
template <>
struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA>
{
static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
};
#endif /*VK_USE_PLATFORM_FUCHSIA*/
class BufferView class BufferView
{ {
public: public:
@ -6955,6 +7073,15 @@ namespace VULKAN_HPP_NAMESPACE
using deleter = ObjectDestroy<Device, Dispatch>; using deleter = ObjectDestroy<Device, Dispatch>;
}; };
using UniqueBuffer = UniqueHandle<Buffer, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>; using UniqueBuffer = UniqueHandle<Buffer, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
# if defined( VK_USE_PLATFORM_FUCHSIA )
template <typename Dispatch>
class UniqueHandleTraits<BufferCollectionFUCHSIA, Dispatch>
{
public:
using deleter = ObjectDestroy<Device, Dispatch>;
};
using UniqueBufferCollectionFUCHSIA = UniqueHandle<BufferCollectionFUCHSIA, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
# endif /*VK_USE_PLATFORM_FUCHSIA*/
template <typename Dispatch> template <typename Dispatch>
class UniqueHandleTraits<BufferView, Dispatch> class UniqueHandleTraits<BufferView, Dispatch>
{ {
@ -10748,6 +10875,10 @@ namespace VULKAN_HPP_NAMESPACE
ArrayProxy<const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT> const & timestampInfos, ArrayProxy<const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT> const & timestampInfos,
Uint64_tAllocator & uint64_tAllocator, Uint64_tAllocator & uint64_tAllocator,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const; Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<std::pair<uint64_t, uint64_t>>::type
getCalibratedTimestampEXT( const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT & timestampInfo,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/ #endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
//=== VK_KHR_timeline_semaphore === //=== VK_KHR_timeline_semaphore ===
@ -11491,6 +11622,98 @@ namespace VULKAN_HPP_NAMESPACE
getSemaphoreZirconHandleFUCHSIA( const SemaphoreGetZirconHandleInfoFUCHSIA & getZirconHandleInfo, getSemaphoreZirconHandleFUCHSIA( const SemaphoreGetZirconHandleInfoFUCHSIA & getZirconHandleInfo,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const; Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/ # endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VK_USE_PLATFORM_FUCHSIA*/
#if defined( VK_USE_PLATFORM_FUCHSIA )
//=== VK_FUCHSIA_buffer_collection ===
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
VULKAN_HPP_NODISCARD Result createBufferCollectionFUCHSIA(
const VULKAN_HPP_NAMESPACE::BufferCollectionCreateInfoFUCHSIA * pCreateInfo,
const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA * pCollection,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
typename ResultValueType<VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA>::type
createBufferCollectionFUCHSIA( const BufferCollectionCreateInfoFUCHSIA & createInfo,
Optional<const AllocationCallbacks> allocator
VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
# ifndef VULKAN_HPP_NO_SMART_HANDLE
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS VULKAN_HPP_INLINE
typename ResultValueType<UniqueHandle<VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA, Dispatch>>::type
createBufferCollectionFUCHSIAUnique( const BufferCollectionCreateInfoFUCHSIA & createInfo,
Optional<const AllocationCallbacks> allocator
VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
# endif /*VULKAN_HPP_NO_SMART_HANDLE*/
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
VULKAN_HPP_NODISCARD Result setBufferCollectionImageConstraintsFUCHSIA(
VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection,
const VULKAN_HPP_NAMESPACE::ImageConstraintsInfoFUCHSIA * pImageConstraintsInfo,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
setBufferCollectionImageConstraintsFUCHSIA( VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection,
const ImageConstraintsInfoFUCHSIA & imageConstraintsInfo,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
VULKAN_HPP_NODISCARD Result setBufferCollectionBufferConstraintsFUCHSIA(
VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection,
const VULKAN_HPP_NAMESPACE::BufferConstraintsInfoFUCHSIA * pBufferConstraintsInfo,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
setBufferCollectionBufferConstraintsFUCHSIA( VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection,
const BufferConstraintsInfoFUCHSIA & bufferConstraintsInfo,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
void destroyBufferCollectionFUCHSIA( VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection,
const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const
VULKAN_HPP_NOEXCEPT;
# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
void destroyBufferCollectionFUCHSIA(
VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection,
Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
void destroy( VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection,
const VULKAN_HPP_NAMESPACE::AllocationCallbacks * pAllocator,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
void destroy( VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection,
Optional<const AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
VULKAN_HPP_NODISCARD Result getBufferCollectionPropertiesFUCHSIA(
VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection,
VULKAN_HPP_NAMESPACE::BufferCollectionPropertiesFUCHSIA * pProperties,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
typename ResultValueType<VULKAN_HPP_NAMESPACE::BufferCollectionPropertiesFUCHSIA>::type
getBufferCollectionPropertiesFUCHSIA( VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VK_USE_PLATFORM_FUCHSIA*/ #endif /*VK_USE_PLATFORM_FUCHSIA*/
//=== VK_HUAWEI_subpass_shading === //=== VK_HUAWEI_subpass_shading ===

View file

@ -1086,6 +1086,20 @@ namespace VULKAN_HPP_NAMESPACE
//=== VK_EXT_vertex_input_dynamic_state === //=== VK_EXT_vertex_input_dynamic_state ===
vkCmdSetVertexInputEXT = PFN_vkCmdSetVertexInputEXT( vkGetDeviceProcAddr( device, "vkCmdSetVertexInputEXT" ) ); vkCmdSetVertexInputEXT = PFN_vkCmdSetVertexInputEXT( vkGetDeviceProcAddr( device, "vkCmdSetVertexInputEXT" ) );
# if defined( VK_USE_PLATFORM_FUCHSIA )
//=== VK_FUCHSIA_buffer_collection ===
vkCreateBufferCollectionFUCHSIA =
PFN_vkCreateBufferCollectionFUCHSIA( vkGetDeviceProcAddr( device, "vkCreateBufferCollectionFUCHSIA" ) );
vkSetBufferCollectionImageConstraintsFUCHSIA = PFN_vkSetBufferCollectionImageConstraintsFUCHSIA(
vkGetDeviceProcAddr( device, "vkSetBufferCollectionImageConstraintsFUCHSIA" ) );
vkSetBufferCollectionBufferConstraintsFUCHSIA = PFN_vkSetBufferCollectionBufferConstraintsFUCHSIA(
vkGetDeviceProcAddr( device, "vkSetBufferCollectionBufferConstraintsFUCHSIA" ) );
vkDestroyBufferCollectionFUCHSIA =
PFN_vkDestroyBufferCollectionFUCHSIA( vkGetDeviceProcAddr( device, "vkDestroyBufferCollectionFUCHSIA" ) );
vkGetBufferCollectionPropertiesFUCHSIA = PFN_vkGetBufferCollectionPropertiesFUCHSIA(
vkGetDeviceProcAddr( device, "vkGetBufferCollectionPropertiesFUCHSIA" ) );
# endif /*VK_USE_PLATFORM_FUCHSIA*/
# if defined( VK_USE_PLATFORM_FUCHSIA ) # if defined( VK_USE_PLATFORM_FUCHSIA )
//=== VK_FUCHSIA_external_memory === //=== VK_FUCHSIA_external_memory ===
vkGetMemoryZirconHandleFUCHSIA = vkGetMemoryZirconHandleFUCHSIA =
@ -1855,6 +1869,21 @@ namespace VULKAN_HPP_NAMESPACE
//=== VK_EXT_vertex_input_dynamic_state === //=== VK_EXT_vertex_input_dynamic_state ===
PFN_vkCmdSetVertexInputEXT vkCmdSetVertexInputEXT = 0; PFN_vkCmdSetVertexInputEXT vkCmdSetVertexInputEXT = 0;
# if defined( VK_USE_PLATFORM_FUCHSIA )
//=== VK_FUCHSIA_buffer_collection ===
PFN_vkCreateBufferCollectionFUCHSIA vkCreateBufferCollectionFUCHSIA = 0;
PFN_vkSetBufferCollectionImageConstraintsFUCHSIA vkSetBufferCollectionImageConstraintsFUCHSIA = 0;
PFN_vkSetBufferCollectionBufferConstraintsFUCHSIA vkSetBufferCollectionBufferConstraintsFUCHSIA = 0;
PFN_vkDestroyBufferCollectionFUCHSIA vkDestroyBufferCollectionFUCHSIA = 0;
PFN_vkGetBufferCollectionPropertiesFUCHSIA vkGetBufferCollectionPropertiesFUCHSIA = 0;
# else
PFN_dummy vkCreateBufferCollectionFUCHSIA_placeholder = 0;
PFN_dummy vkSetBufferCollectionImageConstraintsFUCHSIA_placeholder = 0;
PFN_dummy vkSetBufferCollectionBufferConstraintsFUCHSIA_placeholder = 0;
PFN_dummy vkDestroyBufferCollectionFUCHSIA_placeholder = 0;
PFN_dummy vkGetBufferCollectionPropertiesFUCHSIA_placeholder = 0;
# endif /*VK_USE_PLATFORM_FUCHSIA*/
# if defined( VK_USE_PLATFORM_FUCHSIA ) # if defined( VK_USE_PLATFORM_FUCHSIA )
//=== VK_FUCHSIA_external_memory === //=== VK_FUCHSIA_external_memory ===
PFN_vkGetMemoryZirconHandleFUCHSIA vkGetMemoryZirconHandleFUCHSIA = 0; PFN_vkGetMemoryZirconHandleFUCHSIA vkGetMemoryZirconHandleFUCHSIA = 0;
@ -3199,6 +3228,9 @@ namespace VULKAN_HPP_NAMESPACE
VULKAN_HPP_NODISCARD std::pair<std::vector<uint64_t>, uint64_t> getCalibratedTimestampsEXT( VULKAN_HPP_NODISCARD std::pair<std::vector<uint64_t>, uint64_t> getCalibratedTimestampsEXT(
ArrayProxy<const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT> const & timestampInfos ) const; ArrayProxy<const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT> const & timestampInfos ) const;
VULKAN_HPP_NODISCARD std::pair<uint64_t, uint64_t>
getCalibratedTimestampEXT( const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT & timestampInfo ) const;
//=== VK_KHR_timeline_semaphore === //=== VK_KHR_timeline_semaphore ===
VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Result waitSemaphoresKHR( const SemaphoreWaitInfo & waitInfo, VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::Result waitSemaphoresKHR( const SemaphoreWaitInfo & waitInfo,
@ -3651,6 +3683,130 @@ namespace VULKAN_HPP_NAMESPACE
VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher; VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
}; };
# if defined( VK_USE_PLATFORM_FUCHSIA )
class BufferCollectionFUCHSIA
{
public:
using CType = VkBufferCollectionFUCHSIA;
static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType =
VULKAN_HPP_NAMESPACE::ObjectType::eBufferCollectionFUCHSIA;
static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eBufferCollectionFUCHSIA;
public:
BufferCollectionFUCHSIA(
VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
VULKAN_HPP_NAMESPACE::BufferCollectionCreateInfoFUCHSIA const & createInfo,
VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
: m_device( *device )
, m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
, m_dispatcher( device.getDispatcher() )
{
VULKAN_HPP_NAMESPACE::Result result =
static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkCreateBufferCollectionFUCHSIA(
static_cast<VkDevice>( *device ),
reinterpret_cast<const VkBufferCollectionCreateInfoFUCHSIA *>( &createInfo ),
m_allocator,
reinterpret_cast<VkBufferCollectionFUCHSIA *>( &m_bufferCollectionFUCHSIA ) ) );
if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
{
throwResultException( result, "vkCreateBufferCollectionFUCHSIA" );
}
}
BufferCollectionFUCHSIA(
VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
VkBufferCollectionFUCHSIA bufferCollectionFUCHSIA,
VULKAN_HPP_NAMESPACE::Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator = nullptr )
: m_bufferCollectionFUCHSIA( bufferCollectionFUCHSIA )
, m_device( *device )
, m_allocator( reinterpret_cast<const VkAllocationCallbacks *>(
static_cast<const VULKAN_HPP_NAMESPACE::AllocationCallbacks *>( allocator ) ) )
, m_dispatcher( device.getDispatcher() )
{}
~BufferCollectionFUCHSIA()
{
if ( m_bufferCollectionFUCHSIA )
{
getDispatcher()->vkDestroyBufferCollectionFUCHSIA(
m_device, static_cast<VkBufferCollectionFUCHSIA>( m_bufferCollectionFUCHSIA ), m_allocator );
}
}
# if defined( VULKAN_HPP_RAII_ENABLE_DEFAULT_CONSTRUCTORS )
BufferCollectionFUCHSIA() = default;
# else
BufferCollectionFUCHSIA() = delete;
# endif
BufferCollectionFUCHSIA( BufferCollectionFUCHSIA const & ) = delete;
BufferCollectionFUCHSIA( BufferCollectionFUCHSIA && rhs ) VULKAN_HPP_NOEXCEPT
: m_bufferCollectionFUCHSIA(
VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_bufferCollectionFUCHSIA, {} ) )
, m_device( rhs.m_device )
, m_allocator( rhs.m_allocator )
, m_dispatcher( rhs.m_dispatcher )
{}
BufferCollectionFUCHSIA & operator=( BufferCollectionFUCHSIA const & ) = delete;
BufferCollectionFUCHSIA & operator=( BufferCollectionFUCHSIA && rhs ) VULKAN_HPP_NOEXCEPT
{
if ( this != &rhs )
{
if ( m_bufferCollectionFUCHSIA )
{
getDispatcher()->vkDestroyBufferCollectionFUCHSIA(
m_device, static_cast<VkBufferCollectionFUCHSIA>( m_bufferCollectionFUCHSIA ), m_allocator );
}
m_bufferCollectionFUCHSIA =
VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::exchange( rhs.m_bufferCollectionFUCHSIA, {} );
m_device = rhs.m_device;
m_allocator = rhs.m_allocator;
m_dispatcher = rhs.m_dispatcher;
}
return *this;
}
VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA const & operator*() const VULKAN_HPP_NOEXCEPT
{
return m_bufferCollectionFUCHSIA;
}
VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * getDispatcher() const
{
VULKAN_HPP_ASSERT( m_dispatcher->getVkHeaderVersion() == VK_HEADER_VERSION );
return m_dispatcher;
}
# if defined( VULKAN_HPP_RAII_ENABLE_DEFAULT_CONSTRUCTORS )
explicit operator bool() const VULKAN_HPP_NOEXCEPT
{
return m_bufferCollectionFUCHSIA.operator bool();
}
bool operator!() const VULKAN_HPP_NOEXCEPT
{
return m_bufferCollectionFUCHSIA.operator!();
}
# endif
//=== VK_FUCHSIA_buffer_collection ===
void setImageConstraints( const ImageConstraintsInfoFUCHSIA & imageConstraintsInfo ) const;
void setBufferConstraints( const BufferConstraintsInfoFUCHSIA & bufferConstraintsInfo ) const;
VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::BufferCollectionPropertiesFUCHSIA getProperties() const;
private:
VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA m_bufferCollectionFUCHSIA;
VkDevice m_device;
const VkAllocationCallbacks * m_allocator;
VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::DeviceDispatcher const * m_dispatcher;
};
# endif /*VK_USE_PLATFORM_FUCHSIA*/
class BufferView class BufferView
{ {
public: public:
@ -14944,6 +15100,30 @@ namespace VULKAN_HPP_NAMESPACE
return data; return data;
} }
VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::pair<uint64_t, uint64_t>
Device::getCalibratedTimestampEXT( const VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT & timestampInfo ) const
{
VULKAN_HPP_ASSERT(
getDispatcher()->vkGetCalibratedTimestampsEXT &&
"Function <vkGetCalibratedTimestampsEXT> needs extension <VK_EXT_calibrated_timestamps> enabled!" );
std::pair<uint64_t, uint64_t> data;
uint64_t & timestamp = data.first;
uint64_t & maxDeviation = data.second;
VULKAN_HPP_NAMESPACE::Result result =
static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetCalibratedTimestampsEXT(
static_cast<VkDevice>( m_device ),
1,
reinterpret_cast<const VkCalibratedTimestampInfoEXT *>( &timestampInfo ),
&timestamp,
&maxDeviation ) );
if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
{
throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::Device::getCalibratedTimestampEXT" );
}
return data;
}
//=== VK_NV_mesh_shader === //=== VK_NV_mesh_shader ===
VULKAN_HPP_INLINE void CommandBuffer::drawMeshTasksNV( uint32_t taskCount, VULKAN_HPP_INLINE void CommandBuffer::drawMeshTasksNV( uint32_t taskCount,
@ -16548,6 +16728,66 @@ namespace VULKAN_HPP_NAMESPACE
} }
# endif /*VK_USE_PLATFORM_FUCHSIA*/ # endif /*VK_USE_PLATFORM_FUCHSIA*/
# if defined( VK_USE_PLATFORM_FUCHSIA )
//=== VK_FUCHSIA_buffer_collection ===
VULKAN_HPP_INLINE void
BufferCollectionFUCHSIA::setImageConstraints( const ImageConstraintsInfoFUCHSIA & imageConstraintsInfo ) const
{
VULKAN_HPP_ASSERT(
getDispatcher()->vkSetBufferCollectionImageConstraintsFUCHSIA &&
"Function <vkSetBufferCollectionImageConstraintsFUCHSIA> needs extension <VK_FUCHSIA_buffer_collection> enabled!" );
VULKAN_HPP_NAMESPACE::Result result =
static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkSetBufferCollectionImageConstraintsFUCHSIA(
static_cast<VkDevice>( m_device ),
static_cast<VkBufferCollectionFUCHSIA>( m_bufferCollectionFUCHSIA ),
reinterpret_cast<const VkImageConstraintsInfoFUCHSIA *>( &imageConstraintsInfo ) ) );
if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
{
throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::BufferCollectionFUCHSIA::setImageConstraints" );
}
}
VULKAN_HPP_INLINE void
BufferCollectionFUCHSIA::setBufferConstraints( const BufferConstraintsInfoFUCHSIA & bufferConstraintsInfo ) const
{
VULKAN_HPP_ASSERT(
getDispatcher()->vkSetBufferCollectionBufferConstraintsFUCHSIA &&
"Function <vkSetBufferCollectionBufferConstraintsFUCHSIA> needs extension <VK_FUCHSIA_buffer_collection> enabled!" );
VULKAN_HPP_NAMESPACE::Result result =
static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkSetBufferCollectionBufferConstraintsFUCHSIA(
static_cast<VkDevice>( m_device ),
static_cast<VkBufferCollectionFUCHSIA>( m_bufferCollectionFUCHSIA ),
reinterpret_cast<const VkBufferConstraintsInfoFUCHSIA *>( &bufferConstraintsInfo ) ) );
if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
{
throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::BufferCollectionFUCHSIA::setBufferConstraints" );
}
}
VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::BufferCollectionPropertiesFUCHSIA
BufferCollectionFUCHSIA::getProperties() const
{
VULKAN_HPP_ASSERT(
getDispatcher()->vkGetBufferCollectionPropertiesFUCHSIA &&
"Function <vkGetBufferCollectionPropertiesFUCHSIA> needs extension <VK_FUCHSIA_buffer_collection> enabled!" );
VULKAN_HPP_NAMESPACE::BufferCollectionPropertiesFUCHSIA properties;
VULKAN_HPP_NAMESPACE::Result result =
static_cast<VULKAN_HPP_NAMESPACE::Result>( getDispatcher()->vkGetBufferCollectionPropertiesFUCHSIA(
static_cast<VkDevice>( m_device ),
static_cast<VkBufferCollectionFUCHSIA>( m_bufferCollectionFUCHSIA ),
reinterpret_cast<VkBufferCollectionPropertiesFUCHSIA *>( &properties ) ) );
if ( result != VULKAN_HPP_NAMESPACE::Result::eSuccess )
{
throwResultException( result, VULKAN_HPP_NAMESPACE_STRING "::BufferCollectionFUCHSIA::getProperties" );
}
return properties;
}
# endif /*VK_USE_PLATFORM_FUCHSIA*/
//=== VK_HUAWEI_subpass_shading === //=== VK_HUAWEI_subpass_shading ===
VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::pair<VULKAN_HPP_NAMESPACE::Result, VULKAN_HPP_NAMESPACE::Extent2D> VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::pair<VULKAN_HPP_NAMESPACE::Result, VULKAN_HPP_NAMESPACE::Extent2D>

File diff suppressed because it is too large Load diff

View file

@ -317,7 +317,8 @@ def makeGenOpts(args):
], commonSuppressExtensions ], ], commonSuppressExtensions ],
[ 'vulkan_fuchsia.h', [ 'VK_FUCHSIA_imagepipe_surface', [ 'vulkan_fuchsia.h', [ 'VK_FUCHSIA_imagepipe_surface',
'VK_FUCHSIA_external_memory', 'VK_FUCHSIA_external_memory',
'VK_FUCHSIA_external_semaphore' ], commonSuppressExtensions ], 'VK_FUCHSIA_external_semaphore',
'VK_FUCHSIA_buffer_collection' ], commonSuppressExtensions ],
[ 'vulkan_ggp.h', [ 'VK_GGP_stream_descriptor_surface', [ 'vulkan_ggp.h', [ 'VK_GGP_stream_descriptor_surface',
'VK_GGP_frame_token' ], commonSuppressExtensions ], 'VK_GGP_frame_token' ], commonSuppressExtensions ],
[ 'vulkan_ios.h', [ 'VK_MVK_ios_surface' ], commonSuppressExtensions ], [ 'vulkan_ios.h', [ 'VK_MVK_ios_surface' ], commonSuppressExtensions ],

View file

@ -1,9 +1,9 @@
{ {
"version info": { "version info": {
"schema version": 2, "schema version": 2,
"api version": "1.2.193", "api version": "1.2.194",
"comment": "from git branch: github-main commit: 129f6f69dcbc00184d771d2da969b4ed394ac80c", "comment": "from git branch: github-main commit: a0960966d565bdfc6e853a0bc471e58fdbd374ef",
"date": "2021-09-21 07:35:52Z" "date": "2021-09-28 12:49:58Z"
}, },
"validation": { "validation": {
"vkGetInstanceProcAddr": { "vkGetInstanceProcAddr": {
@ -6284,7 +6284,7 @@
}, },
{ {
"vuid": "VUID-VkRenderPassCreateInfo-pNext-02515", "vuid": "VUID-VkRenderPassCreateInfo-pNext-02515",
"text": " If the <code>pNext</code> chain includes a <a href=\"#VkRenderPassMultiviewCreateInfo\">VkRenderPassMultiviewCreateInfo</a> structure, and each element of its <code>pViewMasks</code> member is <code>0</code>, <code>correlatedViewMaskCount</code> <strong class=\"purple\">must</strong> be <code>0</code>" "text": " If the <code>pNext</code> chain includes a <a href=\"#VkRenderPassMultiviewCreateInfo\">VkRenderPassMultiviewCreateInfo</a> structure, and each element of its <code>pViewMasks</code> member is <code>0</code>, its <code>correlationMaskCount</code> member <strong class=\"purple\">must</strong> be <code>0</code>"
} }
] ]
}, },
@ -11529,6 +11529,36 @@
"text": " <code>allocationSize</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>" "text": " <code>allocationSize</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>"
} }
], ],
"(VK_FUCHSIA_buffer_collection)": [
{
"vuid": "VUID-VkMemoryAllocateInfo-buffer-06380",
"text": " If the parameters define an import operation from an <a href=\"#VkBufferCollectionFUCHSIA\">VkBufferCollectionFUCHSIA</a>, and <a href=\"#VkMemoryDedicatedAllocateInfo\">VkMemoryDedicatedAllocateInfo</a>::<code>buffer</code> is present and non-NULL, <a href=\"#VkImportMemoryBufferCollectionFUCHSIA\">VkImportMemoryBufferCollectionFUCHSIA</a>::<code>collection</code> and <a href=\"#VkImportMemoryBufferCollectionFUCHSIA\">VkImportMemoryBufferCollectionFUCHSIA</a>::<code>index</code> must match <a href=\"#VkBufferCollectionBufferCreateInfoFUCHSIA\">VkBufferCollectionBufferCreateInfoFUCHSIA</a>::<code>collection</code> and <a href=\"#VkBufferCollectionBufferCreateInfoFUCHSIA\">VkBufferCollectionBufferCreateInfoFUCHSIA</a>::<code>index</code>, respectively, of the <a href=\"#VkBufferCollectionBufferCreateInfoFUCHSIA\">VkBufferCollectionBufferCreateInfoFUCHSIA</a> structure used to create the <a href=\"#VkMemoryDedicatedAllocateInfo\">VkMemoryDedicatedAllocateInfo</a>::<code>buffer</code>"
},
{
"vuid": "VUID-VkMemoryAllocateInfo-image-06381",
"text": " If the parameters define an import operation from an <a href=\"#VkBufferCollectionFUCHSIA\">VkBufferCollectionFUCHSIA</a>, and <a href=\"#VkMemoryDedicatedAllocateInfo\">VkMemoryDedicatedAllocateInfo</a>::<code>image</code> is present and non-NULL, <a href=\"#VkImportMemoryBufferCollectionFUCHSIA\">VkImportMemoryBufferCollectionFUCHSIA</a>::<code>collection</code> and <a href=\"#VkImportMemoryBufferCollectionFUCHSIA\">VkImportMemoryBufferCollectionFUCHSIA</a>::<code>index</code> must match <a href=\"#VkBufferCollectionImageCreateInfoFUCHSIA\">VkBufferCollectionImageCreateInfoFUCHSIA</a>::<code>collection</code> and <a href=\"#VkBufferCollectionImageCreateInfoFUCHSIA\">VkBufferCollectionImageCreateInfoFUCHSIA</a>::<code>index</code>, respectively, of the <a href=\"#VkBufferCollectionImageCreateInfoFUCHSIA\">VkBufferCollectionImageCreateInfoFUCHSIA</a> structure used to create the <a href=\"#VkMemoryDedicatedAllocateInfo\">VkMemoryDedicatedAllocateInfo</a>::<code>image</code>"
},
{
"vuid": "VUID-VkMemoryAllocateInfo-allocationSize-06382",
"text": " If the parameters define an import operation from an <a href=\"#VkBufferCollectionFUCHSIA\">VkBufferCollectionFUCHSIA</a>, <code>allocationSize</code> <strong class=\"purple\">must</strong> match <a href=\"#VkMemoryRequirements\">VkMemoryRequirements</a>::<code>size</code> value retrieved by <a href=\"#vkGetImageMemoryRequirements\">vkGetImageMemoryRequirements</a> or <a href=\"#vkGetBufferMemoryRequirements\">vkGetBufferMemoryRequirements</a> for image-based or buffer-based collections respectively"
},
{
"vuid": "VUID-VkMemoryAllocateInfo-pNext-06383",
"text": " If the parameters define an import operation from an <a href=\"#VkBufferCollectionFUCHSIA\">VkBufferCollectionFUCHSIA</a>, the <code>pNext</code> chain <strong class=\"purple\">must</strong> include a <a href=\"#VkMemoryDedicatedAllocateInfo\">VkMemoryDedicatedAllocateInfo</a> structure with either its <code>image</code> or <code>buffer</code> field set to a value other than <a href=\"#VK_NULL_HANDLE\">VK_NULL_HANDLE</a>."
},
{
"vuid": "VUID-VkMemoryAllocateInfo-image-06384",
"text": " If the parameters define an import operation from an <a href=\"#VkBufferCollectionFUCHSIA\">VkBufferCollectionFUCHSIA</a> and <a href=\"#VkMemoryDedicatedAllocateInfo\">VkMemoryDedicatedAllocateInfo</a>::<code>image</code> is not <a href=\"#VK_NULL_HANDLE\">VK_NULL_HANDLE</a>, the <code>image</code> <strong class=\"purple\">must</strong> be created with a <a href=\"#VkBufferCollectionImageCreateInfoFUCHSIA\">VkBufferCollectionImageCreateInfoFUCHSIA</a> structure chained to its <a href=\"#VkImageCreateInfo\">VkImageCreateInfo</a>::<code>pNext</code> pointer"
},
{
"vuid": "VUID-VkMemoryAllocateInfo-buffer-06385",
"text": " If the parameters define an import operation from an <a href=\"#VkBufferCollectionFUCHSIA\">VkBufferCollectionFUCHSIA</a> and <a href=\"#VkMemoryDedicatedAllocateInfo\">VkMemoryDedicatedAllocateInfo</a>::<code>buffer</code> is not <a href=\"#VK_NULL_HANDLE\">VK_NULL_HANDLE</a>, the <code>buffer</code> <strong class=\"purple\">must</strong> be created with a <a href=\"#VkBufferCollectionBufferCreateInfoFUCHSIA\">VkBufferCollectionBufferCreateInfoFUCHSIA</a> structure chained to its <a href=\"#VkBufferCreateInfo\">VkBufferCreateInfo</a>::<code>pNext</code> pointer"
},
{
"vuid": "VUID-VkMemoryAllocateInfo-memoryTypeIndex-06386",
"text": " If the parameters define an import operation from an <a href=\"#VkBufferCollectionFUCHSIA\">VkBufferCollectionFUCHSIA</a>, <code>memoryTypeIndex</code> <strong class=\"purple\">must</strong> be from <a href=\"#VkBufferCollectionPropertiesFUCHSIA\">VkBufferCollectionPropertiesFUCHSIA</a> as retrieved by <a href=\"#vkGetBufferCollectionPropertiesFUCHSIA\">vkGetBufferCollectionPropertiesFUCHSIA</a>."
}
],
"(VK_KHR_external_memory)+(VK_KHR_dedicated_allocation,VK_NV_dedicated_allocation)": [ "(VK_KHR_external_memory)+(VK_KHR_dedicated_allocation,VK_NV_dedicated_allocation)": [
{ {
"vuid": "VUID-VkMemoryAllocateInfo-pNext-00639", "vuid": "VUID-VkMemoryAllocateInfo-pNext-00639",
@ -11692,7 +11722,7 @@
}, },
{ {
"vuid": "VUID-VkMemoryAllocateInfo-pNext-pNext", "vuid": "VUID-VkMemoryAllocateInfo-pNext-pNext",
"text": " Each <code>pNext</code> member of any structure (including this one) in the <code>pNext</code> chain <strong class=\"purple\">must</strong> be either <code>NULL</code> or a pointer to a valid instance of <a href=\"#VkDedicatedAllocationMemoryAllocateInfoNV\">VkDedicatedAllocationMemoryAllocateInfoNV</a>, <a href=\"#VkExportMemoryAllocateInfo\">VkExportMemoryAllocateInfo</a>, <a href=\"#VkExportMemoryAllocateInfoNV\">VkExportMemoryAllocateInfoNV</a>, <a href=\"#VkExportMemoryWin32HandleInfoKHR\">VkExportMemoryWin32HandleInfoKHR</a>, <a href=\"#VkExportMemoryWin32HandleInfoNV\">VkExportMemoryWin32HandleInfoNV</a>, <a href=\"#VkImportAndroidHardwareBufferInfoANDROID\">VkImportAndroidHardwareBufferInfoANDROID</a>, <a href=\"#VkImportMemoryFdInfoKHR\">VkImportMemoryFdInfoKHR</a>, <a href=\"#VkImportMemoryHostPointerInfoEXT\">VkImportMemoryHostPointerInfoEXT</a>, <a href=\"#VkImportMemoryWin32HandleInfoKHR\">VkImportMemoryWin32HandleInfoKHR</a>, <a href=\"#VkImportMemoryWin32HandleInfoNV\">VkImportMemoryWin32HandleInfoNV</a>, <a href=\"#VkImportMemoryZirconHandleInfoFUCHSIA\">VkImportMemoryZirconHandleInfoFUCHSIA</a>, <a href=\"#VkMemoryAllocateFlagsInfo\">VkMemoryAllocateFlagsInfo</a>, <a href=\"#VkMemoryDedicatedAllocateInfo\">VkMemoryDedicatedAllocateInfo</a>, <a href=\"#VkMemoryOpaqueCaptureAddressAllocateInfo\">VkMemoryOpaqueCaptureAddressAllocateInfo</a>, or <a href=\"#VkMemoryPriorityAllocateInfoEXT\">VkMemoryPriorityAllocateInfoEXT</a>" "text": " Each <code>pNext</code> member of any structure (including this one) in the <code>pNext</code> chain <strong class=\"purple\">must</strong> be either <code>NULL</code> or a pointer to a valid instance of <a href=\"#VkDedicatedAllocationMemoryAllocateInfoNV\">VkDedicatedAllocationMemoryAllocateInfoNV</a>, <a href=\"#VkExportMemoryAllocateInfo\">VkExportMemoryAllocateInfo</a>, <a href=\"#VkExportMemoryAllocateInfoNV\">VkExportMemoryAllocateInfoNV</a>, <a href=\"#VkExportMemoryWin32HandleInfoKHR\">VkExportMemoryWin32HandleInfoKHR</a>, <a href=\"#VkExportMemoryWin32HandleInfoNV\">VkExportMemoryWin32HandleInfoNV</a>, <a href=\"#VkImportAndroidHardwareBufferInfoANDROID\">VkImportAndroidHardwareBufferInfoANDROID</a>, <a href=\"#VkImportMemoryBufferCollectionFUCHSIA\">VkImportMemoryBufferCollectionFUCHSIA</a>, <a href=\"#VkImportMemoryFdInfoKHR\">VkImportMemoryFdInfoKHR</a>, <a href=\"#VkImportMemoryHostPointerInfoEXT\">VkImportMemoryHostPointerInfoEXT</a>, <a href=\"#VkImportMemoryWin32HandleInfoKHR\">VkImportMemoryWin32HandleInfoKHR</a>, <a href=\"#VkImportMemoryWin32HandleInfoNV\">VkImportMemoryWin32HandleInfoNV</a>, <a href=\"#VkImportMemoryZirconHandleInfoFUCHSIA\">VkImportMemoryZirconHandleInfoFUCHSIA</a>, <a href=\"#VkMemoryAllocateFlagsInfo\">VkMemoryAllocateFlagsInfo</a>, <a href=\"#VkMemoryDedicatedAllocateInfo\">VkMemoryDedicatedAllocateInfo</a>, <a href=\"#VkMemoryOpaqueCaptureAddressAllocateInfo\">VkMemoryOpaqueCaptureAddressAllocateInfo</a>, or <a href=\"#VkMemoryPriorityAllocateInfoEXT\">VkMemoryPriorityAllocateInfoEXT</a>"
}, },
{ {
"vuid": "VUID-VkMemoryAllocateInfo-sType-unique", "vuid": "VUID-VkMemoryAllocateInfo-sType-unique",
@ -12854,6 +12884,12 @@
"vuid": "VUID-vkCreateBuffer-pBuffer-parameter", "vuid": "VUID-vkCreateBuffer-pBuffer-parameter",
"text": " <code>pBuffer</code> <strong class=\"purple\">must</strong> be a valid pointer to a <a href=\"#VkBuffer\">VkBuffer</a> handle" "text": " <code>pBuffer</code> <strong class=\"purple\">must</strong> be a valid pointer to a <a href=\"#VkBuffer\">VkBuffer</a> handle"
} }
],
"(VK_FUCHSIA_buffer_collection)": [
{
"vuid": "VUID-vkCreateBuffer-pNext-06387",
"text": " If using the <a href=\"#VkBuffer\">VkBuffer</a> for an import operation from a <a href=\"#VkBufferCollectionFUCHSIA\">VkBufferCollectionFUCHSIA</a> where a <a href=\"#VkBufferCollectionBufferCreateInfoFUCHSIA\">VkBufferCollectionBufferCreateInfoFUCHSIA</a> has been chained to <code>pNext</code>, <code>pCreateInfo</code> <strong class=\"purple\">must</strong> match the <a href=\"#VkBufferConstraintsInfoFUCHSIA\">VkBufferConstraintsInfoFUCHSIA</a>::<code>createInfo</code> used when setting the constraints on the buffer collection with <a href=\"#vkSetBufferCollectionBufferConstraintsFUCHSIA\">vkSetBufferCollectionBufferConstraintsFUCHSIA</a>"
}
] ]
}, },
"VkBufferCreateInfo": { "VkBufferCreateInfo": {
@ -12892,7 +12928,7 @@
}, },
{ {
"vuid": "VUID-VkBufferCreateInfo-pNext-pNext", "vuid": "VUID-VkBufferCreateInfo-pNext-pNext",
"text": " Each <code>pNext</code> member of any structure (including this one) in the <code>pNext</code> chain <strong class=\"purple\">must</strong> be either <code>NULL</code> or a pointer to a valid instance of <a href=\"#VkBufferDeviceAddressCreateInfoEXT\">VkBufferDeviceAddressCreateInfoEXT</a>, <a href=\"#VkBufferOpaqueCaptureAddressCreateInfo\">VkBufferOpaqueCaptureAddressCreateInfo</a>, <a href=\"#VkDedicatedAllocationBufferCreateInfoNV\">VkDedicatedAllocationBufferCreateInfoNV</a>, <a href=\"#VkExternalMemoryBufferCreateInfo\">VkExternalMemoryBufferCreateInfo</a>, <a href=\"#VkVideoProfileKHR\">VkVideoProfileKHR</a>, or <a href=\"#VkVideoProfilesKHR\">VkVideoProfilesKHR</a>" "text": " Each <code>pNext</code> member of any structure (including this one) in the <code>pNext</code> chain <strong class=\"purple\">must</strong> be either <code>NULL</code> or a pointer to a valid instance of <a href=\"#VkBufferCollectionBufferCreateInfoFUCHSIA\">VkBufferCollectionBufferCreateInfoFUCHSIA</a>, <a href=\"#VkBufferDeviceAddressCreateInfoEXT\">VkBufferDeviceAddressCreateInfoEXT</a>, <a href=\"#VkBufferOpaqueCaptureAddressCreateInfo\">VkBufferOpaqueCaptureAddressCreateInfo</a>, <a href=\"#VkDedicatedAllocationBufferCreateInfoNV\">VkDedicatedAllocationBufferCreateInfoNV</a>, <a href=\"#VkExternalMemoryBufferCreateInfo\">VkExternalMemoryBufferCreateInfo</a>, <a href=\"#VkVideoProfileKHR\">VkVideoProfileKHR</a>, or <a href=\"#VkVideoProfilesKHR\">VkVideoProfilesKHR</a>"
}, },
{ {
"vuid": "VUID-VkBufferCreateInfo-sType-unique", "vuid": "VUID-VkBufferCreateInfo-sType-unique",
@ -13016,6 +13052,22 @@
} }
] ]
}, },
"VkBufferCollectionBufferCreateInfoFUCHSIA": {
"(VK_FUCHSIA_buffer_collection)": [
{
"vuid": "VUID-VkBufferCollectionBufferCreateInfoFUCHSIA-index-06388",
"text": " <code>index</code> <strong class=\"purple\">must</strong> be less than <a href=\"#VkBufferCollectionPropertiesFUCHSIA\">VkBufferCollectionPropertiesFUCHSIA</a>::<code>bufferCount</code>"
},
{
"vuid": "VUID-VkBufferCollectionBufferCreateInfoFUCHSIA-sType-sType",
"text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA</code>"
},
{
"vuid": "VUID-VkBufferCollectionBufferCreateInfoFUCHSIA-collection-parameter",
"text": " <code>collection</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBufferCollectionFUCHSIA\">VkBufferCollectionFUCHSIA</a> handle"
}
]
},
"vkDestroyBuffer": { "vkDestroyBuffer": {
"core": [ "core": [
{ {
@ -13206,6 +13258,12 @@
"vuid": "VUID-vkCreateImage-pImage-parameter", "vuid": "VUID-vkCreateImage-pImage-parameter",
"text": " <code>pImage</code> <strong class=\"purple\">must</strong> be a valid pointer to a <a href=\"#VkImage\">VkImage</a> handle" "text": " <code>pImage</code> <strong class=\"purple\">must</strong> be a valid pointer to a <a href=\"#VkImage\">VkImage</a> handle"
} }
],
"(VK_FUCHSIA_buffer_collection)": [
{
"vuid": "VUID-vkCreateImage-pNext-06389",
"text": " If a <a href=\"#VkBufferCollectionImageCreateInfoFUCHSIA\">VkBufferCollectionImageCreateInfoFUCHSIA</a> has been chained to <code>pNext</code>, <code>pCreateInfo</code> <strong class=\"purple\">must</strong> match the <a href=\"#sysmem-chosen-create-infos\">Sysmem chosen <code>VkImageCreateInfo</code></a> excepting members <a href=\"#VkImageCreateInfo\">VkImageCreateInfo</a>::<code>extent</code> and <a href=\"#VkImageCreateInfo\">VkImageCreateInfo</a>::<code>usage</code> in the match criteria"
}
] ]
}, },
"VkImageCreateInfo": { "VkImageCreateInfo": {
@ -13372,7 +13430,7 @@
}, },
{ {
"vuid": "VUID-VkImageCreateInfo-pNext-pNext", "vuid": "VUID-VkImageCreateInfo-pNext-pNext",
"text": " Each <code>pNext</code> member of any structure (including this one) in the <code>pNext</code> chain <strong class=\"purple\">must</strong> be either <code>NULL</code> or a pointer to a valid instance of <a href=\"#VkDedicatedAllocationImageCreateInfoNV\">VkDedicatedAllocationImageCreateInfoNV</a>, <a href=\"#VkExternalFormatANDROID\">VkExternalFormatANDROID</a>, <a href=\"#VkExternalMemoryImageCreateInfo\">VkExternalMemoryImageCreateInfo</a>, <a href=\"#VkExternalMemoryImageCreateInfoNV\">VkExternalMemoryImageCreateInfoNV</a>, <a href=\"#VkImageDrmFormatModifierExplicitCreateInfoEXT\">VkImageDrmFormatModifierExplicitCreateInfoEXT</a>, <a href=\"#VkImageDrmFormatModifierListCreateInfoEXT\">VkImageDrmFormatModifierListCreateInfoEXT</a>, <a href=\"#VkImageFormatListCreateInfo\">VkImageFormatListCreateInfo</a>, <a href=\"#VkImageStencilUsageCreateInfo\">VkImageStencilUsageCreateInfo</a>, <a href=\"#VkImageSwapchainCreateInfoKHR\">VkImageSwapchainCreateInfoKHR</a>, <a href=\"#VkVideoProfileKHR\">VkVideoProfileKHR</a>, or <a href=\"#VkVideoProfilesKHR\">VkVideoProfilesKHR</a>" "text": " Each <code>pNext</code> member of any structure (including this one) in the <code>pNext</code> chain <strong class=\"purple\">must</strong> be either <code>NULL</code> or a pointer to a valid instance of <a href=\"#VkBufferCollectionImageCreateInfoFUCHSIA\">VkBufferCollectionImageCreateInfoFUCHSIA</a>, <a href=\"#VkDedicatedAllocationImageCreateInfoNV\">VkDedicatedAllocationImageCreateInfoNV</a>, <a href=\"#VkExternalFormatANDROID\">VkExternalFormatANDROID</a>, <a href=\"#VkExternalMemoryImageCreateInfo\">VkExternalMemoryImageCreateInfo</a>, <a href=\"#VkExternalMemoryImageCreateInfoNV\">VkExternalMemoryImageCreateInfoNV</a>, <a href=\"#VkImageDrmFormatModifierExplicitCreateInfoEXT\">VkImageDrmFormatModifierExplicitCreateInfoEXT</a>, <a href=\"#VkImageDrmFormatModifierListCreateInfoEXT\">VkImageDrmFormatModifierListCreateInfoEXT</a>, <a href=\"#VkImageFormatListCreateInfo\">VkImageFormatListCreateInfo</a>, <a href=\"#VkImageStencilUsageCreateInfo\">VkImageStencilUsageCreateInfo</a>, <a href=\"#VkImageSwapchainCreateInfoKHR\">VkImageSwapchainCreateInfoKHR</a>, <a href=\"#VkVideoProfileKHR\">VkVideoProfileKHR</a>, or <a href=\"#VkVideoProfilesKHR\">VkVideoProfilesKHR</a>"
}, },
{ {
"vuid": "VUID-VkImageCreateInfo-sType-unique", "vuid": "VUID-VkImageCreateInfo-sType-unique",
@ -13720,6 +13778,28 @@
"vuid": "VUID-VkImageCreateInfo-usage-04816", "vuid": "VUID-VkImageCreateInfo-usage-04816",
"text": " If <code>usage</code> includes <code>VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR</code>, <code>VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR</code>, <code>VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR</code>, then the <code>pNext</code> chain <strong class=\"purple\">must</strong> include a valid <a href=\"#VkVideoProfilesKHR\">VkVideoProfilesKHR</a> structure which includes at least one <a href=\"#VkVideoProfileKHR\">VkVideoProfileKHR</a> with a encode codec-operation" "text": " If <code>usage</code> includes <code>VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR</code>, <code>VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR</code>, <code>VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR</code>, then the <code>pNext</code> chain <strong class=\"purple\">must</strong> include a valid <a href=\"#VkVideoProfilesKHR\">VkVideoProfilesKHR</a> structure which includes at least one <a href=\"#VkVideoProfileKHR\">VkVideoProfileKHR</a> with a encode codec-operation"
} }
],
"(VK_FUCHSIA_buffer_collection)": [
{
"vuid": "VUID-VkImageCreateInfo-pNext-06390",
"text": " If the <a href=\"#VkImage\">VkImage</a> is to be used to import memory from a <a href=\"#VkBufferCollectionFUCHSIA\">VkBufferCollectionFUCHSIA</a>, a <a href=\"#VkBufferCollectionImageCreateInfoFUCHSIA\">VkBufferCollectionImageCreateInfoFUCHSIA</a> structure <strong class=\"purple\">must</strong> be chained to <code>pNext</code>."
}
]
},
"VkBufferCollectionImageCreateInfoFUCHSIA": {
"(VK_FUCHSIA_buffer_collection)": [
{
"vuid": "VUID-VkBufferCollectionImageCreateInfoFUCHSIA-index-06391",
"text": " <code>index</code> <strong class=\"purple\">must</strong> be less than <a href=\"#VkBufferCollectionPropertiesFUCHSIA\">VkBufferCollectionPropertiesFUCHSIA</a>::<code>bufferCount</code>"
},
{
"vuid": "VUID-VkBufferCollectionImageCreateInfoFUCHSIA-sType-sType",
"text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA</code>"
},
{
"vuid": "VUID-VkBufferCollectionImageCreateInfoFUCHSIA-collection-parameter",
"text": " <code>collection</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBufferCollectionFUCHSIA\">VkBufferCollectionFUCHSIA</a> handle"
}
] ]
}, },
"VkImageStencilUsageCreateInfo": { "VkImageStencilUsageCreateInfo": {
@ -15570,6 +15650,12 @@
"vuid": "VUID-vkBindBufferMemory-bufferDeviceAddress-03339", "vuid": "VUID-vkBindBufferMemory-bufferDeviceAddress-03339",
"text": " If the <a href=\"#VkPhysicalDeviceBufferDeviceAddressFeatures\">VkPhysicalDeviceBufferDeviceAddressFeatures</a>::<code>bufferDeviceAddress</code> feature is enabled and <code>buffer</code> was created with the <code>VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT</code> bit set, <code>memory</code> <strong class=\"purple\">must</strong> have been allocated with the <code>VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT</code> bit set" "text": " If the <a href=\"#VkPhysicalDeviceBufferDeviceAddressFeatures\">VkPhysicalDeviceBufferDeviceAddressFeatures</a>::<code>bufferDeviceAddress</code> feature is enabled and <code>buffer</code> was created with the <code>VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT</code> bit set, <code>memory</code> <strong class=\"purple\">must</strong> have been allocated with the <code>VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT</code> bit set"
} }
],
"(VK_FUCHSIA_buffer_collection)": [
{
"vuid": "VUID-vkBindBufferMemory-buffer-06408",
"text": " If <code>buffer</code> was created with <a href=\"#VkBufferCollectionBufferCreateInfoFUCHSIA\">VkBufferCollectionBufferCreateInfoFUCHSIA</a> chained to <a href=\"#VkBufferCreateInfo\">VkBufferCreateInfo</a>::<code>pNext</code>, <code>memory</code> <strong class=\"purple\">must</strong> be allocated with a <a href=\"#VkImportMemoryBufferCollectionFUCHSIA\">VkImportMemoryBufferCollectionFUCHSIA</a> chained to <a href=\"#VkMemoryAllocateInfo\">VkMemoryAllocateInfo</a>::<code>pNext</code>"
}
] ]
}, },
"vkBindBufferMemory2": { "vkBindBufferMemory2": {
@ -15699,6 +15785,12 @@
"text": " If the <a href=\"#VkPhysicalDeviceBufferDeviceAddressFeatures\">VkPhysicalDeviceBufferDeviceAddressFeatures</a>::<code>bufferDeviceAddress</code> feature is enabled and <code>buffer</code> was created with the <code>VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT</code> bit set, <code>memory</code> <strong class=\"purple\">must</strong> have been allocated with the <code>VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT</code> bit set" "text": " If the <a href=\"#VkPhysicalDeviceBufferDeviceAddressFeatures\">VkPhysicalDeviceBufferDeviceAddressFeatures</a>::<code>bufferDeviceAddress</code> feature is enabled and <code>buffer</code> was created with the <code>VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT</code> bit set, <code>memory</code> <strong class=\"purple\">must</strong> have been allocated with the <code>VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT</code> bit set"
} }
], ],
"(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_FUCHSIA_buffer_collection)": [
{
"vuid": "VUID-VkBindBufferMemoryInfo-buffer-06408",
"text": " If <code>buffer</code> was created with <a href=\"#VkBufferCollectionBufferCreateInfoFUCHSIA\">VkBufferCollectionBufferCreateInfoFUCHSIA</a> chained to <a href=\"#VkBufferCreateInfo\">VkBufferCreateInfo</a>::<code>pNext</code>, <code>memory</code> <strong class=\"purple\">must</strong> be allocated with a <a href=\"#VkImportMemoryBufferCollectionFUCHSIA\">VkImportMemoryBufferCollectionFUCHSIA</a> chained to <a href=\"#VkMemoryAllocateInfo\">VkMemoryAllocateInfo</a>::<code>pNext</code>"
}
],
"(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)": [ "(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)": [
{ {
"vuid": "VUID-VkBindBufferMemoryInfo-pNext-01605", "vuid": "VUID-VkBindBufferMemoryInfo-pNext-01605",
@ -15844,6 +15936,12 @@
"vuid": "VUID-vkBindImageMemory-image-01608", "vuid": "VUID-vkBindImageMemory-image-01608",
"text": " <code>image</code> <strong class=\"purple\">must</strong> not have been created with the <code>VK_IMAGE_CREATE_DISJOINT_BIT</code> set" "text": " <code>image</code> <strong class=\"purple\">must</strong> not have been created with the <code>VK_IMAGE_CREATE_DISJOINT_BIT</code> set"
} }
],
"(VK_FUCHSIA_buffer_collection)": [
{
"vuid": "VUID-vkBindImageMemory-image-06392",
"text": " If <code>image</code> was created with <a href=\"#VkBufferCollectionImageCreateInfoFUCHSIA\">VkBufferCollectionImageCreateInfoFUCHSIA</a> chained to <a href=\"#VkImageCreateInfo\">VkImageCreateInfo</a>::<code>pNext</code>, <code>memory</code> <strong class=\"purple\">must</strong> be allocated with a <a href=\"#VkImportMemoryBufferCollectionFUCHSIA\">VkImportMemoryBufferCollectionFUCHSIA</a> chained to <a href=\"#VkMemoryAllocateInfo\">VkMemoryAllocateInfo</a>::<code>pNext</code>"
}
] ]
}, },
"vkBindImageMemory2": { "vkBindImageMemory2": {
@ -16146,6 +16244,344 @@
} }
] ]
}, },
"vkCreateBufferCollectionFUCHSIA": {
"(VK_FUCHSIA_buffer_collection)": [
{
"vuid": "VUID-vkCreateBufferCollectionFUCHSIA-device-parameter",
"text": " <code>device</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkDevice\">VkDevice</a> handle"
},
{
"vuid": "VUID-vkCreateBufferCollectionFUCHSIA-pCreateInfo-parameter",
"text": " <code>pCreateInfo</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <a href=\"#VkBufferCollectionCreateInfoFUCHSIA\">VkBufferCollectionCreateInfoFUCHSIA</a> structure"
},
{
"vuid": "VUID-vkCreateBufferCollectionFUCHSIA-pAllocator-parameter",
"text": " If <code>pAllocator</code> is not <code>NULL</code>, <code>pAllocator</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <a href=\"#VkAllocationCallbacks\">VkAllocationCallbacks</a> structure"
},
{
"vuid": "VUID-vkCreateBufferCollectionFUCHSIA-pCollection-parameter",
"text": " <code>pCollection</code> <strong class=\"purple\">must</strong> be a valid pointer to a <a href=\"#VkBufferCollectionFUCHSIA\">VkBufferCollectionFUCHSIA</a> handle"
}
]
},
"VkBufferCollectionCreateInfoFUCHSIA": {
"(VK_FUCHSIA_buffer_collection)": [
{
"vuid": "VUID-VkBufferCollectionCreateInfoFUCHSIA-collectionToken-06393",
"text": " <code>collectionToken</code> <strong class=\"purple\">must</strong> be a valid <code>zx_handle_t</code> to a Zircon channel allocated from Sysmem (<code>fuchsia.sysmem.Allocator</code>/AllocateSharedCollection) with <code>ZX_DEFAULT_CHANNEL_RIGHTS</code> rights"
},
{
"vuid": "VUID-VkBufferCollectionCreateInfoFUCHSIA-sType-sType",
"text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CREATE_INFO_FUCHSIA</code>"
},
{
"vuid": "VUID-VkBufferCollectionCreateInfoFUCHSIA-pNext-pNext",
"text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>"
}
]
},
"vkSetBufferCollectionImageConstraintsFUCHSIA": {
"(VK_FUCHSIA_buffer_collection)": [
{
"vuid": "VUID-vkSetBufferCollectionImageConstraintsFUCHSIA-collection-06394",
"text": " <code>vkSetBufferCollectionImageConstraintsFUCHSIA</code> or <code>vkSetBufferCollectionBufferConstraintsFUCHSIA</code> <strong class=\"purple\">must</strong> not have already been called on <code>collection</code>"
},
{
"vuid": "VUID-vkSetBufferCollectionImageConstraintsFUCHSIA-device-parameter",
"text": " <code>device</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkDevice\">VkDevice</a> handle"
},
{
"vuid": "VUID-vkSetBufferCollectionImageConstraintsFUCHSIA-collection-parameter",
"text": " <code>collection</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBufferCollectionFUCHSIA\">VkBufferCollectionFUCHSIA</a> handle"
},
{
"vuid": "VUID-vkSetBufferCollectionImageConstraintsFUCHSIA-pImageConstraintsInfo-parameter",
"text": " <code>pImageConstraintsInfo</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <a href=\"#VkImageConstraintsInfoFUCHSIA\">VkImageConstraintsInfoFUCHSIA</a> structure"
},
{
"vuid": "VUID-vkSetBufferCollectionImageConstraintsFUCHSIA-collection-parent",
"text": " <code>collection</code> <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from <code>device</code>"
}
]
},
"VkImageConstraintsInfoFUCHSIA": {
"(VK_FUCHSIA_buffer_collection)": [
{
"vuid": "VUID-VkImageConstraintsInfoFUCHSIA-pFormatConstraints-06395",
"text": " All elements of <code>pFormatConstraints</code> <strong class=\"purple\">must</strong> have at least one bit set in its <a href=\"#VkImageFormatConstraintsInfoFUCHSIA\">VkImageFormatConstraintsInfoFUCHSIA</a>::<code>requiredFormatFeatures</code>"
},
{
"vuid": "VUID-VkImageConstraintsInfoFUCHSIA-pFormatConstraints-06396",
"text": " If <code>pFormatConstraints</code>::<code>imageCreateInfo</code>::<code>usage</code> contains <code>VK_IMAGE_USAGE_SAMPLED_BIT</code>, then <code>pFormatConstraints</code>::<code>requiredFormatFeatures</code> <strong class=\"purple\">must</strong> contain <code>VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT</code>"
},
{
"vuid": "VUID-VkImageConstraintsInfoFUCHSIA-pFormatConstraints-06397",
"text": " If <code>pFormatConstraints</code>::<code>imageCreateInfo</code>::<code>usage</code> contains <code>VK_IMAGE_USAGE_STORAGE_BIT</code>, then <code>pFormatConstraints</code>::<code>requiredFormatFeatures</code> <strong class=\"purple\">must</strong> contain <code>VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT</code>"
},
{
"vuid": "VUID-VkImageConstraintsInfoFUCHSIA-pFormatConstraints-06398",
"text": " If <code>pFormatConstraints</code>::<code>imageCreateInfo</code>::<code>usage</code> contains <code>VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT</code>, then <code>pFormatConstraints</code>::<code>requiredFormatFeatures</code> <strong class=\"purple\">must</strong> contain <code>VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT</code>"
},
{
"vuid": "VUID-VkImageConstraintsInfoFUCHSIA-pFormatConstraints-06399",
"text": " If <code>pFormatConstraints</code>::<code>imageCreateInfo</code>::<code>usage</code> contains <code>VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT</code>, then <code>pFormatConstraints</code>::<code>requiredFormatFeatures</code> <strong class=\"purple\">must</strong> contain <code>VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT</code>"
},
{
"vuid": "VUID-VkImageConstraintsInfoFUCHSIA-pFormatConstraints-06400",
"text": " If <code>pFormatConstraints</code>::<code>imageCreateInfo</code>::<code>usage</code> contains <code>VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT</code>, then <code>pFormatConstraints</code>::<code>requiredFormatFeatures</code> <strong class=\"purple\">must</strong> contain at least one of <code>VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT</code> or <code>VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT</code>"
},
{
"vuid": "VUID-VkImageConstraintsInfoFUCHSIA-sType-sType",
"text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_IMAGE_CONSTRAINTS_INFO_FUCHSIA</code>"
},
{
"vuid": "VUID-VkImageConstraintsInfoFUCHSIA-pNext-pNext",
"text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>"
},
{
"vuid": "VUID-VkImageConstraintsInfoFUCHSIA-pFormatConstraints-parameter",
"text": " <code>pFormatConstraints</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>formatConstraintsCount</code> valid <a href=\"#VkImageFormatConstraintsInfoFUCHSIA\">VkImageFormatConstraintsInfoFUCHSIA</a> structures"
},
{
"vuid": "VUID-VkImageConstraintsInfoFUCHSIA-bufferCollectionConstraints-parameter",
"text": " <code>bufferCollectionConstraints</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBufferCollectionConstraintsInfoFUCHSIA\">VkBufferCollectionConstraintsInfoFUCHSIA</a> structure"
},
{
"vuid": "VUID-VkImageConstraintsInfoFUCHSIA-flags-parameter",
"text": " <code>flags</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkImageConstraintsInfoFlagBitsFUCHSIA\">VkImageConstraintsInfoFlagBitsFUCHSIA</a> values"
},
{
"vuid": "VUID-VkImageConstraintsInfoFUCHSIA-formatConstraintsCount-arraylength",
"text": " <code>formatConstraintsCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>"
}
],
"(VK_FUCHSIA_buffer_collection)+(VK_KHR_fragment_shading_rate)": [
{
"vuid": "VUID-VkImageConstraintsInfoFUCHSIA-attachmentFragmentShadingRate-06401",
"text": " If the <a href=\"#features-attachmentFragmentShadingRate\"><code>attachmentFragmentShadingRate</code> feature</a> is enabled, and <code>pFormatConstraints</code>::<code>imageCreateInfo</code>::<code>usage</code> contains <code>VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR</code>, then <code>pFormatConstraints</code>::<code>requiredFormatFeatures</code> <strong class=\"purple\">must</strong> contain <code>VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR</code>"
}
]
},
"VkImageFormatConstraintsInfoFUCHSIA": {
"(VK_FUCHSIA_buffer_collection)": [
{
"vuid": "VUID-VkImageFormatConstraintsInfoFUCHSIA-sType-sType",
"text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA</code>"
},
{
"vuid": "VUID-VkImageFormatConstraintsInfoFUCHSIA-pNext-pNext",
"text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>"
},
{
"vuid": "VUID-VkImageFormatConstraintsInfoFUCHSIA-imageCreateInfo-parameter",
"text": " <code>imageCreateInfo</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkImageCreateInfo\">VkImageCreateInfo</a> structure"
},
{
"vuid": "VUID-VkImageFormatConstraintsInfoFUCHSIA-requiredFormatFeatures-parameter",
"text": " <code>requiredFormatFeatures</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkFormatFeatureFlagBits\">VkFormatFeatureFlagBits</a> values"
},
{
"vuid": "VUID-VkImageFormatConstraintsInfoFUCHSIA-requiredFormatFeatures-requiredbitmask",
"text": " <code>requiredFormatFeatures</code> <strong class=\"purple\">must</strong> not be <code>0</code>"
},
{
"vuid": "VUID-VkImageFormatConstraintsInfoFUCHSIA-flags-zerobitmask",
"text": " <code>flags</code> <strong class=\"purple\">must</strong> be <code>0</code>"
},
{
"vuid": "VUID-VkImageFormatConstraintsInfoFUCHSIA-pColorSpaces-parameter",
"text": " <code>pColorSpaces</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <a href=\"#VkSysmemColorSpaceFUCHSIA\">VkSysmemColorSpaceFUCHSIA</a> structure"
}
]
},
"VkBufferCollectionConstraintsInfoFUCHSIA": {
"(VK_FUCHSIA_buffer_collection)": [
{
"vuid": "VUID-VkBufferCollectionConstraintsInfoFUCHSIA-sType-sType",
"text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA</code>"
},
{
"vuid": "VUID-VkBufferCollectionConstraintsInfoFUCHSIA-pNext-pNext",
"text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>"
}
]
},
"VkSysmemColorSpaceFUCHSIA": {
"(VK_FUCHSIA_buffer_collection)": [
{
"vuid": "VUID-VkSysmemColorSpaceFUCHSIA-colorSpace-06402",
"text": " <code>colorSpace</code> <strong class=\"purple\">must</strong> be a <code>ColorSpaceType</code> as defined in <code>fuchsia.sysmem/image_formats.fidl</code>"
},
{
"vuid": "VUID-VkSysmemColorSpaceFUCHSIA-sType-sType",
"text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_SYSMEM_COLOR_SPACE_FUCHSIA</code>"
},
{
"vuid": "VUID-VkSysmemColorSpaceFUCHSIA-pNext-pNext",
"text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>"
}
]
},
"vkSetBufferCollectionBufferConstraintsFUCHSIA": {
"(VK_FUCHSIA_buffer_collection)": [
{
"vuid": "VUID-vkSetBufferCollectionBufferConstraintsFUCHSIA-collection-06403",
"text": " <code>vkSetBufferCollectionImageConstraintsFUCHSIA</code> or <code>vkSetBufferCollectionBufferConstraintsFUCHSIA</code> <strong class=\"purple\">must</strong> not have already been called on <code>collection</code>"
},
{
"vuid": "VUID-vkSetBufferCollectionBufferConstraintsFUCHSIA-device-parameter",
"text": " <code>device</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkDevice\">VkDevice</a> handle"
},
{
"vuid": "VUID-vkSetBufferCollectionBufferConstraintsFUCHSIA-collection-parameter",
"text": " <code>collection</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBufferCollectionFUCHSIA\">VkBufferCollectionFUCHSIA</a> handle"
},
{
"vuid": "VUID-vkSetBufferCollectionBufferConstraintsFUCHSIA-pBufferConstraintsInfo-parameter",
"text": " <code>pBufferConstraintsInfo</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <a href=\"#VkBufferConstraintsInfoFUCHSIA\">VkBufferConstraintsInfoFUCHSIA</a> structure"
},
{
"vuid": "VUID-vkSetBufferCollectionBufferConstraintsFUCHSIA-collection-parent",
"text": " <code>collection</code> <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from <code>device</code>"
}
]
},
"VkBufferConstraintsInfoFUCHSIA": {
"(VK_FUCHSIA_buffer_collection)": [
{
"vuid": "VUID-VkBufferConstraintsInfoFUCHSIA-requiredFormatFeatures-06404",
"text": " The <code>requiredFormatFeatures</code> bitmask of <code>VkFormatFeatureFlagBits</code> <strong class=\"purple\">must</strong> be chosen from among the buffer compatible format features listed in <a href=\"#buffer-compatible-format-features\">buffer compatible format features</a>"
},
{
"vuid": "VUID-VkBufferConstraintsInfoFUCHSIA-sType-sType",
"text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_BUFFER_CONSTRAINTS_INFO_FUCHSIA</code>"
},
{
"vuid": "VUID-VkBufferConstraintsInfoFUCHSIA-pNext-pNext",
"text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>"
},
{
"vuid": "VUID-VkBufferConstraintsInfoFUCHSIA-createInfo-parameter",
"text": " <code>createInfo</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBufferCreateInfo\">VkBufferCreateInfo</a> structure"
},
{
"vuid": "VUID-VkBufferConstraintsInfoFUCHSIA-requiredFormatFeatures-parameter",
"text": " <code>requiredFormatFeatures</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkFormatFeatureFlagBits\">VkFormatFeatureFlagBits</a> values"
},
{
"vuid": "VUID-VkBufferConstraintsInfoFUCHSIA-bufferCollectionConstraints-parameter",
"text": " <code>bufferCollectionConstraints</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBufferCollectionConstraintsInfoFUCHSIA\">VkBufferCollectionConstraintsInfoFUCHSIA</a> structure"
}
]
},
"vkGetBufferCollectionPropertiesFUCHSIA": {
"(VK_FUCHSIA_buffer_collection)": [
{
"vuid": "VUID-vkGetBufferCollectionPropertiesFUCHSIA-None-06405",
"text": " Prior to calling <a href=\"#vkGetBufferCollectionPropertiesFUCHSIA\">vkGetBufferCollectionPropertiesFUCHSIA</a>, the constraints on the buffer collection <strong class=\"purple\">must</strong> have been set by either <a href=\"#vkSetBufferCollectionImageConstraintsFUCHSIA\">vkSetBufferCollectionImageConstraintsFUCHSIA</a> or <a href=\"#vkSetBufferCollectionBufferConstraintsFUCHSIA\">vkSetBufferCollectionBufferConstraintsFUCHSIA</a>."
},
{
"vuid": "VUID-vkGetBufferCollectionPropertiesFUCHSIA-device-parameter",
"text": " <code>device</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkDevice\">VkDevice</a> handle"
},
{
"vuid": "VUID-vkGetBufferCollectionPropertiesFUCHSIA-collection-parameter",
"text": " <code>collection</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBufferCollectionFUCHSIA\">VkBufferCollectionFUCHSIA</a> handle"
},
{
"vuid": "VUID-vkGetBufferCollectionPropertiesFUCHSIA-pProperties-parameter",
"text": " <code>pProperties</code> <strong class=\"purple\">must</strong> be a valid pointer to a <a href=\"#VkBufferCollectionPropertiesFUCHSIA\">VkBufferCollectionPropertiesFUCHSIA</a> structure"
},
{
"vuid": "VUID-vkGetBufferCollectionPropertiesFUCHSIA-collection-parent",
"text": " <code>collection</code> <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from <code>device</code>"
}
]
},
"VkBufferCollectionPropertiesFUCHSIA": {
"(VK_FUCHSIA_buffer_collection)": [
{
"vuid": "VUID-VkBufferCollectionPropertiesFUCHSIA-sType-sType",
"text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_BUFFER_COLLECTION_PROPERTIES_FUCHSIA</code>"
},
{
"vuid": "VUID-VkBufferCollectionPropertiesFUCHSIA-pNext-pNext",
"text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>"
},
{
"vuid": "VUID-VkBufferCollectionPropertiesFUCHSIA-formatFeatures-parameter",
"text": " <code>formatFeatures</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkFormatFeatureFlagBits\">VkFormatFeatureFlagBits</a> values"
},
{
"vuid": "VUID-VkBufferCollectionPropertiesFUCHSIA-formatFeatures-requiredbitmask",
"text": " <code>formatFeatures</code> <strong class=\"purple\">must</strong> not be <code>0</code>"
},
{
"vuid": "VUID-VkBufferCollectionPropertiesFUCHSIA-sysmemColorSpaceIndex-parameter",
"text": " <code>sysmemColorSpaceIndex</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkSysmemColorSpaceFUCHSIA\">VkSysmemColorSpaceFUCHSIA</a> structure"
},
{
"vuid": "VUID-VkBufferCollectionPropertiesFUCHSIA-samplerYcbcrConversionComponents-parameter",
"text": " <code>samplerYcbcrConversionComponents</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkComponentMapping\">VkComponentMapping</a> structure"
},
{
"vuid": "VUID-VkBufferCollectionPropertiesFUCHSIA-suggestedYcbcrModel-parameter",
"text": " <code>suggestedYcbcrModel</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkSamplerYcbcrModelConversion\">VkSamplerYcbcrModelConversion</a> value"
},
{
"vuid": "VUID-VkBufferCollectionPropertiesFUCHSIA-suggestedYcbcrRange-parameter",
"text": " <code>suggestedYcbcrRange</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkSamplerYcbcrRange\">VkSamplerYcbcrRange</a> value"
},
{
"vuid": "VUID-VkBufferCollectionPropertiesFUCHSIA-suggestedXChromaOffset-parameter",
"text": " <code>suggestedXChromaOffset</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkChromaLocation\">VkChromaLocation</a> value"
},
{
"vuid": "VUID-VkBufferCollectionPropertiesFUCHSIA-suggestedYChromaOffset-parameter",
"text": " <code>suggestedYChromaOffset</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkChromaLocation\">VkChromaLocation</a> value"
}
]
},
"VkImportMemoryBufferCollectionFUCHSIA": {
"(VK_FUCHSIA_buffer_collection)": [
{
"vuid": "VUID-VkImportMemoryBufferCollectionFUCHSIA-index-06406",
"text": " <code>index</code> <strong class=\"purple\">must</strong> be less than the value retrieved as <a href=\"#VkBufferCollectionPropertiesFUCHSIA\">VkBufferCollectionPropertiesFUCHSIA</a>:bufferCount"
},
{
"vuid": "VUID-VkImportMemoryBufferCollectionFUCHSIA-sType-sType",
"text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA</code>"
},
{
"vuid": "VUID-VkImportMemoryBufferCollectionFUCHSIA-collection-parameter",
"text": " <code>collection</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBufferCollectionFUCHSIA\">VkBufferCollectionFUCHSIA</a> handle"
}
]
},
"vkDestroyBufferCollectionFUCHSIA": {
"(VK_FUCHSIA_buffer_collection)": [
{
"vuid": "VUID-vkDestroyBufferCollectionFUCHSIA-collection-06407",
"text": " <a href=\"#VkImage\">VkImage</a> and <a href=\"#VkBuffer\">VkBuffer</a> objects that referenced <code>collection</code> upon creation by inclusion of a <a href=\"#VkBufferCollectionImageCreateInfoFUCHSIA\">VkBufferCollectionImageCreateInfoFUCHSIA</a> or <a href=\"#VkBufferCollectionBufferCreateInfoFUCHSIA\">VkBufferCollectionBufferCreateInfoFUCHSIA</a> chained to their <a href=\"#VkImageCreateInfo\">VkImageCreateInfo</a> or <a href=\"#VkBufferCreateInfo\">VkBufferCreateInfo</a> structures respectively, <strong class=\"purple\">may</strong> outlive <code>collection</code>."
},
{
"vuid": "VUID-vkDestroyBufferCollectionFUCHSIA-device-parameter",
"text": " <code>device</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkDevice\">VkDevice</a> handle"
},
{
"vuid": "VUID-vkDestroyBufferCollectionFUCHSIA-collection-parameter",
"text": " <code>collection</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBufferCollectionFUCHSIA\">VkBufferCollectionFUCHSIA</a> handle"
},
{
"vuid": "VUID-vkDestroyBufferCollectionFUCHSIA-pAllocator-parameter",
"text": " If <code>pAllocator</code> is not <code>NULL</code>, <code>pAllocator</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <a href=\"#VkAllocationCallbacks\">VkAllocationCallbacks</a> structure"
},
{
"vuid": "VUID-vkDestroyBufferCollectionFUCHSIA-collection-parent",
"text": " <code>collection</code> <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from <code>device</code>"
}
]
},
"vkCreateSampler": { "vkCreateSampler": {
"core": [ "core": [
{ {
@ -31174,26 +31610,6 @@
} }
] ]
}, },
"vkCmdSetDepthBias": {
"core": [
{
"vuid": "VUID-vkCmdSetDepthBias-depthBiasClamp-00790",
"text": " If the <a href=\"#features-depthBiasClamp\">depth bias clamping</a> feature is not enabled, <code>depthBiasClamp</code> <strong class=\"purple\">must</strong> be <code>0.0</code>"
},
{
"vuid": "VUID-vkCmdSetDepthBias-commandBuffer-parameter",
"text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
},
{
"vuid": "VUID-vkCmdSetDepthBias-commandBuffer-recording",
"text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be in the <a href=\"#commandbuffers-lifecycle\">recording state</a>"
},
{
"vuid": "VUID-vkCmdSetDepthBias-commandBuffer-cmdpool",
"text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support graphics operations"
}
]
},
"vkCmdSetDepthBiasEnableEXT": { "vkCmdSetDepthBiasEnableEXT": {
"(VK_EXT_extended_dynamic_state2)": [ "(VK_EXT_extended_dynamic_state2)": [
{ {
@ -31214,6 +31630,26 @@
} }
] ]
}, },
"vkCmdSetDepthBias": {
"core": [
{
"vuid": "VUID-vkCmdSetDepthBias-depthBiasClamp-00790",
"text": " If the <a href=\"#features-depthBiasClamp\">depth bias clamping</a> feature is not enabled, <code>depthBiasClamp</code> <strong class=\"purple\">must</strong> be <code>0.0</code>"
},
{
"vuid": "VUID-vkCmdSetDepthBias-commandBuffer-parameter",
"text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
},
{
"vuid": "VUID-vkCmdSetDepthBias-commandBuffer-recording",
"text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be in the <a href=\"#commandbuffers-lifecycle\">recording state</a>"
},
{
"vuid": "VUID-vkCmdSetDepthBias-commandBuffer-cmdpool",
"text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support graphics operations"
}
]
},
"VkPipelineRasterizationConservativeStateCreateInfoEXT": { "VkPipelineRasterizationConservativeStateCreateInfoEXT": {
"(VK_EXT_conservative_rasterization)": [ "(VK_EXT_conservative_rasterization)": [
{ {

View file

@ -155,7 +155,7 @@ branch of the member gitlab server.
<type category="define" requires="VK_MAKE_API_VERSION">// Vulkan 1.2 version number <type category="define" requires="VK_MAKE_API_VERSION">// Vulkan 1.2 version number
#define <name>VK_API_VERSION_1_2</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 2, 0)// Patch version should always be set to 0</type> #define <name>VK_API_VERSION_1_2</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 2, 0)// Patch version should always be set to 0</type>
<type category="define">// Version of this file <type category="define">// Version of this file
#define <name>VK_HEADER_VERSION</name> 193</type> #define <name>VK_HEADER_VERSION</name> 194</type>
<type category="define" requires="VK_HEADER_VERSION">// Complete version of this file <type category="define" requires="VK_HEADER_VERSION">// Complete version of this file
#define <name>VK_HEADER_VERSION_COMPLETE</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 2, VK_HEADER_VERSION)</type> #define <name>VK_HEADER_VERSION_COMPLETE</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 2, VK_HEADER_VERSION)</type>
@ -382,6 +382,8 @@ typedef void <name>CAMetalLayer</name>;
<type requires="VkSwapchainImageUsageFlagBitsANDROID" category="bitmask">typedef <type>VkFlags</type> <name>VkSwapchainImageUsageFlagsANDROID</name>;</type> <type requires="VkSwapchainImageUsageFlagBitsANDROID" category="bitmask">typedef <type>VkFlags</type> <name>VkSwapchainImageUsageFlagsANDROID</name>;</type>
<type requires="VkToolPurposeFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkToolPurposeFlagsEXT</name>;</type> <type requires="VkToolPurposeFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkToolPurposeFlagsEXT</name>;</type>
<type requires="VkSubmitFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkSubmitFlagsKHR</name>;</type> <type requires="VkSubmitFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkSubmitFlagsKHR</name>;</type>
<type requires="VkImageFormatConstraintsFlagBitsFUCHSIA" category="bitmask">typedef <type>VkFlags</type> <name>VkImageFormatConstraintsFlagsFUCHSIA</name>;</type>
<type requires="VkImageConstraintsInfoFlagBitsFUCHSIA" category="bitmask">typedef <type>VkFlags</type> <name>VkImageConstraintsInfoFlagsFUCHSIA</name>;</type>
<comment>Video Core extension</comment> <comment>Video Core extension</comment>
<type requires="VkVideoCodecOperationFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoCodecOperationFlagsKHR</name>;</type> <type requires="VkVideoCodecOperationFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoCodecOperationFlagsKHR</name>;</type>
@ -450,6 +452,7 @@ typedef void <name>CAMetalLayer</name>;
<type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkAccelerationStructureKHR</name>)</type> <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkAccelerationStructureKHR</name>)</type>
<type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkAccelerationStructureNV</name>)</type> <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkAccelerationStructureNV</name>)</type>
<type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkPerformanceConfigurationINTEL</name>)</type> <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkPerformanceConfigurationINTEL</name>)</type>
<type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkBufferCollectionFUCHSIA</name>)</type>
<type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkDeferredOperationKHR</name>)</type> <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkDeferredOperationKHR</name>)</type>
<type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkPrivateDataSlotEXT</name>)</type> <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkPrivateDataSlotEXT</name>)</type>
<type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_CU_MODULE_NVX"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkCuModuleNVX</name>)</type> <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_CU_MODULE_NVX"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkCuModuleNVX</name>)</type>
@ -622,6 +625,8 @@ typedef void <name>CAMetalLayer</name>;
<type name="VkAccessFlagBits2KHR" category="enum"/> <type name="VkAccessFlagBits2KHR" category="enum"/>
<type name="VkPipelineStageFlagBits2KHR" category="enum"/> <type name="VkPipelineStageFlagBits2KHR" category="enum"/>
<type name="VkProvokingVertexModeEXT" category="enum"/> <type name="VkProvokingVertexModeEXT" category="enum"/>
<type name="VkImageFormatConstraintsFlagBitsFUCHSIA" category="enum"/>
<type name="VkImageConstraintsInfoFlagBitsFUCHSIA" category="enum"/>
<comment>WSI extensions</comment> <comment>WSI extensions</comment>
<type name="VkColorSpaceKHR" category="enum"/> <type name="VkColorSpaceKHR" category="enum"/>
@ -5967,7 +5972,7 @@ typedef void <name>CAMetalLayer</name>;
<member values="VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member>
<member><type>size_t</type> <name>dataSize</name></member> <member><type>size_t</type> <name>dataSize</name></member>
<member>const <type>void</type>* <name>pData</name></member> <member len="dataSize">const <type>void</type>* <name>pData</name></member>
</type> </type>
<type category="struct" name="VkCuFunctionCreateInfoNVX"> <type category="struct" name="VkCuFunctionCreateInfoNVX">
<member values="VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX"><type>VkStructureType</type> <name>sType</name></member>
@ -6113,6 +6118,83 @@ typedef void <name>CAMetalLayer</name>;
<member><type>VkDeviceMemory</type> <name>memory</name></member> <member><type>VkDeviceMemory</type> <name>memory</name></member>
<member><type>VkExternalMemoryHandleTypeFlagBits</type> <name>handleType</name></member> <member><type>VkExternalMemoryHandleTypeFlagBits</type> <name>handleType</name></member>
</type> </type>
<type category="struct" name="VkImportMemoryBufferCollectionFUCHSIA" structextends="VkMemoryAllocateInfo">
<member values="VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member>
<member><type>VkBufferCollectionFUCHSIA</type> <name>collection</name></member>
<member><type>uint32_t</type> <name>index</name></member>
</type>
<type category="struct" name="VkBufferCollectionImageCreateInfoFUCHSIA" structextends="VkImageCreateInfo">
<member values="VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member>
<member><type>VkBufferCollectionFUCHSIA</type> <name>collection</name></member>
<member><type>uint32_t</type> <name>index</name></member>
</type>
<type category="struct" name="VkBufferCollectionBufferCreateInfoFUCHSIA" structextends="VkBufferCreateInfo">
<member values="VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member>
<member><type>VkBufferCollectionFUCHSIA</type> <name>collection</name></member>
<member><type>uint32_t</type> <name>index</name></member>
</type>
<type category="struct" name="VkBufferCollectionCreateInfoFUCHSIA">
<member values="VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CREATE_INFO_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member>
<member><type>zx_handle_t</type> <name>collectionToken</name></member>
</type>
<type category="struct" name="VkBufferCollectionPropertiesFUCHSIA">
<member values="VK_STRUCTURE_TYPE_BUFFER_COLLECTION_PROPERTIES_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true"><type>void</type>* <name>pNext</name></member>
<member><type>uint32_t</type> <name>memoryTypeBits</name></member>
<member><type>uint32_t</type> <name>bufferCount</name></member>
<member><type>uint32_t</type> <name>createInfoIndex</name></member>
<member><type>uint64_t</type> <name>sysmemPixelFormat</name></member>
<member><type>VkFormatFeatureFlags</type> <name>formatFeatures</name></member>
<member><type>VkSysmemColorSpaceFUCHSIA</type> <name>sysmemColorSpaceIndex</name></member>
<member><type>VkComponentMapping</type> <name>samplerYcbcrConversionComponents</name></member>
<member><type>VkSamplerYcbcrModelConversion</type> <name>suggestedYcbcrModel</name></member>
<member><type>VkSamplerYcbcrRange</type> <name>suggestedYcbcrRange</name></member>
<member><type>VkChromaLocation</type> <name>suggestedXChromaOffset</name></member>
<member><type>VkChromaLocation</type> <name>suggestedYChromaOffset</name></member>
</type>
<type category="struct" name="VkBufferConstraintsInfoFUCHSIA">
<member values="VK_STRUCTURE_TYPE_BUFFER_CONSTRAINTS_INFO_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member>
<member><type>VkBufferCreateInfo</type> <name>createInfo</name></member>
<member optional="true"><type>VkFormatFeatureFlags</type> <name>requiredFormatFeatures</name></member>
<member><type>VkBufferCollectionConstraintsInfoFUCHSIA</type> <name>bufferCollectionConstraints</name></member>
</type>
<type category="struct" name="VkSysmemColorSpaceFUCHSIA">
<member values="VK_STRUCTURE_TYPE_SYSMEM_COLOR_SPACE_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member>
<member><type>uint32_t</type> <name>colorSpace</name></member>
</type>
<type category="struct" name="VkImageFormatConstraintsInfoFUCHSIA">
<member values="VK_STRUCTURE_TYPE_IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member>
<member><type>VkImageCreateInfo</type> <name>imageCreateInfo</name></member>
<member><type>VkFormatFeatureFlags</type> <name>requiredFormatFeatures</name></member>
<member optional="true"><type>VkImageFormatConstraintsFlagsFUCHSIA</type> <name>flags</name></member>
<member optional="true"><type>uint64_t</type> <name>sysmemPixelFormat</name></member>
<member><type>uint32_t</type> <name>colorSpaceCount</name></member>
<member>const <type>VkSysmemColorSpaceFUCHSIA</type>* <name>pColorSpaces</name></member>
</type>
<type category="struct" name="VkImageConstraintsInfoFUCHSIA">
<member values="VK_STRUCTURE_TYPE_IMAGE_CONSTRAINTS_INFO_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member>
<member><type>uint32_t</type> <name>formatConstraintsCount</name></member>
<member len="formatConstraintsCount">const <type>VkImageFormatConstraintsInfoFUCHSIA</type>* <name>pFormatConstraints</name></member>
<member><type>VkBufferCollectionConstraintsInfoFUCHSIA</type> <name>bufferCollectionConstraints</name></member>
<member optional="true"><type>VkImageConstraintsInfoFlagsFUCHSIA</type> <name>flags</name></member>
</type>
<type category="struct" name="VkBufferCollectionConstraintsInfoFUCHSIA">
<member values="VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member>
<member><type>uint32_t</type> <name>minBufferCount</name></member>
<member><type>uint32_t</type> <name>maxBufferCount</name></member>
<member><type>uint32_t</type> <name>minBufferCountForCamping</name></member>
<member><type>uint32_t</type> <name>minBufferCountForDedicatedSlack</name></member>
<member><type>uint32_t</type> <name>minBufferCountForSharedSlack</name></member>
</type>
</types> </types>
<comment>Vulkan enumerant (token) definitions</comment> <comment>Vulkan enumerant (token) definitions</comment>
@ -7693,6 +7775,15 @@ typedef void <name>CAMetalLayer</name>;
<enum value="0" name="VK_VIDEO_ENCODE_H264_CREATE_DEFAULT_EXT"/> <enum value="0" name="VK_VIDEO_ENCODE_H264_CREATE_DEFAULT_EXT"/>
<enum bitpos="0" name="VK_VIDEO_ENCODE_H264_CREATE_RESERVED_0_BIT_EXT"/> <enum bitpos="0" name="VK_VIDEO_ENCODE_H264_CREATE_RESERVED_0_BIT_EXT"/>
</enums> </enums>
<enums name="VkImageFormatConstraintsFlagBitsFUCHSIA" type="bitmask">
</enums>
<enums name="VkImageConstraintsInfoFlagBitsFUCHSIA" type="bitmask">
<enum bitpos="0" name="VK_IMAGE_CONSTRAINTS_INFO_CPU_READ_RARELY_FUCHSIA"/>
<enum bitpos="1" name="VK_IMAGE_CONSTRAINTS_INFO_CPU_READ_OFTEN_FUCHSIA"/>
<enum bitpos="2" name="VK_IMAGE_CONSTRAINTS_INFO_CPU_WRITE_RARELY_FUCHSIA"/>
<enum bitpos="3" name="VK_IMAGE_CONSTRAINTS_INFO_CPU_WRITE_OFTEN_FUCHSIA"/>
<enum bitpos="4" name="VK_IMAGE_CONSTRAINTS_INFO_PROTECTED_OPTIONAL_FUCHSIA"/>
</enums>
<commands comment="Vulkan command definitions"> <commands comment="Vulkan command definitions">
<command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_INITIALIZATION_FAILED,VK_ERROR_LAYER_NOT_PRESENT,VK_ERROR_EXTENSION_NOT_PRESENT,VK_ERROR_INCOMPATIBLE_DRIVER"> <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_INITIALIZATION_FAILED,VK_ERROR_LAYER_NOT_PRESENT,VK_ERROR_EXTENSION_NOT_PRESENT,VK_ERROR_INCOMPATIBLE_DRIVER">
@ -10753,6 +10844,37 @@ typedef void <name>CAMetalLayer</name>;
<param><type>uint64_t</type> <name>presentId</name></param> <param><type>uint64_t</type> <name>presentId</name></param>
<param><type>uint64_t</type> <name>timeout</name></param> <param><type>uint64_t</type> <name>timeout</name></param>
</command> </command>
<command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_INVALID_EXTERNAL_HANDLE,VK_ERROR_INITIALIZATION_FAILED">
<proto><type>VkResult</type> <name>vkCreateBufferCollectionFUCHSIA</name></proto>
<param><type>VkDevice</type> <name>device</name></param>
<param>const <type>VkBufferCollectionCreateInfoFUCHSIA</type>* <name>pCreateInfo</name></param>
<param optional="true">const <type>VkAllocationCallbacks</type>* <name>pAllocator</name></param>
<param><type>VkBufferCollectionFUCHSIA</type>* <name>pCollection</name></param>
</command>
<command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_INITIALIZATION_FAILED,VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_FORMAT_NOT_SUPPORTED">
<proto><type>VkResult</type> <name>vkSetBufferCollectionBufferConstraintsFUCHSIA</name></proto>
<param><type>VkDevice</type> <name>device</name></param>
<param><type>VkBufferCollectionFUCHSIA</type> <name>collection</name></param>
<param>const <type>VkBufferConstraintsInfoFUCHSIA</type>* <name>pBufferConstraintsInfo</name></param>
</command>
<command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_INITIALIZATION_FAILED,VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_FORMAT_NOT_SUPPORTED">
<proto><type>VkResult</type> <name>vkSetBufferCollectionImageConstraintsFUCHSIA</name></proto>
<param><type>VkDevice</type> <name>device</name></param>
<param><type>VkBufferCollectionFUCHSIA</type> <name>collection</name></param>
<param>const <type>VkImageConstraintsInfoFUCHSIA</type>* <name>pImageConstraintsInfo</name></param>
</command>
<command>
<proto><type>void</type> <name>vkDestroyBufferCollectionFUCHSIA</name></proto>
<param><type>VkDevice</type> <name>device</name></param>
<param><type>VkBufferCollectionFUCHSIA</type> <name>collection</name></param>
<param optional="true">const <type>VkAllocationCallbacks</type>* <name>pAllocator</name></param>
</command>
<command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_INITIALIZATION_FAILED">
<proto><type>VkResult</type> <name>vkGetBufferCollectionPropertiesFUCHSIA</name></proto>
<param><type>VkDevice</type> <name>device</name></param>
<param><type>VkBufferCollectionFUCHSIA</type> <name>collection</name></param>
<param><type>VkBufferCollectionPropertiesFUCHSIA</type>* <name>pProperties</name></param>
</command>
</commands> </commands>
<feature api="vulkan" name="VK_VERSION_1_0" number="1.0" comment="Vulkan core API interface definitions"> <feature api="vulkan" name="VK_VERSION_1_0" number="1.0" comment="Vulkan core API interface definitions">
@ -12257,7 +12379,7 @@ typedef void <name>CAMetalLayer</name>;
<type name="VkPipelineRasterizationStateStreamCreateFlagsEXT"/> <type name="VkPipelineRasterizationStateStreamCreateFlagsEXT"/>
</require> </require>
</extension> </extension>
<extension name="VK_NVX_binary_import" number="30" type="device" author="NVX" contact="Eric Werness @ewerness,Liam Middlebrook @liam-middlebrook" supported="vulkan"> <extension name="VK_NVX_binary_import" number="30" type="device" author="NVX" contact="Eric Werness @ewerness-nv,Liam Middlebrook @liam-middlebrook" supported="vulkan">
<require> <require>
<enum value="1" name="VK_NVX_BINARY_IMPORT_SPEC_VERSION"/> <enum value="1" name="VK_NVX_BINARY_IMPORT_SPEC_VERSION"/>
<enum value="&quot;VK_NVX_binary_import&quot;" name="VK_NVX_BINARY_IMPORT_EXTENSION_NAME"/> <enum value="&quot;VK_NVX_binary_import&quot;" name="VK_NVX_BINARY_IMPORT_EXTENSION_NAME"/>
@ -12280,7 +12402,7 @@ typedef void <name>CAMetalLayer</name>;
<command name="vkCmdCuLaunchKernelNVX"/> <command name="vkCmdCuLaunchKernelNVX"/>
</require> </require>
</extension> </extension>
<extension name="VK_NVX_image_view_handle" number="31" type="device" author="NVX" contact="Eric Werness @ewerness" supported="vulkan"> <extension name="VK_NVX_image_view_handle" number="31" type="device" author="NVX" contact="Eric Werness @ewerness-nv" supported="vulkan">
<require> <require>
<enum value="2" name="VK_NVX_IMAGE_VIEW_HANDLE_SPEC_VERSION"/> <enum value="2" name="VK_NVX_IMAGE_VIEW_HANDLE_SPEC_VERSION"/>
<enum value="&quot;VK_NVX_image_view_handle&quot;" name="VK_NVX_IMAGE_VIEW_HANDLE_EXTENSION_NAME"/> <enum value="&quot;VK_NVX_image_view_handle&quot;" name="VK_NVX_IMAGE_VIEW_HANDLE_EXTENSION_NAME"/>
@ -14173,7 +14295,7 @@ typedef void <name>CAMetalLayer</name>;
<command name="vkCmdSetCoarseSampleOrderNV"/> <command name="vkCmdSetCoarseSampleOrderNV"/>
</require> </require>
</extension> </extension>
<extension name="VK_NV_ray_tracing" number="166" type="device" requires="VK_KHR_get_physical_device_properties2,VK_KHR_get_memory_requirements2" author="NV" contact="Eric Werness @ewerness" supported="vulkan"> <extension name="VK_NV_ray_tracing" number="166" type="device" requires="VK_KHR_get_physical_device_properties2,VK_KHR_get_memory_requirements2" author="NV" contact="Eric Werness @ewerness-nv" supported="vulkan">
<require> <require>
<enum value="3" name="VK_NV_RAY_TRACING_SPEC_VERSION"/> <enum value="3" name="VK_NV_RAY_TRACING_SPEC_VERSION"/>
<enum value="&quot;VK_NV_ray_tracing&quot;" name="VK_NV_RAY_TRACING_EXTENSION_NAME"/> <enum value="&quot;VK_NV_ray_tracing&quot;" name="VK_NV_RAY_TRACING_EXTENSION_NAME"/>
@ -15435,8 +15557,12 @@ typedef void <name>CAMetalLayer</name>;
<type name="VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT"/> <type name="VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT"/>
</require> </require>
</extension> </extension>
<extension name="VK_NV_device_generated_commands" number="278" type="device" requiresCore="1.1" author="NV" contact="Christoph Kubisch @pixeljetstream" supported="vulkan"> <extension name="VK_NV_device_generated_commands" number="278" type="device" requiresCore="1.1" requires="VK_KHR_buffer_device_address" author="NV" contact="Christoph Kubisch @pixeljetstream" supported="vulkan">
<require> <require>
<comment>
This extension requires buffer_device_address functionality.
VK_EXT_buffer_device_address is also acceptable, but since it is deprecated the KHR version is preferred.
</comment>
<enum value="3" name="VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION"/> <enum value="3" name="VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION"/>
<enum value="&quot;VK_NV_device_generated_commands&quot;" name="VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME"/> <enum value="&quot;VK_NV_device_generated_commands&quot;" name="VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME"/>
<enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV"/> <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV"/>
@ -16366,10 +16492,42 @@ typedef void <name>CAMetalLayer</name>;
<command name="vkGetSemaphoreZirconHandleFUCHSIA"/> <command name="vkGetSemaphoreZirconHandleFUCHSIA"/>
</require> </require>
</extension> </extension>
<extension name="VK_FUCHSIA_extension_367" number="367" author="FUCHSIA" contact="Craig Stout @cdotstout" supported="disabled"> <extension name="VK_FUCHSIA_buffer_collection" number="367" type="device" requires="VK_FUCHSIA_external_memory,VK_KHR_sampler_ycbcr_conversion" author="FUCHSIA" contact="John Rosasco @rosasco" supported="vulkan" platform="fuchsia">
<require> <require>
<enum value="0" name="VK_FUCHSIA_EXTENSION_367_SPEC_VERSION"/> <enum value="2" name="VK_FUCHSIA_BUFFER_COLLECTION_SPEC_VERSION"/>
<enum value="&quot;VK_FUCHSIA_extension_367&quot;" name="VK_FUCHSIA_EXTENSION_367_EXTENSION_NAME"/> <enum value="&quot;VK_FUCHSIA_buffer_collection&quot;" name="VK_FUCHSIA_BUFFER_COLLECTION_EXTENSION_NAME"/>
<enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CREATE_INFO_FUCHSIA"/>
<enum offset="0" extends="VkObjectType" name="VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA" comment="VkBufferCollectionFUCHSIA"/>
<enum offset="0" extends="VkDebugReportObjectTypeEXT" name="VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA_EXT"/>
<enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA"/>
<enum offset="2" extends="VkStructureType" name="VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA"/>
<enum offset="3" extends="VkStructureType" name="VK_STRUCTURE_TYPE_BUFFER_COLLECTION_PROPERTIES_FUCHSIA"/>
<enum offset="4" extends="VkStructureType" name="VK_STRUCTURE_TYPE_BUFFER_CONSTRAINTS_INFO_FUCHSIA"/>
<enum offset="5" extends="VkStructureType" name="VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA"/>
<enum offset="6" extends="VkStructureType" name="VK_STRUCTURE_TYPE_IMAGE_CONSTRAINTS_INFO_FUCHSIA"/>
<enum offset="7" extends="VkStructureType" name="VK_STRUCTURE_TYPE_IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA"/>
<enum offset="8" extends="VkStructureType" name="VK_STRUCTURE_TYPE_SYSMEM_COLOR_SPACE_FUCHSIA"/>
<enum offset="9" extends="VkStructureType" name="VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA"/>
<type name="VkBufferCollectionFUCHSIA"/>
<type name="VkBufferCollectionCreateInfoFUCHSIA"/>
<type name="VkImportMemoryBufferCollectionFUCHSIA"/>
<type name="VkBufferCollectionImageCreateInfoFUCHSIA"/>
<type name="VkBufferConstraintsInfoFUCHSIA"/>
<type name="VkBufferCollectionBufferCreateInfoFUCHSIA"/>
<type name="VkBufferCollectionPropertiesFUCHSIA"/>
<type name="VkImageFormatConstraintsFlagBitsFUCHSIA"/>
<type name="VkImageFormatConstraintsFlagsFUCHSIA"/>
<type name="VkSysmemColorSpaceFUCHSIA"/>
<type name="VkImageConstraintsInfoFlagBitsFUCHSIA"/>
<type name="VkImageConstraintsInfoFlagsFUCHSIA"/>
<type name="VkImageConstraintsInfoFUCHSIA"/>
<type name="VkImageFormatConstraintsInfoFUCHSIA"/>
<type name="VkBufferCollectionConstraintsInfoFUCHSIA"/>
<command name="vkCreateBufferCollectionFUCHSIA"/>
<command name="vkSetBufferCollectionImageConstraintsFUCHSIA"/>
<command name="vkSetBufferCollectionBufferConstraintsFUCHSIA"/>
<command name="vkDestroyBufferCollectionFUCHSIA"/>
<command name="vkGetBufferCollectionPropertiesFUCHSIA"/>
</require> </require>
</extension> </extension>
<extension name="VK_FUCHSIA_extension_368" number="368" author="FUCHSIA" contact="Craig Stout @cdotstout" supported="disabled"> <extension name="VK_FUCHSIA_extension_368" number="368" author="FUCHSIA" contact="Craig Stout @cdotstout" supported="disabled">
@ -16802,6 +16960,30 @@ typedef void <name>CAMetalLayer</name>;
<enum bitpos="15" extends="VkImageCreateFlagBits" name="VK_IMAGE_CREATE_RESERVED_426_BIT_QCOM"/> <enum bitpos="15" extends="VkImageCreateFlagBits" name="VK_IMAGE_CREATE_RESERVED_426_BIT_QCOM"/>
</require> </require>
</extension> </extension>
<extension name="VK_NV_extension_427" number="427" author="NV" contact="Vikram Kushwaha @vkushwaha-nv" supported="disabled">
<require>
<enum value="0" name="VK_NV_EXTENSION_427_SPEC_VERSION"/>
<enum value="&quot;VK_NV_extension_427&quot;" name="VK_NV_EXTENSION_427_EXTENSION_NAME"/>
</require>
</extension>
<extension name="VK_NV_extension_428" number="428" author="NV" contact="Vikram Kushwaha @vkushwaha-nv" supported="disabled">
<require>
<enum value="0" name="VK_NV_EXTENSION_428_SPEC_VERSION"/>
<enum value="&quot;VK_NV_extension_428&quot;" name="VK_NV_EXTENSION_428_EXTENSION_NAME"/>
</require>
</extension>
<extension name="VK_NV_extension_429" number="429" author="NV" contact="Vikram Kushwaha @vkushwaha-nv" supported="disabled">
<require>
<enum value="0" name="VK_NV_EXTENSION_429_SPEC_VERSION"/>
<enum value="&quot;VK_NV_extension_429&quot;" name="VK_NV_EXTENSION_429_EXTENSION_NAME"/>
</require>
</extension>
<extension name="VK_NV_extension_430" number="430" author="NV" contact="Vikram Kushwaha @vkushwaha-nv" supported="disabled">
<require>
<enum value="0" name="VK_NV_EXTENSION_430_SPEC_VERSION"/>
<enum value="&quot;VK_NV_extension_430&quot;" name="VK_NV_EXTENSION_430_EXTENSION_NAME"/>
</require>
</extension>
</extensions> </extensions>
<spirvextensions comment="SPIR-V Extensions allowed in Vulkan and what is required to use it"> <spirvextensions comment="SPIR-V Extensions allowed in Vulkan and what is required to use it">
<spirvextension name="SPV_KHR_variable_pointers"> <spirvextension name="SPV_KHR_variable_pointers">