diff --git a/vulkano/autogen/properties.rs b/vulkano/autogen/properties.rs index d0c76c1e..9be0da66 100644 --- a/vulkano/autogen/properties.rs +++ b/vulkano/autogen/properties.rs @@ -95,7 +95,7 @@ fn properties_output(members: &[PropertiesMember]) -> TokenStream { properties_ffi.#ffi_member.map(|s| unsafe { std::slice::from_raw_parts( - s #ffi_member_field .#ffi_name as _, + s #ffi_member_field .#ffi_name .cast_const(), s #ffi_member_field .#len_field_name as _, ) } @@ -622,6 +622,14 @@ fn vulkano_type(ty: &str, len: Option>) -> TokenStream { "VkShaderFloatControlsIndependence" => quote! { ShaderFloatControlsIndependence }, "VkShaderStageFlags" => quote! { ShaderStages }, "VkSubgroupFeatureFlags" => quote! { SubgroupFeatures }, + "VkImageLayout" => quote! { ImageLayout }, + "VkImageUsageFlags" => quote! { ImageUsage }, + "VkBufferUsageFlags" => quote! { BufferUsage }, + "VkChromaLocation" => quote! { ChromaLocation }, + "VkLayeredDriverUnderlyingApiMSFT" => quote! { LayeredDriverUnderlyingApi }, + "VkPhysicalDeviceSchedulingControlsFlagsARM" => { + quote! { PhysicalDeviceSchedulingControlsFlags } + } _ => unimplemented!("{}", ty), }, } diff --git a/vulkano/src/device/physical.rs b/vulkano/src/device/physical.rs index 1f829cf2..c1ae355e 100644 --- a/vulkano/src/device/physical.rs +++ b/vulkano/src/device/physical.rs @@ -3623,6 +3623,27 @@ impl From for ShaderCoreProperties { } } +vulkan_enum! { + #[non_exhaustive] + + LayeredDriverUnderlyingApi = LayeredDriverUnderlyingApiMSFT(i32); + + // TODO: document + None = NONE, + + // TODO: document + D3D12 = D3D12, +} + +vulkan_bitflags! { + #[non_exhaustive] + + PhysicalDeviceSchedulingControlsFlags = PhysicalDeviceSchedulingControlsFlagsARM(u64); + + // TODO: document + SHADER_CORE_COUNT = SHADER_CORE_COUNT, +} + vulkan_bitflags! { #[non_exhaustive] diff --git a/vulkano/src/device/properties.rs b/vulkano/src/device/properties.rs index ffc82d82..0dcf6f4c 100644 --- a/vulkano/src/device/properties.rs +++ b/vulkano/src/device/properties.rs @@ -5,8 +5,12 @@ use super::physical::{ ShaderFloatControlsIndependence, SubgroupFeatures, }; use crate::{ - device::{DeviceExtensions, QueueFlags}, - image::{SampleCount, SampleCounts}, + buffer::BufferUsage, + device::{ + physical::{LayeredDriverUnderlyingApi, PhysicalDeviceSchedulingControlsFlags}, + DeviceExtensions, QueueFlags, + }, + image::{sampler::ycbcr::ChromaLocation, ImageLayout, ImageUsage, SampleCount, SampleCounts}, instance::InstanceExtensions, memory::DeviceAlignment, render_pass::ResolveModes, @@ -259,6 +263,50 @@ impl FromVulkan for SubgroupFeatures { } } +impl FromVulkan for BufferUsage { + #[inline] + fn from_vulkan(val: ash::vk::BufferUsageFlags) -> Option { + Some(val.into()) + } +} + +impl FromVulkan for ImageUsage { + #[inline] + fn from_vulkan(val: ash::vk::ImageUsageFlags) -> Option { + Some(val.into()) + } +} + +impl FromVulkan for ChromaLocation { + #[inline] + fn from_vulkan(val: ash::vk::ChromaLocation) -> Option { + val.try_into().ok() + } +} + +impl FromVulkan + for PhysicalDeviceSchedulingControlsFlags +{ + #[inline] + fn from_vulkan(val: ash::vk::PhysicalDeviceSchedulingControlsFlagsARM) -> Option { + Some(val.into()) + } +} + +impl FromVulkan for LayeredDriverUnderlyingApi { + #[inline] + fn from_vulkan(val: ash::vk::LayeredDriverUnderlyingApiMSFT) -> Option { + val.try_into().ok() + } +} + +impl FromVulkan for ImageLayout { + #[inline] + fn from_vulkan(val: ash::vk::ImageLayout) -> Option { + val.try_into().ok() + } +} + impl FromVulkan<&'a T>, T> FromVulkan<&[T]> for Vec { #[inline] fn from_vulkan(val: &[T]) -> Option> { diff --git a/vulkano/src/format.rs b/vulkano/src/format.rs index f9bab0d3..dfb0ee40 100644 --- a/vulkano/src/format.rs +++ b/vulkano/src/format.rs @@ -406,6 +406,7 @@ pub(crate) enum FormatCompatibilityInner { Class_10bit_2plane_444, Class_12bit_2plane_444, Class_16bit_2plane_444, + Class_8bit_alpha, } /// Describes a uniform value that will be used to fill an image. diff --git a/vulkano/vk.xml b/vulkano/vk.xml index d3907eb9..0790c9e4 100644 --- a/vulkano/vk.xml +++ b/vulkano/vk.xml @@ -1,7 +1,7 @@ -Copyright 2015-2023 The Khronos Group Inc. +Copyright 2015-2024 The Khronos Group Inc. SPDX-License-Identifier: Apache-2.0 OR MIT @@ -38,7 +38,7 @@ branch of the member gitlab server. - + @@ -71,7 +71,7 @@ branch of the member gitlab server. - + @@ -134,6 +134,7 @@ branch of the member gitlab server. + @@ -174,11 +175,11 @@ branch of the member gitlab server. #define VKSC_API_VERSION_1_0 VK_MAKE_API_VERSION(VKSC_API_VARIANT, 1, 0, 0)// Patch version should always be set to 0 // Version of this file -#define VK_HEADER_VERSION 251 +#define VK_HEADER_VERSION 281 // Complete version of this file #define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 3, VK_HEADER_VERSION) // Version of this file -#define VK_HEADER_VERSION 12 +#define VK_HEADER_VERSION 14 // Complete version of this file #define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(VKSC_API_VARIANT, 1, 0, VK_HEADER_VERSION) @@ -189,7 +190,7 @@ branch of the member gitlab server. #ifndef VK_USE_64_BIT_PTR_DEFINES - #if defined(__LP64__) || defined(_WIN64) || (defined(__x86_64__) && !defined(__ILP32__) ) || defined(_M_X64) || defined(__ia64) || defined (_M_IA64) || defined(__aarch64__) || defined(__powerpc64__) + #if defined(__LP64__) || defined(_WIN64) || (defined(__x86_64__) && !defined(__ILP32__) ) || defined(_M_X64) || defined(__ia64) || defined (_M_IA64) || defined(__aarch64__) || defined(__powerpc64__) || (defined(__riscv) && __riscv_xlen == 64) #define VK_USE_64_BIT_PTR_DEFINES 1 #else #define VK_USE_64_BIT_PTR_DEFINES 0 @@ -337,7 +338,8 @@ typedef void* MTLSharedEvent_id; typedef VkFlags VkCommandBufferResetFlags; typedef VkFlags VkCommandBufferUsageFlags; typedef VkFlags VkQueryPipelineStatisticFlags; - typedef VkFlags VkMemoryMapFlags; + typedef VkFlags VkMemoryMapFlags; + typedef VkFlags VkMemoryUnmapFlagsKHR; typedef VkFlags VkImageAspectFlags; typedef VkFlags VkSparseMemoryBindFlags; typedef VkFlags VkSparseImageFormatFlags; @@ -388,6 +390,8 @@ typedef void* MTLSharedEvent_id; typedef VkFlags VkBuildMicromapFlagsEXT; typedef VkFlags VkMicromapCreateFlagsEXT; typedef VkFlags VkDirectDriverLoadingFlagsLUNARG; + typedef VkFlags64 VkPipelineCreateFlags2KHR; + typedef VkFlags64 VkBufferUsageFlags2KHR; WSI extensions typedef VkFlags VkCompositeAlphaFlagsKHR; @@ -463,6 +467,7 @@ typedef void* MTLSharedEvent_id; typedef VkFlags VkSubmitFlags; typedef VkFlags VkImageFormatConstraintsFlagsFUCHSIA; + typedef VkFlags VkHostImageCopyFlagsEXT; typedef VkFlags VkImageConstraintsInfoFlagsFUCHSIA; typedef VkFlags VkGraphicsPipelineLibraryFlagsEXT; typedef VkFlags VkImageCompressionFlagsEXT; @@ -473,9 +478,11 @@ typedef void* MTLSharedEvent_id; typedef VkFlags VkOpticalFlowUsageFlagsNV; typedef VkFlags VkOpticalFlowSessionCreateFlagsNV; typedef VkFlags VkOpticalFlowExecuteFlagsNV; + typedef VkFlags VkFrameBoundaryFlagsEXT; typedef VkFlags VkPresentScalingFlagsEXT; typedef VkFlags VkPresentGravityFlagsEXT; typedef VkFlags VkShaderCreateFlagsEXT; + typedef VkFlags64 VkPhysicalDeviceSchedulingControlsFlagsARM; Video Core extension typedef VkFlags VkVideoCodecOperationFlagsKHR; @@ -495,7 +502,7 @@ typedef void* MTLSharedEvent_id; typedef VkFlags VkVideoDecodeH264PictureLayoutFlagsKHR; Video Encode Core extension - typedef VkFlags VkVideoEncodeFlagsKHR; + typedef VkFlags VkVideoEncodeFlagsKHR; typedef VkFlags VkVideoEncodeUsageFlagsKHR; typedef VkFlags VkVideoEncodeContentFlagsKHR; typedef VkFlags VkVideoEncodeCapabilityFlagsKHR; @@ -506,13 +513,16 @@ typedef void* MTLSharedEvent_id; typedef VkFlags VkVideoComponentBitDepthFlagsKHR; Video Encode H.264 extension - typedef VkFlags VkVideoEncodeH264CapabilityFlagsEXT; + typedef VkFlags VkVideoEncodeH264CapabilityFlagsKHR; + typedef VkFlags VkVideoEncodeH264StdFlagsKHR; + typedef VkFlags VkVideoEncodeH264RateControlFlagsKHR; Video Encode H.265 extension - typedef VkFlags VkVideoEncodeH265CapabilityFlagsEXT; - typedef VkFlags VkVideoEncodeH265CtbSizeFlagsEXT; - typedef VkFlags VkVideoEncodeH265TransformBlockSizeFlagsEXT; - typedef VkFlags VkMemoryUnmapFlagsKHR; + typedef VkFlags VkVideoEncodeH265CapabilityFlagsKHR; + typedef VkFlags VkVideoEncodeH265StdFlagsKHR; + typedef VkFlags VkVideoEncodeH265RateControlFlagsKHR; + typedef VkFlags VkVideoEncodeH265CtbSizeFlagsKHR; + typedef VkFlags VkVideoEncodeH265TransformBlockSizeFlagsKHR; Types which can be void pointers or class pointers, selected at compile time VK_DEFINE_HANDLE(VkInstance) @@ -609,6 +619,7 @@ typedef void* MTLSharedEvent_id; + @@ -676,7 +687,8 @@ typedef void* MTLSharedEvent_id; - + + @@ -706,8 +718,6 @@ typedef void* MTLSharedEvent_id; - - @@ -723,7 +733,8 @@ typedef void* MTLSharedEvent_id; - + + @@ -746,6 +757,7 @@ typedef void* MTLSharedEvent_id; + @@ -768,11 +780,22 @@ typedef void* MTLSharedEvent_id; + + + + + + + + + + + WSI extensions @@ -846,6 +869,11 @@ typedef void* MTLSharedEvent_id; + + + + + Enumerated types in the header, but not used by the API @@ -874,6 +902,7 @@ typedef void* MTLSharedEvent_id; Video H.265 Decode extensions Video Encode extensions + @@ -882,14 +911,16 @@ typedef void* MTLSharedEvent_id; Video H.264 Encode extensions - - + + + Video H.265 Encode extensions - - - - + + + + + The PFN_vk*Function types are used by VkAllocationCallbacks below typedef void (VKAPI_PTR *PFN_vkInternalAllocationNotification)( @@ -1014,20 +1045,20 @@ typedef void* MTLSharedEvent_id; uint32_t vendorID uint32_t deviceID VkPhysicalDeviceType deviceType - char deviceName[VK_MAX_PHYSICAL_DEVICE_NAME_SIZE] + char deviceName[VK_MAX_PHYSICAL_DEVICE_NAME_SIZE] uint8_t pipelineCacheUUID[VK_UUID_SIZE] VkPhysicalDeviceLimits limits VkPhysicalDeviceSparseProperties sparseProperties - char extensionName[VK_MAX_EXTENSION_NAME_SIZE]extension name - uint32_t specVersionversion of the extension specification implemented + char extensionName[VK_MAX_EXTENSION_NAME_SIZE]extension name + uint32_t specVersionversion of the extension specification implemented - char layerName[VK_MAX_EXTENSION_NAME_SIZE]layer name - uint32_t specVersionversion of the layer specification implemented - uint32_t implementationVersionbuild or release version of the layer's library - char description[VK_MAX_DESCRIPTION_SIZE]Free-form description of the layer + char layerName[VK_MAX_EXTENSION_NAME_SIZE]layer name + uint32_t specVersionversion of the layer specification implemented + uint32_t implementationVersionbuild or release version of the layer's library + char description[VK_MAX_DESCRIPTION_SIZE]Free-form description of the layer VkStructureType sType @@ -1083,10 +1114,10 @@ typedef void* MTLSharedEvent_id; VkExtent3D minImageTransferGranularityMinimum alignment requirement for image transfers - uint32_t memoryTypeCount - VkMemoryType memoryTypes[VK_MAX_MEMORY_TYPES] - uint32_t memoryHeapCount - VkMemoryHeap memoryHeaps[VK_MAX_MEMORY_HEAPS] + uint32_t memoryTypeCount + VkMemoryType memoryTypes[VK_MAX_MEMORY_TYPES] + uint32_t memoryHeapCount + VkMemoryHeap memoryHeaps[VK_MAX_MEMORY_HEAPS] VkStructureType sType @@ -1171,12 +1202,17 @@ typedef void* MTLSharedEvent_id; uint32_t dstArrayElementArray element within the destination binding to copy to uint32_t descriptorCountNumber of descriptors to write (determines the size of the array pointed by pDescriptors) + + VkStructureType sType + const void* pNext + VkBufferUsageFlags2KHR usage + VkStructureType sType const void* pNext VkBufferCreateFlags flagsBuffer creation flags VkDeviceSize sizeSpecified in bytes - VkBufferUsageFlags usageBuffer usage flags + VkBufferUsageFlags usageBuffer usage flags VkSharingMode sharingMode uint32_t queueFamilyIndexCount const uint32_t* pQueueFamilyIndices @@ -1425,12 +1461,24 @@ typedef void* MTLSharedEvent_id; VkStructureType sType const void* pNext - VkPipelineCreateFlags flagsPipeline creation flags + VkPipelineCreateFlags flagsPipeline creation flags VkPipelineShaderStageCreateInfo stage VkPipelineLayout layoutInterface layout of the pipeline VkPipeline basePipelineHandleIf VK_PIPELINE_CREATE_DERIVATIVE_BIT is set and this value is nonzero, it specifies the handle of the base pipeline this is a derivative of int32_t basePipelineIndexIf VK_PIPELINE_CREATE_DERIVATIVE_BIT is set and this value is not -1, it specifies an index into pCreateInfos of the base pipeline this is a derivative of + + VkStructureType sType + const void* pNext + VkDeviceAddress deviceAddress + VkDeviceSize size + VkDeviceAddress pipelineDeviceAddressCaptureReplay + + + VkStructureType sType + const void* pNext + VkPipelineCreateFlags2KHR flags + uint32_t bindingVertex buffer binding id uint32_t strideDistance between vertices in bytes (0 = no advancement) @@ -1552,7 +1600,7 @@ typedef void* MTLSharedEvent_id; VkStructureType sType const void* pNext - VkPipelineCreateFlags flagsPipeline creation flags + VkPipelineCreateFlags flagsPipeline creation flags uint32_t stageCount const VkPipelineShaderStageCreateInfo* pStagesOne entry for each active shader stage const VkPipelineShaderStageCreateInfo* pStagesOne entry for each active shader stage @@ -1616,7 +1664,7 @@ typedef void* MTLSharedEvent_id; uint32_t offsetStart of the range, in bytes uint32_t sizeSize of the range, in bytes - + VkStructureType sType const void* pNext VkPipelineLayoutCreateFlags flags @@ -1819,7 +1867,7 @@ typedef void* MTLSharedEvent_id; VkBool32 residencyStandard2DBlockShapeSparse resources support: GPU will access all 2D (single sample) sparse resources using the standard sparse image block shapes (based on pixel format) VkBool32 residencyStandard2DMultisampleBlockShapeSparse resources support: GPU will access all 2D (multisample) sparse resources using the standard sparse image block shapes (based on pixel format) VkBool32 residencyStandard3DBlockShapeSparse resources support: GPU will access all 3D sparse resources using the standard sparse image block shapes (based on pixel format) - VkBool32 residencyAlignedMipSizeSparse resources support: Images with mip level dimensions that are NOT a multiple of the sparse image block dimensions will be placed in the mip tail + VkBool32 residencyAlignedMipSizeSparse resources support: Images with mip level dimensions that are NOT a multiple of the sparse image block dimensions will be placed in the mip tail VkBool32 residencyNonResidentStrictSparse resources support: GPU can consistently access non-resident regions of a resource, all reads return as if data is 0, writes are discarded @@ -2193,6 +2241,19 @@ typedef void* MTLSharedEvent_id; uint32_t disabledValidationFeatureCountNumber of validation features to disable const VkValidationFeatureDisableEXT* pDisabledValidationFeaturesValidation features to disable + + VkStructureType sTypeMust be VK_STRUCTURE_TYPE_LAYER_SETTINGS_CREATE_INFO_EXT + const void* pNext + uint32_t settingCountNumber of settings to configure + const VkLayerSettingEXT* pSettingsValidation features to enable + + + const char* pLayerName + const char* pSettingName + VkLayerSettingTypeEXT typeThe type of the object + uint32_t valueCountNumber of values of the setting + const void* pValuesValues to pass for a setting + VkStructureType sType const void* pNext @@ -2317,6 +2378,13 @@ typedef void* MTLSharedEvent_id; void* pNext VkBool32 deviceGeneratedCommands + + VkStructureType sType + void* pNext + VkBool32 deviceGeneratedCompute + VkBool32 deviceGeneratedComputePipelines + VkBool32 deviceGeneratedComputeCaptureReplay + VkStructureType sType const void* pNext @@ -2420,7 +2488,7 @@ typedef void* MTLSharedEvent_id; VkStructureType sType const void* pNext VkPipelineBindPoint pipelineBindPoint - VkPipeline pipeline + VkPipeline pipeline VkIndirectCommandsLayoutNV indirectCommandsLayout uint32_t streamCount const VkIndirectCommandsStreamNV* pStreams @@ -2437,10 +2505,19 @@ typedef void* MTLSharedEvent_id; VkStructureType sType const void* pNext VkPipelineBindPoint pipelineBindPoint - VkPipeline pipeline + VkPipeline pipeline VkIndirectCommandsLayoutNV indirectCommandsLayout uint32_t maxSequencesCount + + VkStructureType sType + const void* pNext + VkPipelineBindPoint pipelineBindPoint + VkPipeline pipeline + + + VkDeviceAddress pipelineAddress + VkStructureType sType void* pNext @@ -2519,8 +2596,8 @@ typedef void* MTLSharedEvent_id; VkStructureType sType void* pNext VkDriverId driverID - char driverName[VK_MAX_DRIVER_NAME_SIZE] - char driverInfo[VK_MAX_DRIVER_INFO_SIZE] + char driverName[VK_MAX_DRIVER_NAME_SIZE] + char driverInfo[VK_MAX_DRIVER_INFO_SIZE] VkConformanceVersion conformanceVersion @@ -2570,7 +2647,7 @@ typedef void* MTLSharedEvent_id; VkStructureType sType const void* pNext VkBufferCreateFlags flags - VkBufferUsageFlags usage + VkBufferUsageFlags usage VkExternalMemoryHandleTypeFlagBits handleType @@ -2881,7 +2958,7 @@ typedef void* MTLSharedEvent_id; VkSemaphoreSciSyncPoolNV semaphorePool const NvSciSyncFence* pFence - + VkStructureType sType const void* pNext uint32_t semaphoreSciSyncPoolRequestCount @@ -2951,7 +3028,7 @@ typedef void* MTLSharedEvent_id; VkStructureType sType void* pNext uint32_t physicalDeviceCount - VkPhysicalDevice physicalDevices[VK_MAX_DEVICE_GROUP_SIZE] + VkPhysicalDevice physicalDevices[VK_MAX_DEVICE_GROUP_SIZE] VkBool32 subsetAllocation @@ -3234,7 +3311,7 @@ typedef void* MTLSharedEvent_id; VkStructureType sType const void* pNext - VkSurfaceKHR surface + VkSurfaceKHR surface VkStructureType sType @@ -3630,6 +3707,42 @@ typedef void* MTLSharedEvent_id; VkDeviceSize maxBufferSize + + VkStructureType sType + void* pNext + VkBool32 maintenance5 + + + VkStructureType sType + void* pNext + VkBool32 earlyFragmentMultisampleCoverageAfterSampleCounting + VkBool32 earlyFragmentSampleMaskTestBeforeSampleCounting + VkBool32 depthStencilSwizzleOneSupport + VkBool32 polygonModePointSize + VkBool32 nonStrictSinglePixelWideLinesUseParallelogram + VkBool32 nonStrictWideLinesUseParallelogram + + + VkStructureType sType + void* pNext + VkBool32 maintenance6 + + + VkStructureType sType + void* pNext + VkBool32 blockTexelViewCompatibleMultipleLayers + uint32_t maxCombinedImageSamplerDescriptorCount + VkBool32 fragmentShadingRateClampCombinerInputs + + + VkStructureType sType + const void* pNext + uint32_t viewMask + uint32_t colorAttachmentCount + const VkFormat* pColorAttachmentFormats + VkFormat depthAttachmentFormat + VkFormat stencilAttachmentFormat + VkStructureType sType void* pNext @@ -3729,11 +3842,11 @@ typedef void* MTLSharedEvent_id; VkBool32 globalPriorityQuery - + VkStructureType sType - void* pNext - uint32_t priorityCount - VkQueueGlobalPriorityKHR priorities[VK_MAX_GLOBAL_PRIORITY_SIZE_KHR] + void* pNext + uint32_t priorityCount + VkQueueGlobalPriorityKHR priorities[VK_MAX_GLOBAL_PRIORITY_SIZE_KHR] @@ -3773,7 +3886,7 @@ typedef void* MTLSharedEvent_id; VkDebugUtilsMessengerCallbackDataFlagsEXT flags const char* pMessageIdName int32_t messageIdNumber - const char* pMessage + const char* pMessage uint32_t queueLabelCount const VkDebugUtilsLabelEXT* pQueueLabels uint32_t cmdBufLabelCount @@ -3808,7 +3921,7 @@ typedef void* MTLSharedEvent_id; VkStructureType sType const void* pNext VkExternalMemoryHandleTypeFlagBits handleType - void* pHostPointer + void* pHostPointer VkStructureType sType @@ -3833,11 +3946,12 @@ typedef void* MTLSharedEvent_id; VkBool32 fullyCoveredFragmentShaderInputVariabletrue if the implementation supports the FullyCoveredEXT SPIR-V builtin fragment shader input variable VkBool32 conservativeRasterizationPostDepthCoveragetrue if the implementation supports both conservative rasterization and post depth coverage sample coverage mask - - VkStructureType sType + + VkStructureType sType const void* pNext - VkTimeDomainEXT timeDomain + VkTimeDomainKHR timeDomain + VkStructureType sType void* pNext @@ -4062,21 +4176,29 @@ typedef void* MTLSharedEvent_id; uint64_t value - + uint32_t binding uint32_t divisor - - VkStructureType sType + + + VkStructureType sType const void* pNext uint32_t vertexBindingDivisorCount - const VkVertexInputBindingDivisorDescriptionEXT* pVertexBindingDivisors + const VkVertexInputBindingDivisorDescriptionKHR* pVertexBindingDivisors + VkStructureType sType void* pNext uint32_t maxVertexAttribDivisormax value of vertex attribute divisor + + VkStructureType sType + void* pNext + uint32_t maxVertexAttribDivisormax value of vertex attribute divisor + VkBool32 supportsNonZeroFirstInstance + VkStructureType sType void* pNext @@ -4123,7 +4245,7 @@ typedef void* MTLSharedEvent_id; const void* pNext VkBool32 conditionalRenderingEnableWhether this secondary command buffer may be executed during an active conditional rendering - + VkStructureType sType void* pNext uint64_t externalFormat @@ -4189,12 +4311,13 @@ typedef void* MTLSharedEvent_id; VkBool32 shaderImageFloat32AtomicMinMax VkBool32 sparseImageFloat32AtomicMinMax - - VkStructureType sType + + VkStructureType sType void* pNext VkBool32 vertexAttributeInstanceRateDivisor VkBool32 vertexAttributeInstanceRateZeroDivisor + VkStructureType sType void* pNext @@ -4465,7 +4588,7 @@ typedef void* MTLSharedEvent_id; VkStructureType sType const void* pNext - VkPipelineCreateFlags flagsPipeline creation flags + VkPipelineCreateFlags flagsPipeline creation flags uint32_t stageCount const VkPipelineShaderStageCreateInfo* pStagesOne entry for each active shader stage uint32_t groupCount @@ -4478,7 +4601,7 @@ typedef void* MTLSharedEvent_id; VkStructureType sType const void* pNext - VkPipelineCreateFlags flagsPipeline creation flags + VkPipelineCreateFlags flagsPipeline creation flags uint32_t stageCount const VkPipelineShaderStageCreateInfo* pStagesOne entry for each active shader stage uint32_t groupCount @@ -4687,7 +4810,7 @@ typedef void* MTLSharedEvent_id; VkStructureType sType const void* pNext uint64_t drmFormatModifier - uint32_t drmFormatModifierPlaneCount + uint32_t drmFormatModifierPlaneCount const VkSubresourceLayout* pPlaneLayouts @@ -4897,7 +5020,7 @@ typedef void* MTLSharedEvent_id; void* pNext VkShaderStageFlags cooperativeMatrixSupportedStages - + VkStructureType sType void* pNext uint32_t MSize @@ -4937,7 +5060,7 @@ typedef void* MTLSharedEvent_id; uint64_t duration - + VkStructureType sType const void* pNext VkPipelineCreationFeedback* pPipelineCreationFeedbackOutput pipeline creation feedback. @@ -4998,9 +5121,9 @@ typedef void* MTLSharedEvent_id; VkStructureType sType void* pNext VkPerformanceCounterDescriptionFlagsKHR flags - char name[VK_MAX_DESCRIPTION_SIZE] - char category[VK_MAX_DESCRIPTION_SIZE] - char description[VK_MAX_DESCRIPTION_SIZE] + char name[VK_MAX_DESCRIPTION_SIZE] + char category[VK_MAX_DESCRIPTION_SIZE] + char description[VK_MAX_DESCRIPTION_SIZE] VkStructureType sType @@ -5028,7 +5151,7 @@ typedef void* MTLSharedEvent_id; const void* pNext uint32_t counterPassIndexIndex for which counter pass to submit - + VkStructureType sType const void* pNext uint32_t maxPerformanceQueriesPerPoolMaximum number of VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR queries in a query pool @@ -5069,7 +5192,7 @@ typedef void* MTLSharedEvent_id; VkBool32 valueBool const char* valueString - + VkPerformanceValueTypeINTEL type VkPerformanceValueDataINTEL data @@ -5112,11 +5235,12 @@ typedef void* MTLSharedEvent_id; VkBool32 shaderSubgroupClock VkBool32 shaderDeviceClock - - VkStructureType sType + + VkStructureType sType void* pNext VkBool32 indexTypeUint8 + VkStructureType sType void* pNext @@ -5174,10 +5298,10 @@ typedef void* MTLSharedEvent_id; VkStructureType sType void* pNext - VkShaderStageFlags stages - char name[VK_MAX_DESCRIPTION_SIZE] - char description[VK_MAX_DESCRIPTION_SIZE] - uint32_t subgroupSize + VkShaderStageFlags stages + char name[VK_MAX_DESCRIPTION_SIZE] + char description[VK_MAX_DESCRIPTION_SIZE] + uint32_t subgroupSize VkStructureType sType @@ -5193,19 +5317,19 @@ typedef void* MTLSharedEvent_id; VkStructureType sType - void* pNext - char name[VK_MAX_DESCRIPTION_SIZE] - char description[VK_MAX_DESCRIPTION_SIZE] + void* pNext + char name[VK_MAX_DESCRIPTION_SIZE] + char description[VK_MAX_DESCRIPTION_SIZE] VkPipelineExecutableStatisticFormatKHR format VkPipelineExecutableStatisticValueKHR value VkStructureType sType - void* pNext - char name[VK_MAX_DESCRIPTION_SIZE] - char description[VK_MAX_DESCRIPTION_SIZE] - VkBool32 isText - size_t dataSize + void* pNext + char name[VK_MAX_DESCRIPTION_SIZE] + char description[VK_MAX_DESCRIPTION_SIZE] + VkBool32 isText + size_t dataSize void* pData @@ -5251,7 +5375,7 @@ typedef void* MTLSharedEvent_id; - + VkStructureType sType void* pNext VkRenderPass renderPass @@ -5282,8 +5406,8 @@ typedef void* MTLSharedEvent_id; VkDeviceMemory memory - - VkStructureType sType + + VkStructureType sType void* pNext VkBool32 rectangularLines VkBool32 bresenhamLines @@ -5292,19 +5416,22 @@ typedef void* MTLSharedEvent_id; VkBool32 stippledBresenhamLines VkBool32 stippledSmoothLines - - VkStructureType sType + + + VkStructureType sType void* pNext uint32_t lineSubPixelPrecisionBits - - VkStructureType sType - const void* pNext - VkLineRasterizationModeEXT lineRasterizationMode + + + VkStructureType sType + const void* pNext + VkLineRasterizationModeKHR lineRasterizationMode VkBool32 stippledLineEnable uint32_t lineStippleFactor uint16_t lineStipplePattern + VkStructureType sType void* pNext @@ -5401,56 +5528,56 @@ typedef void* MTLSharedEvent_id; VkStructureType sType void* pNext VkDriverId driverID - char driverName[VK_MAX_DRIVER_NAME_SIZE] - char driverInfo[VK_MAX_DRIVER_INFO_SIZE] + char driverName[VK_MAX_DRIVER_NAME_SIZE] + char driverInfo[VK_MAX_DRIVER_INFO_SIZE] VkConformanceVersion conformanceVersion VkShaderFloatControlsIndependence denormBehaviorIndependence VkShaderFloatControlsIndependence roundingModeIndependence - VkBool32 shaderSignedZeroInfNanPreserveFloat16An implementation can preserve signed zero, nan, inf - VkBool32 shaderSignedZeroInfNanPreserveFloat32An implementation can preserve signed zero, nan, inf - VkBool32 shaderSignedZeroInfNanPreserveFloat64An implementation can preserve signed zero, nan, inf - VkBool32 shaderDenormPreserveFloat16An implementation can preserve denormals - VkBool32 shaderDenormPreserveFloat32An implementation can preserve denormals - VkBool32 shaderDenormPreserveFloat64An implementation can preserve denormals - VkBool32 shaderDenormFlushToZeroFloat16An implementation can flush to zero denormals - VkBool32 shaderDenormFlushToZeroFloat32An implementation can flush to zero denormals - VkBool32 shaderDenormFlushToZeroFloat64An implementation can flush to zero denormals - VkBool32 shaderRoundingModeRTEFloat16An implementation can support RTE - VkBool32 shaderRoundingModeRTEFloat32An implementation can support RTE - VkBool32 shaderRoundingModeRTEFloat64An implementation can support RTE - VkBool32 shaderRoundingModeRTZFloat16An implementation can support RTZ - VkBool32 shaderRoundingModeRTZFloat32An implementation can support RTZ - VkBool32 shaderRoundingModeRTZFloat64An implementation can support RTZ - uint32_t maxUpdateAfterBindDescriptorsInAllPools - VkBool32 shaderUniformBufferArrayNonUniformIndexingNative - VkBool32 shaderSampledImageArrayNonUniformIndexingNative - VkBool32 shaderStorageBufferArrayNonUniformIndexingNative - VkBool32 shaderStorageImageArrayNonUniformIndexingNative - VkBool32 shaderInputAttachmentArrayNonUniformIndexingNative - VkBool32 robustBufferAccessUpdateAfterBind - VkBool32 quadDivergentImplicitLod - uint32_t maxPerStageDescriptorUpdateAfterBindSamplers - uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers - uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers - uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages - uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages - uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments - uint32_t maxPerStageUpdateAfterBindResources - uint32_t maxDescriptorSetUpdateAfterBindSamplers - uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers - uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic - uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers - uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic - uint32_t maxDescriptorSetUpdateAfterBindSampledImages - uint32_t maxDescriptorSetUpdateAfterBindStorageImages - uint32_t maxDescriptorSetUpdateAfterBindInputAttachments - VkResolveModeFlags supportedDepthResolveModessupported depth resolve modes - VkResolveModeFlags supportedStencilResolveModessupported stencil resolve modes - VkBool32 independentResolveNonedepth and stencil resolve modes can be set independently if one of them is none - VkBool32 independentResolvedepth and stencil resolve modes can be set independently - VkBool32 filterMinmaxSingleComponentFormats - VkBool32 filterMinmaxImageComponentMapping - uint64_t maxTimelineSemaphoreValueDifference + VkBool32 shaderSignedZeroInfNanPreserveFloat16An implementation can preserve signed zero, nan, inf + VkBool32 shaderSignedZeroInfNanPreserveFloat32An implementation can preserve signed zero, nan, inf + VkBool32 shaderSignedZeroInfNanPreserveFloat64An implementation can preserve signed zero, nan, inf + VkBool32 shaderDenormPreserveFloat16An implementation can preserve denormals + VkBool32 shaderDenormPreserveFloat32An implementation can preserve denormals + VkBool32 shaderDenormPreserveFloat64An implementation can preserve denormals + VkBool32 shaderDenormFlushToZeroFloat16An implementation can flush to zero denormals + VkBool32 shaderDenormFlushToZeroFloat32An implementation can flush to zero denormals + VkBool32 shaderDenormFlushToZeroFloat64An implementation can flush to zero denormals + VkBool32 shaderRoundingModeRTEFloat16An implementation can support RTE + VkBool32 shaderRoundingModeRTEFloat32An implementation can support RTE + VkBool32 shaderRoundingModeRTEFloat64An implementation can support RTE + VkBool32 shaderRoundingModeRTZFloat16An implementation can support RTZ + VkBool32 shaderRoundingModeRTZFloat32An implementation can support RTZ + VkBool32 shaderRoundingModeRTZFloat64An implementation can support RTZ + uint32_t maxUpdateAfterBindDescriptorsInAllPools + VkBool32 shaderUniformBufferArrayNonUniformIndexingNative + VkBool32 shaderSampledImageArrayNonUniformIndexingNative + VkBool32 shaderStorageBufferArrayNonUniformIndexingNative + VkBool32 shaderStorageImageArrayNonUniformIndexingNative + VkBool32 shaderInputAttachmentArrayNonUniformIndexingNative + VkBool32 robustBufferAccessUpdateAfterBind + VkBool32 quadDivergentImplicitLod + uint32_t maxPerStageDescriptorUpdateAfterBindSamplers + uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers + uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers + uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages + uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages + uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments + uint32_t maxPerStageUpdateAfterBindResources + uint32_t maxDescriptorSetUpdateAfterBindSamplers + uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers + uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic + uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers + uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic + uint32_t maxDescriptorSetUpdateAfterBindSampledImages + uint32_t maxDescriptorSetUpdateAfterBindStorageImages + uint32_t maxDescriptorSetUpdateAfterBindInputAttachments + VkResolveModeFlags supportedDepthResolveModessupported depth resolve modes + VkResolveModeFlags supportedStencilResolveModessupported stencil resolve modes + VkBool32 independentResolveNonedepth and stencil resolve modes can be set independently if one of them is none + VkBool32 independentResolvedepth and stencil resolve modes can be set independently + VkBool32 filterMinmaxSingleComponentFormats + VkBool32 filterMinmaxImageComponentMapping + uint64_t maxTimelineSemaphoreValueDifference VkSampleCountFlags framebufferIntegerColorSampleCounts @@ -5521,7 +5648,7 @@ typedef void* MTLSharedEvent_id; VkBool32 uniformTexelBufferOffsetSingleTexelAlignment VkDeviceSize maxBufferSize - + VkStructureType sType const void* pNext VkPipelineCompilerControlFlagsAMD compilerControlFlags @@ -5539,19 +5666,19 @@ typedef void* MTLSharedEvent_id; VkStructureType sType - void* pNext + const void* pNext uint32_t faultCount VkFaultData*pFaults PFN_vkFaultCallbackFunction pfnFaultCallback VkStructureType sType - void* pNext - char name[VK_MAX_EXTENSION_NAME_SIZE] - char version[VK_MAX_EXTENSION_NAME_SIZE] - VkToolPurposeFlags purposes - char description[VK_MAX_DESCRIPTION_SIZE] - char layer[VK_MAX_EXTENSION_NAME_SIZE] + void* pNext + char name[VK_MAX_EXTENSION_NAME_SIZE] + char version[VK_MAX_EXTENSION_NAME_SIZE] + VkToolPurposeFlags purposes + char description[VK_MAX_DESCRIPTION_SIZE] + char layer[VK_MAX_EXTENSION_NAME_SIZE] @@ -5591,6 +5718,10 @@ typedef void* MTLSharedEvent_id; VkDeviceAddress deviceAddress const void* hostAddress + + VkDeviceAddress deviceAddress + const void* hostAddress + VkStructureType sType const void* pNext @@ -5910,7 +6041,12 @@ typedef void* MTLSharedEvent_id; void*pNext VkBool32 clustercullingShader VkBool32 multiviewClusterCullingShader - + + + VkStructureType sType + void*pNext + VkBool32 clusterShadingRate + VkStructureType sType const void* pNext @@ -6099,7 +6235,7 @@ typedef void* MTLSharedEvent_id; VkFragmentShadingRateNV shadingRate VkFragmentShadingRateCombinerOpKHR combinerOps[2] - + VkStructureType sType const void* pNext VkDeviceSize accelerationStructureSize @@ -6282,6 +6418,89 @@ typedef void* MTLSharedEvent_id; VkBool32 synchronization2 + + VkStructureType sType + void* pNext + VkBool32 hostImageCopy + + + VkStructureType sType + void* pNext + uint32_t copySrcLayoutCount + VkImageLayout* pCopySrcLayouts + uint32_t copyDstLayoutCount + VkImageLayout* pCopyDstLayouts + uint8_t optimalTilingLayoutUUID[VK_UUID_SIZE] + VkBool32 identicalMemoryTypeRequirements + + + VkStructureType sType + const void* pNext + const void* pHostPointer + uint32_t memoryRowLengthSpecified in texels + uint32_t memoryImageHeight + VkImageSubresourceLayers imageSubresource + VkOffset3D imageOffset + VkExtent3D imageExtent + + + VkStructureType sType + const void* pNext + void* pHostPointer + uint32_t memoryRowLengthSpecified in texels + uint32_t memoryImageHeight + VkImageSubresourceLayers imageSubresource + VkOffset3D imageOffset + VkExtent3D imageExtent + + + VkStructureType sType + const void* pNext + VkHostImageCopyFlagsEXT flags + VkImage dstImage + VkImageLayout dstImageLayout + uint32_t regionCount + const VkMemoryToImageCopyEXT* pRegions + + + VkStructureType sType + const void* pNext + VkHostImageCopyFlagsEXT flags + VkImage srcImage + VkImageLayout srcImageLayout + uint32_t regionCount + const VkImageToMemoryCopyEXT* pRegions + + + VkStructureType sType + const void* pNext + VkHostImageCopyFlagsEXT flags + VkImage srcImage + VkImageLayout srcImageLayout + VkImage dstImage + VkImageLayout dstImageLayout + uint32_t regionCount + const VkImageCopy2* pRegions + + + VkStructureType sType + const void* pNext + VkImage image + VkImageLayout oldLayout + VkImageLayout newLayout + VkImageSubresourceRange subresourceRange + + + VkStructureType sType + void* pNext + VkDeviceSize sizeSpecified in bytes + + + VkStructureType sType + void* pNext + VkBool32 optimalDeviceAccessSpecifies if device access is optimal + VkBool32 identicalMemoryLayoutSpecifies if memory layout is identical + VkStructureType sType void* pNext @@ -6358,8 +6577,8 @@ typedef void* MTLSharedEvent_id; VkStructureType sType const void* pNext - VkDeviceSize commandPoolReservedSize - uint32_t commandPoolMaxCommandBuffers + VkDeviceSize commandPoolReservedSize + uint32_t commandPoolMaxCommandBuffers VkStructureType sType @@ -6507,6 +6726,18 @@ typedef void* MTLSharedEvent_id; const VkVideoReferenceSlotInfoKHR* pSetupReferenceSlot uint32_t referenceSlotCount const VkVideoReferenceSlotInfoKHR* pReferenceSlots + + + VkStructureType sType + void* pNext + VkBool32 videoMaintenance1 + + + VkStructureType sType + const void* pNext + VkQueryPool queryPool + uint32_t firstQuery + uint32_t queryCount Video Decode Codec Standard specific structures #include "vk_video/vulkan_video_codec_h264std.h" @@ -6638,6 +6869,44 @@ typedef void* MTLSharedEvent_id; const void* pNext const StdVideoDecodeH265ReferenceInfo* pStdReferenceInfo + #include "vk_video/vulkan_video_codec_av1std.h" + + + + #include "vk_video/vulkan_video_codec_av1std_decode.h" + + + + VkStructureType sType + const void* pNext + StdVideoAV1Profile stdProfile + VkBool32 filmGrainSupport + + + VkStructureType sType + void* pNext + StdVideoAV1Level maxLevel + + + VkStructureType sType + const void* pNext + const StdVideoAV1SequenceHeader* pStdSequenceHeader + + + VkStructureType sType + const void* pNext + const StdVideoDecodeAV1PictureInfo* pStdPictureInfo + int32_t referenceNameSlotIndices[VK_MAX_VIDEO_AV1_REFERENCES_PER_FRAME_KHR] + uint32_t frameHeaderOffset + uint32_t tileCount + const uint32_t* pTileOffsets + const uint32_t* pTileSizes + + + VkStructureType sType + const void* pNext + const StdVideoDecodeAV1ReferenceInfo* pStdReferenceInfo + VkStructureType sType const void* pNext @@ -6663,6 +6932,16 @@ typedef void* MTLSharedEvent_id; const void* pNext uint32_t updateSequenceCount + + VkStructureType sType + const void* pNext + VkVideoSessionParametersKHR videoSessionParameters + + + VkStructureType sType + void* pNext + VkBool32 hasOverrides + VkStructureType sType const void* pNext @@ -6680,7 +6959,7 @@ typedef void* MTLSharedEvent_id; VkStructureType sType const void* pNext - VkVideoCodingControlFlagsKHR flags + VkVideoCodingControlFlagsKHR flags VkStructureType sType @@ -6693,7 +6972,6 @@ typedef void* MTLSharedEvent_id; VkStructureType sType const void* pNext VkVideoEncodeFlagsKHR flags - uint32_t qualityLevel VkBuffer dstBuffer VkDeviceSize dstBufferOffset VkDeviceSize dstBufferRange @@ -6708,23 +6986,40 @@ typedef void* MTLSharedEvent_id; const void* pNext VkVideoEncodeFeedbackFlagsKHR encodeFeedbackFlags - - VkStructureType sType - const void* pNext - VkVideoEncodeRateControlFlagsKHR flags - VkVideoEncodeRateControlModeFlagBitsKHR rateControlMode - uint32_t layerCount - const VkVideoEncodeRateControlLayerInfoKHR* pLayers + + VkStructureType sType + const void* pNext + uint32_t qualityLevel - + + VkStructureType sType + const void* pNext + const VkVideoProfileInfoKHR* pVideoProfile + uint32_t qualityLevel + + + VkStructureType sType + void* pNext + VkVideoEncodeRateControlModeFlagBitsKHR preferredRateControlMode + uint32_t preferredRateControlLayerCount + + + VkStructureType sType + const void* pNext + VkVideoEncodeRateControlFlagsKHR flags + VkVideoEncodeRateControlModeFlagBitsKHR rateControlMode + uint32_t layerCount + const VkVideoEncodeRateControlLayerInfoKHR* pLayers + uint32_t virtualBufferSizeInMs + uint32_t initialVirtualBufferSizeInMs + + VkStructureType sType - const void* pNext - uint64_t averageBitrate - uint64_t maxBitrate - uint32_t frameRateNumerator - uint32_t frameRateDenominator - uint32_t virtualBufferSizeInMs - uint32_t initialVirtualBufferSizeInMs + const void* pNext + uint64_t averageBitrate + uint64_t maxBitrate + uint32_t frameRateNumerator + uint32_t frameRateDenominator VkStructureType sType @@ -6732,22 +7027,40 @@ typedef void* MTLSharedEvent_id; VkVideoEncodeCapabilityFlagsKHR flags VkVideoEncodeRateControlModeFlagsKHR rateControlModes uint32_t maxRateControlLayers + uint64_t maxBitrate uint32_t maxQualityLevels - VkExtent2D inputImageDataFillAlignment + VkExtent2D encodeInputPictureGranularity VkVideoEncodeFeedbackFlagsKHR supportedEncodeFeedbackFlags - - VkStructureType sType + + VkStructureType sType void* pNext - VkVideoEncodeH264CapabilityFlagsEXT flags + VkVideoEncodeH264CapabilityFlagsKHR flags + StdVideoH264LevelIdc maxLevelIdc + uint32_t maxSliceCount uint32_t maxPPictureL0ReferenceCount uint32_t maxBPictureL0ReferenceCount uint32_t maxL1ReferenceCount - VkBool32 motionVectorsOverPicBoundariesFlag - uint32_t maxBytesPerPicDenom - uint32_t maxBitsPerMbDenom - uint32_t log2MaxMvLengthHorizontal - uint32_t log2MaxMvLengthVertical + uint32_t maxTemporalLayerCount + VkBool32 expectDyadicTemporalLayerPattern + int32_t minQp + int32_t maxQp + VkBool32 prefersGopRemainingFrames + VkBool32 requiresGopRemainingFrames + VkVideoEncodeH264StdFlagsKHR stdSyntaxFlags + + + VkStructureType sType + void* pNext + VkVideoEncodeH264RateControlFlagsKHR preferredRateControlFlags + uint32_t preferredGopFrameCount + uint32_t preferredIdrPeriod + uint32_t preferredConsecutiveBFrameCount + uint32_t preferredTemporalLayerCount + VkVideoEncodeH264QpKHR preferredConstantQp + uint32_t preferredMaxL0ReferenceCount + uint32_t preferredMaxL1ReferenceCount + VkBool32 preferredStdEntropyCodingModeFlag #include "vk_video/vulkan_video_codec_h264std_encode.h" @@ -6760,99 +7073,133 @@ typedef void* MTLSharedEvent_id; - - VkStructureType sType - const void* pNext - uint32_t stdSPSCount + + VkStructureType sType + const void* pNext + VkBool32 useMaxLevelIdc + StdVideoH264LevelIdc maxLevelIdc + + + VkStructureType sType + const void* pNext + uint32_t stdSPSCount const StdVideoH264SequenceParameterSet* pStdSPSs - uint32_t stdPPSCount + uint32_t stdPPSCount const StdVideoH264PictureParameterSet* pStdPPSsList of Picture Parameters associated with the spsStd, above - - VkStructureType sType + + VkStructureType sType const void* pNext uint32_t maxStdSPSCount uint32_t maxStdPPSCount - const VkVideoEncodeH264SessionParametersAddInfoEXT* pParametersAddInfo + const VkVideoEncodeH264SessionParametersAddInfoKHR* pParametersAddInfo - - VkStructureType sType + + VkStructureType sType + const void* pNext + VkBool32 writeStdSPS + VkBool32 writeStdPPS + uint32_t stdSPSId + uint32_t stdPPSId + + + VkStructureType sType + void* pNext + VkBool32 hasStdSPSOverrides + VkBool32 hasStdPPSOverrides + + + VkStructureType sType const void* pNext const StdVideoEncodeH264ReferenceInfo* pStdReferenceInfo - - VkStructureType sType + + VkStructureType sType const void* pNext - const StdVideoEncodeH264ReferenceListsInfo* pStdReferenceFinalLists uint32_t naluSliceEntryCount - const VkVideoEncodeH264NaluSliceInfoEXT* pNaluSliceEntries + const VkVideoEncodeH264NaluSliceInfoKHR* pNaluSliceEntries const StdVideoEncodeH264PictureInfo* pStdPictureInfo + VkBool32 generatePrefixNalu - - VkStructureType sType + + VkStructureType sType const void* pNext StdVideoH264ProfileIdc stdProfileIdc - - VkStructureType sType + + VkStructureType sType const void* pNext - uint32_t mbCount - const StdVideoEncodeH264ReferenceListsInfo* pStdReferenceFinalLists + int32_t constantQp const StdVideoEncodeH264SliceHeader* pStdSliceHeader - - VkStructureType sType + + VkStructureType sType const void* pNext + VkVideoEncodeH264RateControlFlagsKHR flags uint32_t gopFrameCount uint32_t idrPeriod uint32_t consecutiveBFrameCount - VkVideoEncodeH264RateControlStructureEXT rateControlStructure uint32_t temporalLayerCount - + int32_t qpI int32_t qpP int32_t qpB - + uint32_t frameISize uint32_t framePSize uint32_t frameBSize - - VkStructureType sType - const void* pNext - uint32_t temporalLayerId - VkBool32 useInitialRcQp - VkVideoEncodeH264QpEXT initialRcQp - VkBool32 useMinQp - VkVideoEncodeH264QpEXT minQp - VkBool32 useMaxQp - VkVideoEncodeH264QpEXT maxQp - VkBool32 useMaxFrameSize - VkVideoEncodeH264FrameSizeEXT maxFrameSize + + VkStructureType sType + const void* pNext + VkBool32 useGopRemainingFrames + uint32_t gopRemainingI + uint32_t gopRemainingP + uint32_t gopRemainingB - - VkStructureType sType + + VkStructureType sType + const void* pNext + VkBool32 useMinQp + VkVideoEncodeH264QpKHR minQp + VkBool32 useMaxQp + VkVideoEncodeH264QpKHR maxQp + VkBool32 useMaxFrameSize + VkVideoEncodeH264FrameSizeKHR maxFrameSize + + + VkStructureType sType void* pNext - VkVideoEncodeH265CapabilityFlagsEXT flags - VkVideoEncodeH265CtbSizeFlagsEXT ctbSizes - VkVideoEncodeH265TransformBlockSizeFlagsEXT transformBlockSizes + VkVideoEncodeH265CapabilityFlagsKHR flags + StdVideoH265LevelIdc maxLevelIdc + uint32_t maxSliceSegmentCount + VkExtent2D maxTiles + VkVideoEncodeH265CtbSizeFlagsKHR ctbSizes + VkVideoEncodeH265TransformBlockSizeFlagsKHR transformBlockSizes uint32_t maxPPictureL0ReferenceCount uint32_t maxBPictureL0ReferenceCount uint32_t maxL1ReferenceCount - uint32_t maxSubLayersCount - uint32_t minLog2MinLumaCodingBlockSizeMinus3 - uint32_t maxLog2MinLumaCodingBlockSizeMinus3 - uint32_t minLog2MinLumaTransformBlockSizeMinus2 - uint32_t maxLog2MinLumaTransformBlockSizeMinus2 - uint32_t minMaxTransformHierarchyDepthInter - uint32_t maxMaxTransformHierarchyDepthInter - uint32_t minMaxTransformHierarchyDepthIntra - uint32_t maxMaxTransformHierarchyDepthIntra - uint32_t maxDiffCuQpDeltaDepth - uint32_t minMaxNumMergeCand - uint32_t maxMaxNumMergeCand + uint32_t maxSubLayerCount + VkBool32 expectDyadicTemporalSubLayerPattern + int32_t minQp + int32_t maxQp + VkBool32 prefersGopRemainingFrames + VkBool32 requiresGopRemainingFrames + VkVideoEncodeH265StdFlagsKHR stdSyntaxFlags + + + VkStructureType sType + void* pNext + VkVideoEncodeH265RateControlFlagsKHR preferredRateControlFlags + uint32_t preferredGopFrameCount + uint32_t preferredIdrPeriod + uint32_t preferredConsecutiveBFrameCount + uint32_t preferredSubLayerCount + VkVideoEncodeH265QpKHR preferredConstantQp + uint32_t preferredMaxL0ReferenceCount + uint32_t preferredMaxL1ReferenceCount #include "vk_video/vulkan_video_codec_h265std_encode.h" @@ -6863,78 +7210,104 @@ typedef void* MTLSharedEvent_id; - - VkStructureType sType + + VkStructureType sType + const void* pNext + VkBool32 useMaxLevelIdc + StdVideoH265LevelIdc maxLevelIdc + + + VkStructureType sType const void* pNext - uint32_t stdVPSCount + uint32_t stdVPSCount const StdVideoH265VideoParameterSet* pStdVPSs - uint32_t stdSPSCount + uint32_t stdSPSCount const StdVideoH265SequenceParameterSet* pStdSPSs - uint32_t stdPPSCount + uint32_t stdPPSCount const StdVideoH265PictureParameterSet* pStdPPSsList of Picture Parameters associated with the spsStd, above - - VkStructureType sType + + VkStructureType sType const void* pNext uint32_t maxStdVPSCount uint32_t maxStdSPSCount uint32_t maxStdPPSCount - const VkVideoEncodeH265SessionParametersAddInfoEXT* pParametersAddInfo + const VkVideoEncodeH265SessionParametersAddInfoKHR* pParametersAddInfo - - VkStructureType sType + + VkStructureType sType + const void* pNext + VkBool32 writeStdVPS + VkBool32 writeStdSPS + VkBool32 writeStdPPS + uint32_t stdVPSId + uint32_t stdSPSId + uint32_t stdPPSId + + + VkStructureType sType + void* pNext + VkBool32 hasStdVPSOverrides + VkBool32 hasStdSPSOverrides + VkBool32 hasStdPPSOverrides + + + VkStructureType sType const void* pNext - const StdVideoEncodeH265ReferenceListsInfo* pStdReferenceFinalLists uint32_t naluSliceSegmentEntryCount - const VkVideoEncodeH265NaluSliceSegmentInfoEXT* pNaluSliceSegmentEntries + const VkVideoEncodeH265NaluSliceSegmentInfoKHR* pNaluSliceSegmentEntries const StdVideoEncodeH265PictureInfo* pStdPictureInfo - - VkStructureType sType + + VkStructureType sType const void* pNext - uint32_t ctbCount - const StdVideoEncodeH265ReferenceListsInfo* pStdReferenceFinalLists + int32_t constantQp const StdVideoEncodeH265SliceSegmentHeader* pStdSliceSegmentHeader - - VkStructureType sType + + VkStructureType sType const void* pNext + VkVideoEncodeH265RateControlFlagsKHR flags uint32_t gopFrameCount uint32_t idrPeriod uint32_t consecutiveBFrameCount - VkVideoEncodeH265RateControlStructureEXT rateControlStructure uint32_t subLayerCount - + int32_t qpI int32_t qpP int32_t qpB - + uint32_t frameISize uint32_t framePSize uint32_t frameBSize - - VkStructureType sType - const void* pNext - uint32_t temporalId - VkBool32 useInitialRcQp - VkVideoEncodeH265QpEXT initialRcQp - VkBool32 useMinQp - VkVideoEncodeH265QpEXT minQp - VkBool32 useMaxQp - VkVideoEncodeH265QpEXT maxQp - VkBool32 useMaxFrameSize - VkVideoEncodeH265FrameSizeEXT maxFrameSize + + VkStructureType sType + const void* pNext + VkBool32 useGopRemainingFrames + uint32_t gopRemainingI + uint32_t gopRemainingP + uint32_t gopRemainingB - - VkStructureType sType + + VkStructureType sType + const void* pNext + VkBool32 useMinQp + VkVideoEncodeH265QpKHR minQp + VkBool32 useMaxQp + VkVideoEncodeH265QpKHR maxQp + VkBool32 useMaxFrameSize + VkVideoEncodeH265FrameSizeKHR maxFrameSize + + + VkStructureType sType const void* pNext StdVideoH265ProfileIdc stdProfileIdc - - VkStructureType sType + + VkStructureType sType const void* pNext const StdVideoEncodeH265ReferenceInfo* pStdReferenceInfo @@ -6975,8 +7348,8 @@ typedef void* MTLSharedEvent_id; VkStructureType sType const void* pNext - size_t dataSize - const void* pData + size_t dataSize + const void* pData VkStructureType sType @@ -7061,7 +7434,7 @@ typedef void* MTLSharedEvent_id; VkStructureType sType void* pNext VkDeviceAddress address - VkBufferUsageFlags usage + VkBufferUsageFlags usage VkStructureType sType @@ -7184,6 +7557,11 @@ typedef void* MTLSharedEvent_id; VkBool32 rayTracingMotionBlur VkBool32 rayTracingMotionBlurPipelineTraceRaysIndirect + + VkStructureType sType + void* pNext + VkBool32 rayTracingValidation + VkStructureType sType @@ -7274,7 +7652,7 @@ typedef void* MTLSharedEvent_id; const void* pNext zx_handle_t collectionToken - + VkStructureType sType void* pNext uint32_t memoryTypeBits @@ -7328,6 +7706,36 @@ typedef void* MTLSharedEvent_id; uint32_t minBufferCountForDedicatedSlack uint32_t minBufferCountForSharedSlack + VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkCudaModuleNV) + VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkCudaFunctionNV) + + VkStructureType sType + const void* pNext + size_t dataSize + const void* pData + + + VkStructureType sType + const void* pNext + VkCudaModuleNV module + const char* pName + + + VkStructureType sType + const void* pNext + VkCudaFunctionNV function + uint32_t gridDimX + uint32_t gridDimY + uint32_t gridDimZ + uint32_t blockDimX + uint32_t blockDimY + uint32_t blockDimZ + uint32_t sharedMemBytes + size_t paramCount + const void* const * pParams + size_t extraCount + const void* const * pExtras + VkStructureType sType void* pNext @@ -7482,7 +7890,7 @@ typedef void* MTLSharedEvent_id; VkStructureType sType - void* pNext + const void* pNext VkGraphicsPipelineLibraryFlagsEXT flags @@ -7502,6 +7910,18 @@ typedef void* MTLSharedEvent_id; size_t descriptorOffset uint32_t descriptorSize + + VkStructureType sType + void* pNext + VkBool32 nestedCommandBuffer + VkBool32 nestedCommandBufferRendering + VkBool32 nestedCommandBufferSimultaneousUse + + + VkStructureType sType + void* pNext + uint32_t maxCommandBufferNestingLevel + VkStructureType sType void* pNext @@ -7522,7 +7942,7 @@ typedef void* MTLSharedEvent_id; VkStructureType sType void* pNext uint32_t identifierSize - uint8_t identifier[VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT] + uint8_t identifier[VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT] VkStructureType sType @@ -7536,7 +7956,7 @@ typedef void* MTLSharedEvent_id; void* pNext VkBool32 imageCompressionControl - + VkStructureType sType void* pNext VkImageCompressionFlagsEXT imageCompressionFlags @@ -7547,16 +7967,18 @@ typedef void* MTLSharedEvent_id; void* pNext VkBool32 imageCompressionControlSwapchain - - VkStructureType sType + + VkStructureType sType void* pNext VkImageSubresource imageSubresource - - VkStructureType sType + + + VkStructureType sType void* pNext VkSubresourceLayout subresourceLayout + VkStructureType sType const void* pNext @@ -7572,7 +7994,7 @@ typedef void* MTLSharedEvent_id; VkSubpassMergeStatusEXT subpassMergeStatus - char description[VK_MAX_DESCRIPTION_SIZE] + char description[VK_MAX_DESCRIPTION_SIZE] uint32_t postMergeIndex @@ -7713,7 +8135,7 @@ typedef void* MTLSharedEvent_id; VkMicromapEXT micromap - + VkStructureType sType void* pNext uint8_t pipelineIdentifier[VK_UUID_SIZE] @@ -7728,6 +8150,11 @@ typedef void* MTLSharedEvent_id; void* pNext VkBool32 shaderEarlyAndLateFragmentTests + + VkStructureType sType + const void* pNext + VkBool32 acquireUnmodifiedMemory + VkStructureType sType const void* pNext @@ -7816,7 +8243,7 @@ typedef void* MTLSharedEvent_id; VkPipelineRobustnessImageBehaviorEXT images - VkStructureType sType + VkStructureType sType void* pNext VkPipelineRobustnessBufferBehaviorEXT defaultRobustnessStorageBuffers VkPipelineRobustnessBufferBehaviorEXT defaultRobustnessUniformBuffers @@ -7960,9 +8387,9 @@ typedef void* MTLSharedEvent_id; VkDeviceSize addressPrecision - char description[VK_MAX_DESCRIPTION_SIZE]Free-form description of the fault - uint64_t vendorFaultCode - uint64_t vendorFaultData + char description[VK_MAX_DESCRIPTION_SIZE]Free-form description of the fault + uint64_t vendorFaultCode + uint64_t vendorFaultData VkStructureType sType @@ -7971,13 +8398,13 @@ typedef void* MTLSharedEvent_id; uint32_t vendorInfoCount VkDeviceSize vendorBinarySizeSpecified in bytes - + VkStructureType sType - void* pNext - char description[VK_MAX_DESCRIPTION_SIZE]Free-form description of the fault - VkDeviceFaultAddressInfoEXT* pAddressInfos - VkDeviceFaultVendorInfoEXT* pVendorInfos - void* pVendorBinaryData + void* pNext + char description[VK_MAX_DESCRIPTION_SIZE]Free-form description of the fault + VkDeviceFaultAddressInfoEXT* pAddressInfos + VkDeviceFaultVendorInfoEXT* pVendorInfos + void* pVendorBinaryData The fields in this structure are non-normative since structure packing is implementation-defined in C. The specification defines the normative layout. @@ -7998,6 +8425,19 @@ typedef void* MTLSharedEvent_id; void* pNext VkBool32 pipelineLibraryGroupHandles + + VkStructureType sType + const void* pNext + float depthBiasConstantFactor + float depthBiasClamp + float depthBiasSlopeFactor + + + VkStructureType sType + const void* pNext + VkDepthBiasRepresentationEXT depthBiasRepresentation + VkBool32 depthBiasExact + VkDeviceAddress srcAddress VkDeviceAddress dstAddress @@ -8017,6 +8457,24 @@ typedef void* MTLSharedEvent_id; void* pNext VkBool32 shaderCoreBuiltins + + VkStructureType sType + const void* pNext + VkFrameBoundaryFlagsEXT flags + uint64_t frameID + uint32_t imageCount + const VkImage* pImages + uint32_t bufferCount + const VkBuffer* pBuffers + uint64_t tagName + size_t tagSize + const void* pTag + + + VkStructureType sType + void* pNext + VkBool32 frameBoundary + VkStructureType sType void* pNext @@ -8079,6 +8537,14 @@ typedef void* MTLSharedEvent_id; uint32_t imageIndexCountNumber of indices to release const uint32_t* pImageIndicesIndices of which presentable images to release + + VkStructureType sType + void* pNext + VkBool32 depthBiasControl + VkBool32 leastRepresentableValueForceUnormRepresentation + VkBool32 floatRepresentation + VkBool32 depthBiasExact + VkStructureType sType void* pNext @@ -8089,6 +8555,18 @@ typedef void* MTLSharedEvent_id; void* pNext VkRayTracingInvocationReorderModeNV rayTracingInvocationReorderReorderingHint + + VkStructureType sType + void* pNext + VkBool32 extendedSparseAddressSpace + + + VkStructureType sType + void* pNext + VkDeviceSize extendedSparseAddressSpaceSizeTotal address space available for extended sparse allocations (bytes) + VkImageUsageFlags extendedSparseImageUsageFlagsBitfield of which image usages are supported for extended sparse allocations + VkBufferUsageFlags extendedSparseBufferUsageFlagsBitfield of which buffer usages are supported for extended sparse allocations + VkStructureType sType void* pNext @@ -8097,7 +8575,7 @@ typedef void* MTLSharedEvent_id; VkStructureType sType - void* pNext + const void* pNext VkDirectDriverLoadingModeLUNARG mode uint32_t driverCount const VkDirectDriverLoadingInfoLUNARG* pDrivers @@ -8112,6 +8590,12 @@ typedef void* MTLSharedEvent_id; void* pNext VkBool32 rayTracingPositionFetch + + VkStructureType sType + const void* pNext + const VkImageCreateInfo* pCreateInfo + const VkImageSubresource2KHR* pSubresource + VkStructureType sType void* pNext @@ -8177,18 +8661,457 @@ typedef void* MTLSharedEvent_id; const VkSpecializationInfo* pSpecializationInfo - VkStructureType sType - void* pNext - VkBool32 shaderTileImageColorReadAccess - VkBool32 shaderTileImageDepthReadAccess - VkBool32 shaderTileImageStencilReadAccess + VkStructureType sType + void* pNext + VkBool32 shaderTileImageColorReadAccess + VkBool32 shaderTileImageDepthReadAccess + VkBool32 shaderTileImageStencilReadAccess - VkStructureType sType + VkStructureType sType + void* pNext + VkBool32 shaderTileImageCoherentReadAccelerated + VkBool32 shaderTileImageReadSampleFromPixelRateInvocation + VkBool32 shaderTileImageReadFromHelperInvocation + + + VkStructureType sType + const void* pNext + struct _screen_buffer* buffer + + + VkStructureType sType + void* pNext + VkDeviceSize allocationSize + uint32_t memoryTypeBits + + + VkStructureType sType + void* pNext + VkFormat format + uint64_t externalFormat + uint64_t screenUsage + VkFormatFeatureFlags formatFeatures + VkComponentMapping samplerYcbcrConversionComponents + VkSamplerYcbcrModelConversion suggestedYcbcrModel + VkSamplerYcbcrRange suggestedYcbcrRange + VkChromaLocation suggestedXChromaOffset + VkChromaLocation suggestedYChromaOffset + + + VkStructureType sType + void* pNext + uint64_t externalFormat + + + VkStructureType sType + void* pNext + VkBool32 screenBufferImport + + + VkStructureType sType + void* pNext + VkBool32 cooperativeMatrix + VkBool32 cooperativeMatrixRobustBufferAccess + + + VkStructureType sType + void* pNext + uint32_t MSize + uint32_t NSize + uint32_t KSize + VkComponentTypeKHR AType + VkComponentTypeKHR BType + VkComponentTypeKHR CType + VkComponentTypeKHR ResultType + VkBool32 saturatingAccumulation + VkScopeKHR scope + + + VkStructureType sType + void* pNext + VkShaderStageFlags cooperativeMatrixSupportedStages + + + VkStructureType sType + void* pNext + uint32_t maxExecutionGraphDepth + uint32_t maxExecutionGraphShaderOutputNodes + uint32_t maxExecutionGraphShaderPayloadSize + uint32_t maxExecutionGraphShaderPayloadCount + uint32_t executionGraphDispatchAddressAlignment + + + VkStructureType sType + void* pNext + VkBool32 shaderEnqueue + + + VkStructureType sType + const void* pNext + VkPipelineCreateFlags flags + uint32_t stageCount + const VkPipelineShaderStageCreateInfo* pStages + const VkPipelineLibraryCreateInfoKHR* pLibraryInfo + VkPipelineLayout layout + VkPipeline basePipelineHandle + int32_t basePipelineIndex + + + VkStructureType sType + const void* pNext + const char* pName + uint32_t index + + + VkStructureType sType + void* pNext + VkDeviceSize size + + + uint32_t nodeIndex + uint32_t payloadCount + VkDeviceOrHostAddressConstAMDX payloads + uint64_t payloadStride + + + uint32_t count + VkDeviceOrHostAddressConstAMDX infos + uint64_t stride + + + VkStructureType sType + const void* pNext + VkResult* pResult + + + VkStructureType sType + const void* pNext + VkShaderStageFlags stageFlags + VkPipelineLayout layout + uint32_t firstSet + uint32_t descriptorSetCount + const VkDescriptorSet* pDescriptorSets + uint32_t dynamicOffsetCount + const uint32_t* pDynamicOffsets + + + VkStructureType sType + const void* pNext + VkPipelineLayout layout + VkShaderStageFlags stageFlags + uint32_t offset + uint32_t size + const void* pValues + + + VkStructureType sType + const void* pNext + VkShaderStageFlags stageFlags + VkPipelineLayout layout + uint32_t set + uint32_t descriptorWriteCount + const VkWriteDescriptorSet* pDescriptorWrites + + + VkStructureType sType + const void* pNext + VkDescriptorUpdateTemplate descriptorUpdateTemplate + VkPipelineLayout layout + uint32_t set + const void* pData + + + VkStructureType sType + const void* pNext + VkShaderStageFlags stageFlags + VkPipelineLayout layout + uint32_t firstSet + uint32_t setCount + const uint32_t* pBufferIndices + const VkDeviceSize* pOffsets + + + VkStructureType sType + const void* pNext + VkShaderStageFlags stageFlags + VkPipelineLayout layout + uint32_t set + + + VkStructureType sType + void* pNext + VkBool32 cubicRangeClamp + + + VkStructureType sType + void* pNext + VkBool32 ycbcrDegamma + + + VkStructureType sType + void* pNext + VkBool32 enableYDegamma + VkBool32 enableCbCrDegamma + + + VkStructureType sType + void* pNext + VkBool32 selectableCubicWeights + + + VkStructureType sType + const void* pNext + VkCubicFilterWeightsQCOM cubicWeights + + + VkStructureType sType + const void* pNext + VkCubicFilterWeightsQCOM cubicWeights + + + VkStructureType sType + void* pNext + VkBool32 textureBlockMatch2 + + + VkStructureType sType + void* pNext + VkExtent2D maxBlockMatchWindow + + + VkStructureType sType + const void* pNext + VkExtent2D windowExtent + VkBlockMatchWindowCompareModeQCOM windowCompareMode + + + VkStructureType sType + void* pNext + VkBool32 descriptorPoolOverallocation + + + VkStructureType sType + void* pNext + VkLayeredDriverUnderlyingApiMSFT underlyingAPI + + + VkStructureType sType + void* pNext + VkBool32 perStageDescriptorSet + VkBool32 dynamicPipelineLayout + + + VkStructureType sType void* pNext - VkBool32 shaderTileImageCoherentReadAccelerated - VkBool32 shaderTileImageReadSampleFromPixelRateInvocation - VkBool32 shaderTileImageReadFromHelperInvocation + VkBool32 externalFormatResolve + + + VkStructureType sType + void* pNext + VkBool32 nullColorAttachmentWithExternalFormatResolve + VkChromaLocation externalFormatResolveChromaOffsetX + VkChromaLocation externalFormatResolveChromaOffsetY + + + VkStructureType sType + void* pNext + VkFormat colorAttachmentFormat + + + VkStructureType sType + const void* pNext + VkBool32 lowLatencyMode + VkBool32 lowLatencyBoost + uint32_t minimumIntervalUs + + + VkStructureType sType + const void* pNext + VkSemaphore signalSemaphore + uint64_t value + + + VkStructureType sType + const void* pNext + uint64_t presentID + VkLatencyMarkerNV marker + + + VkStructureType sType + const void* pNext + uint32_t timingCount + VkLatencyTimingsFrameReportNV* pTimings + + + VkStructureType sType + const void* pNext + uint64_t presentID + uint64_t inputSampleTimeUs + uint64_t simStartTimeUs + uint64_t simEndTimeUs + uint64_t renderSubmitStartTimeUs + uint64_t renderSubmitEndTimeUs + uint64_t presentStartTimeUs + uint64_t presentEndTimeUs + uint64_t driverStartTimeUs + uint64_t driverEndTimeUs + uint64_t osRenderQueueStartTimeUs + uint64_t osRenderQueueEndTimeUs + uint64_t gpuRenderStartTimeUs + uint64_t gpuRenderEndTimeUs + + + VkStructureType sType + const void* pNext + VkOutOfBandQueueTypeNV queueType + + + VkStructureType sType + const void* pNext + uint64_t presentID + + + VkStructureType sType + const void* pNext + VkBool32 latencyModeEnable + + + VkStructureType sType + const void* pNext + uint32_t presentModeCount + VkPresentModeKHR* pPresentModes + + + VkStructureType sType + void* pNext + VkBool32 cudaKernelLaunchFeatures + + + VkStructureType sType + void* pNext + uint32_t computeCapabilityMinor + uint32_t computeCapabilityMajor + + + VkStructureType sType + void* pNext + uint32_t shaderCoreCount + + + VkStructureType sType + void* pNext + VkBool32 schedulingControls + + + VkStructureType sType + void* pNext + VkPhysicalDeviceSchedulingControlsFlagsARM schedulingControlsFlags + + + VkStructureType sType + void* pNext + VkBool32 relaxedLineRasterization + + + VkStructureType sType + void* pNext + VkBool32 renderPassStriped + + + VkStructureType sType + void* pNext + VkExtent2D renderPassStripeGranularity + uint32_t maxRenderPassStripes + + + VkStructureType sType + const void* pNext + VkRect2D stripeArea + + + VkStructureType sType + const void* pNext + uint32_t stripeInfoCount + const VkRenderPassStripeInfoARM* pStripeInfos + + + VkStructureType sType + const void* pNext + uint32_t stripeSemaphoreInfoCount + const VkSemaphoreSubmitInfo* pStripeSemaphoreInfos + + + VkStructureType sType + void* pNext + VkBool32 shaderMaximalReconvergence + + + VkStructureType sType + void* pNext + VkBool32 shaderSubgroupRotate + VkBool32 shaderSubgroupRotateClustered + + + VkStructureType sType + void* pNext + VkBool32 shaderExpectAssume + + + VkStructureType sType + void* pNext + VkBool32 shaderFloatControls2 + + + VkStructureType sType + void* pNext + VkBool32 dynamicRenderingLocalRead + + + VkStructureType sType + const void* pNext + uint32_t colorAttachmentCount + const uint32_t* pColorAttachmentLocations + + + VkStructureType sType + const void* pNext + uint32_t colorAttachmentCount + const uint32_t* pColorAttachmentInputIndices + const uint32_t* pDepthInputAttachmentIndex + const uint32_t* pStencilInputAttachmentIndex + + + VkStructureType sType + void* pNext + VkBool32 shaderQuadControl + + + VkStructureType sType + void* pNext + VkBool32 shaderFloat16VectorAtomics + + + VkStructureType sType + void* pNext + VkBool32 memoryMapPlaced + VkBool32 memoryMapRangePlaced + VkBool32 memoryUnmapReserve + + + VkStructureType sType + void* pNext + VkDeviceSize minPlacedMemoryMapAlignment + + + VkStructureType sType + const void* pNext + void* pPlacedAddress + + + VkStructureType sType + void* pNext + VkBool32 shaderRawAccessChains @@ -8228,6 +9151,8 @@ typedef void* MTLSharedEvent_id; + + @@ -8835,6 +9760,17 @@ typedef void* MTLSharedEvent_id; + + + + + + + + + + + @@ -8871,11 +9807,16 @@ typedef void* MTLSharedEvent_id; - + + + + + + @@ -8931,6 +9872,8 @@ typedef void* MTLSharedEvent_id; + + @@ -9043,11 +9986,11 @@ typedef void* MTLSharedEvent_id; - - - - - + + + + + @@ -9139,6 +10082,16 @@ typedef void* MTLSharedEvent_id; + + + + + + + + + + @@ -9386,6 +10339,7 @@ typedef void* MTLSharedEvent_id; + @@ -9490,25 +10444,6 @@ typedef void* MTLSharedEvent_id; - - - - - - - - - - - - - - - - - - - @@ -9605,11 +10540,15 @@ typedef void* MTLSharedEvent_id; - - - - - + + + + + + + + + @@ -9835,6 +10774,9 @@ typedef void* MTLSharedEvent_id; + + + @@ -9845,6 +10787,9 @@ typedef void* MTLSharedEvent_id; + + + @@ -9892,6 +10837,8 @@ typedef void* MTLSharedEvent_id; + + @@ -9914,10 +10861,12 @@ typedef void* MTLSharedEvent_id; + + @@ -9925,38 +10874,48 @@ typedef void* MTLSharedEvent_id; - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -10031,50 +10990,58 @@ typedef void* MTLSharedEvent_id; - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + - - - - - + + + + + + + + + + @@ -10203,6 +11170,11 @@ typedef void* MTLSharedEvent_id; + + + + + @@ -10227,6 +11199,59 @@ typedef void* MTLSharedEvent_id; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -10345,6 +11370,7 @@ typedef void* MTLSharedEvent_id; uint32_t* pPropertyCount VkLayerProperties* pProperties + VkResult vkEnumerateDeviceExtensionProperties VkPhysicalDevice physicalDevice @@ -10720,11 +11746,11 @@ typedef void* MTLSharedEvent_id; const VkAllocationCallbacks* pAllocator VkPipeline* pPipelines - + VkResult vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI VkDevice device VkRenderPass renderpass - VkExtent2D* pMaxWorkgroupSize + VkExtent2D* pMaxWorkgroupSize void vkDestroyPipeline @@ -10846,6 +11872,12 @@ typedef void* MTLSharedEvent_id; VkRenderPass renderPass VkExtent2D* pGranularity + + void vkGetRenderingAreaGranularityKHR + VkDevice device + const VkRenderingAreaInfoKHR* pRenderingAreaInfo + VkExtent2D* pGranularity + VkResult vkCreateCommandPool VkDevice device @@ -10981,7 +12013,7 @@ typedef void* MTLSharedEvent_id; void vkCmdBindIndexBuffer VkCommandBuffer commandBuffer - VkBuffer buffer + VkBuffer buffer VkDeviceSize offset VkIndexType indexType @@ -11075,6 +12107,12 @@ typedef void* MTLSharedEvent_id; VkBuffer buffer VkDeviceSize offset + + void vkCmdUpdatePipelineIndirectBufferNV + VkCommandBuffer commandBuffer + VkPipelineBindPoint pipelineBindPoint + VkPipeline pipeline + void vkCmdCopyBuffer VkCommandBuffer commandBuffer @@ -11301,7 +12339,7 @@ typedef void* MTLSharedEvent_id; void vkCmdEndRenderPass VkCommandBuffer commandBuffer - + void vkCmdExecuteCommands VkCommandBuffer commandBuffer uint32_t commandBufferCount @@ -12300,8 +13338,8 @@ typedef void* MTLSharedEvent_id; VkDevice device VkImage image int nativeFenceFd - VkSemaphore semaphore - VkFence fence + VkSemaphore semaphore + VkFence fence VkResult vkQueueSignalReleaseImageANDROID @@ -12327,19 +13365,21 @@ typedef void* MTLSharedEvent_id; VkBool32 localDimmingEnable - VkResult vkGetPhysicalDeviceCalibrateableTimeDomainsEXT + VkResult vkGetPhysicalDeviceCalibrateableTimeDomainsKHR VkPhysicalDevice physicalDevice uint32_t* pTimeDomainCount - VkTimeDomainEXT* pTimeDomains + VkTimeDomainKHR* pTimeDomains + - VkResult vkGetCalibratedTimestampsEXT + VkResult vkGetCalibratedTimestampsKHR VkDevice device uint32_t timestampCount - const VkCalibratedTimestampInfoEXT* pTimestampInfos + const VkCalibratedTimestampInfoKHR* pTimestampInfos uint64_t* pTimestamps uint64_t* pMaxDeviation + VkResult vkSetDebugUtilsObjectNameEXT VkDevice device @@ -12402,7 +13442,7 @@ typedef void* MTLSharedEvent_id; VkResult vkGetMemoryHostPointerPropertiesEXT VkDevice device VkExternalMemoryHandleTypeFlagBits handleType - const void* pHostPointer + const void* pHostPointer VkMemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties @@ -12900,7 +13940,7 @@ typedef void* MTLSharedEvent_id; VkDevice device const VkImageViewHandleInfoNVX* pInfo - + VkResult vkGetImageViewAddressNVX VkDevice device VkImageView imageView @@ -13058,17 +14098,18 @@ typedef void* MTLSharedEvent_id; VkPipelineExecutableInternalRepresentationKHR* pInternalRepresentations - void vkCmdSetLineStippleEXT + void vkCmdSetLineStippleKHR VkCommandBuffer commandBuffer uint32_t lineStippleFactor uint16_t lineStipplePattern + VkResult vkGetFaultData VkDevice device VkFaultQueryBehavior faultQueryBehavior VkBool32* pUnrecordedFaults - uint32_t* pFaultCount + uint32_t* pFaultCount VkFaultData* pFaults @@ -13141,6 +14182,17 @@ typedef void* MTLSharedEvent_id; VkDevice device VkDeferredOperationKHR operation + + void vkGetPipelineIndirectMemoryRequirementsNV + VkDevice device + const VkComputePipelineCreateInfo* pCreateInfo + VkMemoryRequirements2* pMemoryRequirements + + + VkDeviceAddress vkGetPipelineIndirectDeviceAddressNV + VkDevice device + const VkPipelineIndirectDeviceAddressInfoNV* pInfo + void vkCmdSetCullMode VkCommandBuffer commandBuffer @@ -13173,6 +14225,14 @@ typedef void* MTLSharedEvent_id; const VkRect2D* pScissors + + void vkCmdBindIndexBuffer2KHR + VkCommandBuffer commandBuffer + VkBuffer buffer + VkDeviceSize offset + VkDeviceSize size + VkIndexType indexType + void vkCmdBindVertexBuffers2 VkCommandBuffer commandBuffer @@ -13597,6 +14657,27 @@ typedef void* MTLSharedEvent_id; uint32_t* pCheckpointDataCount VkCheckpointData2NV* pCheckpointData + + VkResult vkCopyMemoryToImageEXT + VkDevice device + const VkCopyMemoryToImageInfoEXT* pCopyMemoryToImageInfo + + + VkResult vkCopyImageToMemoryEXT + VkDevice device + const VkCopyImageToMemoryInfoEXT* pCopyImageToMemoryInfo + + + VkResult vkCopyImageToImageEXT + VkDevice device + const VkCopyImageToImageInfoEXT* pCopyImageToImageInfo + + + VkResult vkTransitionImageLayoutEXT + VkDevice device + uint32_t transitionCount + const VkHostImageLayoutTransitionInfoEXT* pTransitions + void vkGetCommandPoolMemoryConsumption VkDevice device @@ -13617,6 +14698,12 @@ typedef void* MTLSharedEvent_id; uint32_t* pVideoFormatPropertyCount VkVideoFormatPropertiesKHR* pVideoFormatProperties + + VkResult vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR + VkPhysicalDevice physicalDevice + const VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR* pQualityLevelInfo + VkVideoEncodeQualityLevelPropertiesKHR* pQualityLevelProperties + VkResult vkCreateVideoSessionKHR VkDevice device @@ -13643,6 +14730,14 @@ typedef void* MTLSharedEvent_id; VkVideoSessionParametersKHR videoSessionParameters const VkVideoSessionParametersUpdateInfoKHR* pUpdateInfo + + VkResult vkGetEncodedVideoSessionParametersKHR + VkDevice device + const VkVideoEncodeSessionParametersGetInfoKHR* pVideoSessionParametersInfo + VkVideoEncodeSessionParametersFeedbackInfoKHR* pFeedbackInfo + size_t* pDataSize + void* pData + void vkDestroyVideoSessionParametersKHR VkDevice device @@ -13862,6 +14957,44 @@ typedef void* MTLSharedEvent_id; VkBufferCollectionFUCHSIA collection VkBufferCollectionPropertiesFUCHSIA* pProperties + + VkResult vkCreateCudaModuleNV + VkDevice device + const VkCudaModuleCreateInfoNV* pCreateInfo + const VkAllocationCallbacks* pAllocator + VkCudaModuleNV* pModule + + + VkResult vkGetCudaModuleCacheNV + VkDevice device + VkCudaModuleNV module + size_t* pCacheSize + void* pCacheData + + + VkResult vkCreateCudaFunctionNV + VkDevice device + const VkCudaFunctionCreateInfoNV* pCreateInfo + const VkAllocationCallbacks* pAllocator + VkCudaFunctionNV* pFunction + + + void vkDestroyCudaModuleNV + VkDevice device + VkCudaModuleNV module + const VkAllocationCallbacks* pAllocator + + + void vkDestroyCudaFunctionNV + VkDevice device + VkCudaFunctionNV function + const VkAllocationCallbacks* pAllocator + + + void vkCmdCudaLaunchKernelNV + VkCommandBuffer commandBuffer + const VkCudaLaunchInfoNV* pLaunchInfo + void vkCmdBeginRendering VkCommandBuffer commandBuffer @@ -13990,12 +15123,13 @@ typedef void* MTLSharedEvent_id; VkShaderModuleIdentifierEXT* pIdentifier - void vkGetImageSubresourceLayout2EXT - VkDevice device - VkImage image - const VkImageSubresource2EXT* pSubresource - VkSubresourceLayout2EXT* pLayout + void vkGetImageSubresourceLayout2KHR + VkDevice device + VkImage image + const VkImageSubresource2KHR* pSubresource + VkSubresourceLayout2KHR* pLayout + VkResult vkGetPipelinePropertiesEXT VkDevice device @@ -14060,23 +15194,34 @@ typedef void* MTLSharedEvent_id; VkDeviceFaultCountsEXT* pFaultCounts VkDeviceFaultInfoEXT* pFaultInfo + + void vkCmdSetDepthBias2EXT + VkCommandBuffer commandBuffer + const VkDepthBiasInfoEXT* pDepthBiasInfo + VkResult vkReleaseSwapchainImagesEXT VkDevice device const VkReleaseSwapchainImagesInfoEXT* pReleaseInfo + + void vkGetDeviceImageSubresourceLayoutKHR + VkDevice device + const VkDeviceImageSubresourceInfoKHR* pInfo + VkSubresourceLayout2KHR* pLayout + VkResult vkMapMemory2KHR VkDevice device const VkMemoryMapInfoKHR* pMemoryMapInfo void** ppData - + VkResult vkUnmapMemory2KHR VkDevice device const VkMemoryUnmapInfoKHR* pMemoryUnmapInfo - + VkResult vkCreateShadersEXT VkDevice device uint32_t createInfoCount @@ -14087,7 +15232,7 @@ typedef void* MTLSharedEvent_id; void vkDestroyShaderEXT VkDevice device - VkShaderEXT shader + VkShaderEXT shader const VkAllocationCallbacks* pAllocator @@ -14104,6 +15249,132 @@ typedef void* MTLSharedEvent_id; const VkShaderStageFlagBits* pStages const VkShaderEXT* pShaders + + VkResult vkGetScreenBufferPropertiesQNX + VkDevice device + const struct _screen_buffer* buffer + VkScreenBufferPropertiesQNX* pProperties + + + VkResult vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR + VkPhysicalDevice physicalDevice + uint32_t* pPropertyCount + VkCooperativeMatrixPropertiesKHR* pProperties + + + VkResult vkGetExecutionGraphPipelineScratchSizeAMDX + VkDevice device + VkPipeline executionGraph + VkExecutionGraphPipelineScratchSizeAMDX* pSizeInfo + + + VkResult vkGetExecutionGraphPipelineNodeIndexAMDX + VkDevice device + VkPipeline executionGraph + const VkPipelineShaderStageNodeCreateInfoAMDX* pNodeInfo + uint32_t* pNodeIndex + + + VkResult vkCreateExecutionGraphPipelinesAMDX + VkDevice device + VkPipelineCache pipelineCache + uint32_t createInfoCount + const VkExecutionGraphPipelineCreateInfoAMDX* pCreateInfos + const VkAllocationCallbacks* pAllocator + VkPipeline* pPipelines + + + void vkCmdInitializeGraphScratchMemoryAMDX + VkCommandBuffer commandBuffer + VkDeviceAddress scratch + + + void vkCmdDispatchGraphAMDX + VkCommandBuffer commandBuffer + VkDeviceAddress scratch + const VkDispatchGraphCountInfoAMDX* pCountInfo + + + void vkCmdDispatchGraphIndirectAMDX + VkCommandBuffer commandBuffer + VkDeviceAddress scratch + const VkDispatchGraphCountInfoAMDX* pCountInfo + + + void vkCmdDispatchGraphIndirectCountAMDX + VkCommandBuffer commandBuffer + VkDeviceAddress scratch + VkDeviceAddress countInfo + + + void vkCmdBindDescriptorSets2KHR + VkCommandBuffer commandBuffer + const VkBindDescriptorSetsInfoKHR* pBindDescriptorSetsInfo + + + void vkCmdPushConstants2KHR + VkCommandBuffer commandBuffer + const VkPushConstantsInfoKHR* pPushConstantsInfo + + + void vkCmdPushDescriptorSet2KHR + VkCommandBuffer commandBuffer + const VkPushDescriptorSetInfoKHR* pPushDescriptorSetInfo + + + void vkCmdPushDescriptorSetWithTemplate2KHR + VkCommandBuffer commandBuffer + const VkPushDescriptorSetWithTemplateInfoKHR* pPushDescriptorSetWithTemplateInfo + + + void vkCmdSetDescriptorBufferOffsets2EXT + VkCommandBuffer commandBuffer + const VkSetDescriptorBufferOffsetsInfoEXT* pSetDescriptorBufferOffsetsInfo + + + void vkCmdBindDescriptorBufferEmbeddedSamplers2EXT + VkCommandBuffer commandBuffer + const VkBindDescriptorBufferEmbeddedSamplersInfoEXT* pBindDescriptorBufferEmbeddedSamplersInfo + + + VkResult vkSetLatencySleepModeNV + VkDevice device + VkSwapchainKHR swapchain + const VkLatencySleepModeInfoNV* pSleepModeInfo + + + VkResult vkLatencySleepNV + VkDevice device + VkSwapchainKHR swapchain + const VkLatencySleepInfoNV* pSleepInfo + + + void vkSetLatencyMarkerNV + VkDevice device + VkSwapchainKHR swapchain + const VkSetLatencyMarkerInfoNV* pLatencyMarkerInfo + + + void vkGetLatencyTimingsNV + VkDevice device + VkSwapchainKHR swapchain + VkGetLatencyMarkerInfoNV* pLatencyMarkerInfo + + + void vkQueueNotifyOutOfBandNV + VkQueue queue + const VkOutOfBandQueueTypeInfoNV* pQueueTypeInfo + + + void vkCmdSetRenderingAttachmentLocationsKHR + VkCommandBuffer commandBuffer + const VkRenderingAttachmentLocationInfoKHR* pLocationInfo + + + void vkCmdSetRenderingInputAttachmentIndicesKHR + VkCommandBuffer commandBuffer + const VkRenderingInputAttachmentIndexInfoKHR* pLocationInfo + @@ -14261,6 +15532,7 @@ typedef void* MTLSharedEvent_id; + @@ -15486,13 +16758,11 @@ typedef void* MTLSharedEvent_id; - - @@ -15772,7 +17042,7 @@ typedef void* MTLSharedEvent_id; - + @@ -15851,7 +17121,7 @@ typedef void* MTLSharedEvent_id; - + @@ -15940,9 +17210,9 @@ typedef void* MTLSharedEvent_id; - + - + @@ -15976,7 +17246,7 @@ typedef void* MTLSharedEvent_id; - + @@ -16005,7 +17275,7 @@ typedef void* MTLSharedEvent_id; - + @@ -16047,8 +17317,6 @@ typedef void* MTLSharedEvent_id; - - @@ -16060,6 +17328,10 @@ typedef void* MTLSharedEvent_id; + + + + @@ -16117,76 +17389,101 @@ typedef void* MTLSharedEvent_id; - + - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + - + @@ -16205,7 +17502,7 @@ typedef void* MTLSharedEvent_id; - + @@ -16229,7 +17526,7 @@ typedef void* MTLSharedEvent_id; - + @@ -16308,7 +17605,7 @@ typedef void* MTLSharedEvent_id; - + @@ -16321,7 +17618,7 @@ typedef void* MTLSharedEvent_id; - + @@ -16330,7 +17627,7 @@ typedef void* MTLSharedEvent_id; - + @@ -16490,9 +17787,9 @@ typedef void* MTLSharedEvent_id; - + - + @@ -16559,7 +17856,7 @@ typedef void* MTLSharedEvent_id; - + @@ -16600,7 +17897,7 @@ typedef void* MTLSharedEvent_id; - + @@ -16633,7 +17930,7 @@ typedef void* MTLSharedEvent_id; - + @@ -16647,7 +17944,7 @@ typedef void* MTLSharedEvent_id; - + @@ -16685,7 +17982,7 @@ typedef void* MTLSharedEvent_id; - + @@ -16749,7 +18046,7 @@ typedef void* MTLSharedEvent_id; - + @@ -16767,7 +18064,7 @@ typedef void* MTLSharedEvent_id; - + @@ -16786,7 +18083,7 @@ typedef void* MTLSharedEvent_id; - + @@ -16796,7 +18093,7 @@ typedef void* MTLSharedEvent_id; - + @@ -16947,7 +18244,7 @@ typedef void* MTLSharedEvent_id; - + @@ -16968,7 +18265,7 @@ typedef void* MTLSharedEvent_id; - + @@ -17004,7 +18301,7 @@ typedef void* MTLSharedEvent_id; - + @@ -17043,7 +18340,7 @@ typedef void* MTLSharedEvent_id; - + @@ -17065,7 +18362,7 @@ typedef void* MTLSharedEvent_id; - + @@ -17080,7 +18377,7 @@ typedef void* MTLSharedEvent_id; - + @@ -17104,10 +18401,12 @@ typedef void* MTLSharedEvent_id; - + - - + + + + @@ -17122,7 +18421,7 @@ typedef void* MTLSharedEvent_id; - + @@ -17267,7 +18566,7 @@ typedef void* MTLSharedEvent_id; - + @@ -17330,14 +18629,14 @@ typedef void* MTLSharedEvent_id; - + - + @@ -17383,7 +18682,7 @@ typedef void* MTLSharedEvent_id; - + @@ -17404,12 +18703,12 @@ typedef void* MTLSharedEvent_id; - + - + @@ -17442,17 +18741,50 @@ typedef void* MTLSharedEvent_id; - + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - + + + + + + + + + + @@ -17467,7 +18799,7 @@ typedef void* MTLSharedEvent_id; - + @@ -17637,7 +18969,7 @@ typedef void* MTLSharedEvent_id; - + @@ -17663,7 +18995,6 @@ typedef void* MTLSharedEvent_id; - @@ -17722,9 +19053,12 @@ typedef void* MTLSharedEvent_id; - + + + + @@ -17818,7 +19152,7 @@ typedef void* MTLSharedEvent_id; - + @@ -17828,7 +19162,6 @@ typedef void* MTLSharedEvent_id; - @@ -17899,6 +19232,7 @@ typedef void* MTLSharedEvent_id; + @@ -17914,7 +19248,7 @@ typedef void* MTLSharedEvent_id; - + @@ -17937,7 +19271,7 @@ typedef void* MTLSharedEvent_id; - + @@ -17967,7 +19301,7 @@ typedef void* MTLSharedEvent_id; - + @@ -17998,7 +19332,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18008,7 +19342,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18036,7 +19370,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18068,7 +19402,6 @@ typedef void* MTLSharedEvent_id; - @@ -18113,7 +19446,6 @@ typedef void* MTLSharedEvent_id; - @@ -18131,8 +19463,14 @@ typedef void* MTLSharedEvent_id; + + + + + + - + @@ -18148,7 +19486,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18169,7 +19507,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18181,7 +19519,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18189,16 +19527,13 @@ typedef void* MTLSharedEvent_id; - + - - - - + @@ -18228,7 +19563,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18258,7 +19593,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18290,18 +19625,22 @@ typedef void* MTLSharedEvent_id; - + - + + + + + - + @@ -18317,7 +19656,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18336,7 +19675,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18360,13 +19699,13 @@ typedef void* MTLSharedEvent_id; - + - - - - - + + + + + @@ -18408,10 +19747,9 @@ typedef void* MTLSharedEvent_id; - - + @@ -18435,7 +19773,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18454,7 +19792,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18478,7 +19816,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18486,7 +19824,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18504,7 +19842,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18512,7 +19850,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18520,7 +19858,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18534,7 +19872,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18546,7 +19884,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18579,7 +19917,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18626,7 +19964,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18642,7 +19980,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18689,7 +20027,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18709,7 +20047,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18726,7 +20064,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18768,7 +20106,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18792,7 +20130,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18812,7 +20150,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18834,10 +20172,19 @@ typedef void* MTLSharedEvent_id; - + - - + + + + + + + + + + + @@ -18854,10 +20201,12 @@ typedef void* MTLSharedEvent_id; - + - - + + + + @@ -18874,7 +20223,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18892,7 +20241,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18900,7 +20249,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18920,7 +20269,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18929,7 +20278,7 @@ typedef void* MTLSharedEvent_id; - + @@ -18976,9 +20325,9 @@ typedef void* MTLSharedEvent_id; - + - + @@ -18995,7 +20344,7 @@ typedef void* MTLSharedEvent_id; - + @@ -19004,13 +20353,28 @@ typedef void* MTLSharedEvent_id; + + + + + + + + + + + + + + + - + @@ -19041,7 +20405,7 @@ typedef void* MTLSharedEvent_id; - + @@ -19049,7 +20413,7 @@ typedef void* MTLSharedEvent_id; - + @@ -19062,7 +20426,7 @@ typedef void* MTLSharedEvent_id; - + @@ -19131,14 +20495,14 @@ typedef void* MTLSharedEvent_id; - + - - - - + + + + @@ -19154,7 +20518,7 @@ typedef void* MTLSharedEvent_id; - + @@ -19181,12 +20545,12 @@ typedef void* MTLSharedEvent_id; - + - - + + @@ -19245,7 +20609,7 @@ typedef void* MTLSharedEvent_id; - + @@ -19270,12 +20634,42 @@ typedef void* MTLSharedEvent_id; - + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -19286,15 +20680,24 @@ typedef void* MTLSharedEvent_id; + - + - - + + + + + + + + + + @@ -19321,7 +20724,7 @@ typedef void* MTLSharedEvent_id; - + @@ -19349,7 +20752,7 @@ typedef void* MTLSharedEvent_id; - + This extension requires buffer_device_address functionality. @@ -19397,7 +20800,7 @@ typedef void* MTLSharedEvent_id; - + @@ -19407,13 +20810,13 @@ typedef void* MTLSharedEvent_id; - + - + @@ -19433,9 +20836,9 @@ typedef void* MTLSharedEvent_id; - + - + @@ -19444,13 +20847,21 @@ typedef void* MTLSharedEvent_id; - + - - + + + + + + + + + + - + @@ -19559,7 +20970,7 @@ typedef void* MTLSharedEvent_id; - + @@ -19577,7 +20988,7 @@ typedef void* MTLSharedEvent_id; - + @@ -19587,7 +20998,7 @@ typedef void* MTLSharedEvent_id; - + @@ -19613,7 +21024,7 @@ typedef void* MTLSharedEvent_id; - + @@ -19633,36 +21044,43 @@ typedef void* MTLSharedEvent_id; - + - + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + @@ -19688,14 +21106,23 @@ typedef void* MTLSharedEvent_id; + + + + + + + + + - - - + + + - + @@ -19707,47 +21134,71 @@ typedef void* MTLSharedEvent_id; - + - + - + - + - + - + - + - - + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -19763,11 +21214,16 @@ typedef void* MTLSharedEvent_id; - + - + + + + + + @@ -19937,7 +21393,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20015,7 +21471,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20033,7 +21489,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20041,7 +21497,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20065,7 +21521,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20175,9 +21631,9 @@ typedef void* MTLSharedEvent_id; - + - + @@ -20197,7 +21653,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20239,7 +21695,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20247,9 +21703,9 @@ typedef void* MTLSharedEvent_id; - + - + @@ -20261,7 +21717,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20289,7 +21745,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20307,7 +21763,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20327,7 +21783,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20394,7 +21850,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20404,7 +21860,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20418,7 +21874,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20428,7 +21884,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20454,7 +21910,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20482,7 +21938,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20510,13 +21966,12 @@ typedef void* MTLSharedEvent_id; - + - @@ -20546,6 +22001,9 @@ typedef void* MTLSharedEvent_id; + + + @@ -20560,15 +22018,16 @@ typedef void* MTLSharedEvent_id; - + - + - + + @@ -20577,7 +22036,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20589,7 +22048,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20603,7 +22062,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20672,13 +22131,19 @@ typedef void* MTLSharedEvent_id; - + - - + + + + + + + + - + @@ -20780,11 +22245,11 @@ typedef void* MTLSharedEvent_id; - + - + @@ -20798,7 +22263,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20821,7 +22286,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20831,7 +22296,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20845,7 +22310,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20871,7 +22336,7 @@ typedef void* MTLSharedEvent_id; - + @@ -20937,9 +22402,9 @@ typedef void* MTLSharedEvent_id; - + - + @@ -20965,11 +22430,11 @@ typedef void* MTLSharedEvent_id; - + - - + + @@ -20991,12 +22456,13 @@ typedef void* MTLSharedEvent_id; - + - + + @@ -21004,6 +22470,7 @@ typedef void* MTLSharedEvent_id; + @@ -21093,19 +22560,31 @@ typedef void* MTLSharedEvent_id; - + - - + + + + + + - + - - + + + + + + + + + + - + @@ -21123,7 +22602,7 @@ typedef void* MTLSharedEvent_id; - + @@ -21137,7 +22616,7 @@ typedef void* MTLSharedEvent_id; - + @@ -21145,7 +22624,7 @@ typedef void* MTLSharedEvent_id; - + @@ -21160,13 +22639,23 @@ typedef void* MTLSharedEvent_id; - + - - + + + + + + + + + + + + - + @@ -21179,7 +22668,7 @@ typedef void* MTLSharedEvent_id; - + @@ -21193,7 +22682,7 @@ typedef void* MTLSharedEvent_id; - + @@ -21208,26 +22697,41 @@ typedef void* MTLSharedEvent_id; - + - - + + + + + + + + + + + + + + + - - + + + + - + - + @@ -21249,10 +22753,12 @@ typedef void* MTLSharedEvent_id; - + - - + + + + @@ -21283,7 +22789,7 @@ typedef void* MTLSharedEvent_id; - + @@ -21291,7 +22797,7 @@ typedef void* MTLSharedEvent_id; - + @@ -21307,7 +22813,7 @@ typedef void* MTLSharedEvent_id; - + @@ -21343,6 +22849,7 @@ typedef void* MTLSharedEvent_id; + @@ -21375,13 +22882,19 @@ typedef void* MTLSharedEvent_id; - + - - + + + + + + + + - + @@ -21389,12 +22902,15 @@ typedef void* MTLSharedEvent_id; + - + - - + + + + @@ -21403,13 +22919,12 @@ typedef void* MTLSharedEvent_id; - + - @@ -21420,31 +22935,10 @@ typedef void* MTLSharedEvent_id; - - - - - - - - - - - - - - - - - - - - - @@ -21455,25 +22949,79 @@ typedef void* MTLSharedEvent_id; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -21489,7 +23037,7 @@ typedef void* MTLSharedEvent_id; - + @@ -21519,7 +23067,7 @@ typedef void* MTLSharedEvent_id; - + @@ -21533,7 +23081,7 @@ typedef void* MTLSharedEvent_id; - + @@ -21550,7 +23098,7 @@ typedef void* MTLSharedEvent_id; - + @@ -21566,7 +23114,7 @@ typedef void* MTLSharedEvent_id; - + @@ -21611,7 +23159,7 @@ typedef void* MTLSharedEvent_id; - + @@ -21619,14 +23167,11 @@ typedef void* MTLSharedEvent_id; - - - - + - + @@ -21640,13 +23185,22 @@ typedef void* MTLSharedEvent_id; + - + - - - + + + + + + + + + + + @@ -21655,10 +23209,135 @@ typedef void* MTLSharedEvent_id; - + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -21707,6 +23386,7 @@ typedef void* MTLSharedEvent_id; + @@ -21730,7 +23410,7 @@ typedef void* MTLSharedEvent_id; - + @@ -21741,7 +23421,8 @@ typedef void* MTLSharedEvent_id; - + + @@ -21787,26 +23468,32 @@ typedef void* MTLSharedEvent_id; + + + + + + + + + + + + + + + + - - - - - - - - - - @@ -21824,14 +23511,39 @@ typedef void* MTLSharedEvent_id; + + + + + + + + + + + + + + + + + + + + + + + + - - + + + - + @@ -21841,10 +23553,12 @@ typedef void* MTLSharedEvent_id; + + - + @@ -21866,7 +23580,7 @@ typedef void* MTLSharedEvent_id; - + @@ -21928,12 +23642,17 @@ typedef void* MTLSharedEvent_id; + - + - - + + + + + + @@ -21962,13 +23681,17 @@ typedef void* MTLSharedEvent_id; - + - - + + + + + + - + @@ -21986,7 +23709,7 @@ typedef void* MTLSharedEvent_id; - + @@ -22024,19 +23747,53 @@ typedef void* MTLSharedEvent_id; - + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - + + + + + + + + + + + - + @@ -22044,9 +23801,10 @@ typedef void* MTLSharedEvent_id; + - + @@ -22058,7 +23816,7 @@ typedef void* MTLSharedEvent_id; - + @@ -22074,10 +23832,22 @@ typedef void* MTLSharedEvent_id; - + - - + + + + + + + + + + + + + + @@ -22092,19 +23862,26 @@ typedef void* MTLSharedEvent_id; - + - - - - + + + + + + + + + - + - - - + + + + + @@ -22113,31 +23890,52 @@ typedef void* MTLSharedEvent_id; - + - - + + + + + + + + + - + - - + + + + + + + + + - + - - + + + + + + - + - - + + + + + - + @@ -22149,7 +23947,7 @@ typedef void* MTLSharedEvent_id; - + @@ -22159,16 +23957,25 @@ typedef void* MTLSharedEvent_id; - + - - + + + + + + + + + - + - - + + + + @@ -22177,23 +23984,39 @@ typedef void* MTLSharedEvent_id; - + - - + + + + - + - - - + + + + + + + + + + + + + + - + - - + + + + + @@ -22202,6 +24025,337 @@ typedef void* MTLSharedEvent_id; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -22238,8 +24392,8 @@ typedef void* MTLSharedEvent_id; - + @@ -22248,6 +24402,15 @@ typedef void* MTLSharedEvent_id; + + + + + + + + + @@ -22796,15 +24959,15 @@ typedef void* MTLSharedEvent_id; - + - + - + @@ -22842,7 +25005,7 @@ typedef void* MTLSharedEvent_id; - + @@ -22924,15 +25087,15 @@ typedef void* MTLSharedEvent_id; - + - - + + @@ -23731,21 +25894,21 @@ typedef void* MTLSharedEvent_id; - + - + - + @@ -23762,7 +25925,7 @@ typedef void* MTLSharedEvent_id; - + @@ -23771,23 +25934,29 @@ typedef void* MTLSharedEvent_id; + + + - + - + + + + @@ -23800,6 +25969,42 @@ typedef void* MTLSharedEvent_id; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -23872,6 +26077,9 @@ typedef void* MTLSharedEvent_id; + + + @@ -23934,12 +26142,12 @@ typedef void* MTLSharedEvent_id; - + - + @@ -24259,6 +26467,9 @@ typedef void* MTLSharedEvent_id; + + + @@ -24286,5 +26497,364 @@ typedef void* MTLSharedEvent_id; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Fragment shader stage is added by the VK_EXT_shader_tile_image extension + + + + + + + Fragment shader stage is added by the VK_EXT_shader_tile_image extension + + + + + + + + + + + + + + + + + + + TODO/Suggestion. Introduce 'synclist' (could be a different name) element + that specifies the list of stages, accesses, etc. This list can be used by + 'syncaccess' or 'syncstage' elements. For example, 'syncsupport' in addition to the + 'stage' attribute can support 'list' attribute to reference 'synclist'. + We can have the lists defined for ALL stages and it can be shared between MEMORY_READ + and MEMORY_WRITE accesses. Similarly, ALL shader stages list is often used. This proposal + is a way to fix duplication problem. When new stage is added multiple places needs to be + updated. It is potential source of bugs. The expectation such setup will produce more + robust system and also more simple structure to review and validate. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT + VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT + VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT + VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT + VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT + VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT + VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT + VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT + VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR + VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT + VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT + VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT + VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT + VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT + VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT + + + VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT + VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_EXT + VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_EXT + VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR + VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT + VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT + VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT + VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT + VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT + VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT + + + VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT + VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT + VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT + + + VK_PIPELINE_STAGE_2_TRANSFER_BIT + + + VK_PIPELINE_STAGE_2_HOST_BIT + + + VK_PIPELINE_STAGE_2_SUBPASS_SHADER_BIT_HUAWEI + + + VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV + + + VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR + + + VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR + + + VK_PIPELINE_STAGE_2_MICROMAP_BUILD_BIT_EXT + + + VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT + VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR + + + VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR + + + VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR + + + VK_PIPELINE_STAGE_2_OPTICAL_FLOW_BIT_NV + +