| <?xml version="1.0" encoding="UTF-8"?> |
| <registry> |
| <comment> |
| Copyright 2015-2024 The Khronos Group Inc. |
| |
| SPDX-License-Identifier: Apache-2.0 OR MIT |
| </comment> |
| |
| <comment> |
| This file, vk.xml, is the Vulkan API Registry. It is a critically important |
| and normative part of the Vulkan Specification, including a canonical |
| machine-readable definition of the API, parameter and member validation |
| language incorporated into the Specification and reference pages, and other |
| material which is registered by Khronos, such as tags used by extension and |
| layer authors. The authoritative public version of vk.xml is maintained in |
| the default branch (currently named main) of the Khronos Vulkan GitHub |
| project. The authoritative private version is maintained in the default |
| branch of the member gitlab server. |
| </comment> |
| |
| <platforms comment="Vulkan platform names, reserved for use with platform- and window system-specific extensions"> |
| <platform name="xlib" protect="VK_USE_PLATFORM_XLIB_KHR" comment="X Window System, Xlib client library"/> |
| <platform name="xlib_xrandr" protect="VK_USE_PLATFORM_XLIB_XRANDR_EXT" comment="X Window System, Xlib client library, XRandR extension"/> |
| <platform name="xcb" protect="VK_USE_PLATFORM_XCB_KHR" comment="X Window System, Xcb client library"/> |
| <platform name="wayland" protect="VK_USE_PLATFORM_WAYLAND_KHR" comment="Wayland display server protocol"/> |
| <platform name="directfb" protect="VK_USE_PLATFORM_DIRECTFB_EXT" comment="DirectFB library"/> |
| <platform name="android" protect="VK_USE_PLATFORM_ANDROID_KHR" comment="Android OS"/> |
| <platform name="win32" protect="VK_USE_PLATFORM_WIN32_KHR" comment="Microsoft Win32 API (also refers to Win64 apps)"/> |
| <platform name="vi" protect="VK_USE_PLATFORM_VI_NN" comment="Nintendo Vi"/> |
| <platform name="ios" protect="VK_USE_PLATFORM_IOS_MVK" comment="Apple IOS"/> |
| <platform name="macos" protect="VK_USE_PLATFORM_MACOS_MVK" comment="Apple MacOS"/> |
| <platform name="metal" protect="VK_USE_PLATFORM_METAL_EXT" comment="Metal on CoreAnimation on Apple platforms"/> |
| <platform name="fuchsia" protect="VK_USE_PLATFORM_FUCHSIA" comment="Fuchsia"/> |
| <platform name="ggp" protect="VK_USE_PLATFORM_GGP" comment="Google Games Platform"/> |
| <platform name="sci" protect="VK_USE_PLATFORM_SCI" comment="NVIDIA SCI"/> |
| <platform name="provisional" protect="VK_ENABLE_BETA_EXTENSIONS" comment="Enable declarations for beta/provisional extensions"/> |
| <platform name="screen" protect="VK_USE_PLATFORM_SCREEN_QNX" comment="QNX Screen Graphics Subsystem"/> |
| </platforms> |
| |
| <tags comment="Vulkan vendor/author tags for extensions and layers"> |
| <tag name="IMG" author="Imagination Technologies" contact="Andrew Garrard @fluppeteer"/> |
| <tag name="AMD" author="Advanced Micro Devices, Inc." contact="Daniel Rakos @drakos-amd"/> |
| <tag name="AMDX" author="Advanced Micro Devices, Inc." contact="Daniel Rakos @drakos-amd"/> |
| <tag name="ARM" author="ARM Limited" contact="Jan-Harald Fredriksen @janharaldfredriksen-arm"/> |
| <tag name="FSL" author="Freescale Semiconductor, Inc." contact="Norbert Nopper @FslNopper"/> |
| <tag name="BRCM" author="Broadcom Corporation" contact="Graeme Leese @gnl21"/> |
| <tag name="NXP" author="NXP Semiconductors N.V." contact="Norbert Nopper @FslNopper"/> |
| <tag name="NV" author="NVIDIA Corporation" contact="Daniel Koch @dgkoch"/> |
| <tag name="NVX" author="NVIDIA Corporation" contact="Daniel Koch @dgkoch"/> |
| <tag name="VIV" author="Vivante Corporation" contact="Yanjun Zhang gitlab:@yanjunzhang"/> |
| <tag name="VSI" author="VeriSilicon Holdings Co., Ltd." contact="Yanjun Zhang gitlab:@yanjunzhang"/> |
| <tag name="KDAB" author="KDAB" contact="Sean Harmer @seanharmer"/> |
| <tag name="ANDROID" author="Google LLC" contact="Jesse Hall @critsec"/> |
| <tag name="CHROMIUM" author="Google LLC" contact="Jesse Hall @critsec"/> |
| <tag name="FUCHSIA" author="Google LLC" contact="Craig Stout @cdotstout, Jesse Hall @critsec, John Rosasco @rosasco"/> |
| <tag name="GGP" author="Google, LLC" contact="Jean-Francois Roy @jfroy, Hai Nguyen @chaoticbob, Jesse Hall @critsec"/> |
| <tag name="GOOGLE" author="Google LLC" contact="Jesse Hall @critsec"/> |
| <tag name="QCOM" author="Qualcomm Technologies, Inc." contact="Matthew Netsch @mnetsch"/> |
| <tag name="LUNARG" author="LunarG, Inc." contact="Karen Ghavam @karenghavam-lunarg"/> |
| <tag name="NZXT" author="NZXT Inc." contact="Jacob Kiesel @xaeroxe"/> |
| <tag name="SAMSUNG" author="Samsung Electronics Co., Ltd." contact="Alon Or-bach @alonorbach"/> |
| <tag name="SEC" author="Samsung Electronics Co., Ltd." contact="Alon Or-bach @alonorbach"/> |
| <tag name="TIZEN" author="Samsung Electronics Co., Ltd." contact="Alon Or-bach @alonorbach"/> |
| <tag name="RENDERDOC" author="RenderDoc (renderdoc.org)" contact="Baldur Karlsson @baldurk"/> |
| <tag name="NN" author="Nintendo Co., Ltd." contact="Yasuhiro Yoshioka gitlab:@yoshioka_yasuhiro"/> |
| <tag name="MVK" author="The Brenwill Workshop Ltd." contact="Bill Hollings @billhollings"/> |
| <tag name="KHR" author="Khronos" contact="Tom Olson @tomolson"/> |
| <tag name="KHX" author="Khronos" contact="Tom Olson @tomolson"/> |
| <tag name="EXT" author="Multivendor" contact="Jon Leech @oddhack"/> |
| <tag name="MESA" author="Mesa open source project" contact="Lina Versace @linyaa-kiwi, Daniel Stone @fooishbar, David Airlie @airlied, Faith Ekstrand @gfxstrand, Hans-Kristian Arntzen @HansKristian-Work"/> |
| <tag name="INTEL" author="Intel Corporation" contact="Slawek Grajewski @sgrajewski"/> |
| <tag name="HUAWEI" author="Huawei Technologies Co. Ltd." contact="Pan Gao @PanGao-h, Juntao Li @Lawrenceleehw"/> |
| <tag name="VALVE" author="Valve Corporation" contact="Pierre-Loup Griffais @plagman, Joshua Ashton @Joshua-Ashton, Hans-Kristian Arntzen @HansKristian-Work"/> |
| <tag name="QNX" author="BlackBerry Limited" contact="Mike Gorchak @mgorchak-blackberry, Aaron Ruby @aruby-blackberry"/> |
| <tag name="JUICE" author="Juice Technologies, Inc." contact="David McCloskey @damcclos, Dean Beeler @canadacow"/> |
| <tag name="FB" author="Facebook, Inc" contact="Artem Bolgar @artyom17"/> |
| <tag name="RASTERGRID" author="RasterGrid Kft." contact="Daniel Rakos @aqnuep"/> |
| <tag name="MSFT" author="Microsoft Corporation" contact="Jesse Natalie @jenatali"/> |
| <tag name="SHADY" author="Saarland University" contact="Hugo Devillers @hugobros3"/> |
| </tags> |
| |
| <types comment="Vulkan type definitions"> |
| <type name="vk_platform" category="include">#include "vk_platform.h"</type> |
| |
| <comment>WSI extensions</comment> |
| |
| <type category="include" name="X11/Xlib.h"/> |
| <type category="include" name="X11/extensions/Xrandr.h"/> |
| <type category="include" name="wayland-client.h"/> |
| <type category="include" name="windows.h"/> |
| <type category="include" name="xcb/xcb.h"/> |
| <type category="include" name="directfb.h"/> |
| <type category="include" name="zircon/types.h"/> |
| <type category="include" name="ggp_c/vulkan_types.h"/> |
| <type category="include" name="screen/screen.h"/> |
| <type category="include" name="nvscisync.h"/> |
| <type category="include" name="nvscibuf.h"/> |
| <comment> |
| In the current header structure, each platform's interfaces |
| are confined to a platform-specific header (vulkan_xlib.h, |
| vulkan_win32.h, etc.). These headers are not self-contained, |
| and should not include native headers (X11/Xlib.h, |
| windows.h, etc.). Code should either include vulkan.h after |
| defining the appropriate VK_USE_PLATFORM_platform |
| macros, or include the required native headers prior to |
| explicitly including the corresponding platform header. |
| |
| To accomplish this, the dependencies of native types require |
| native headers, but the XML defines the content for those |
| native headers as empty. The actual native header includes |
| can be restored by modifying the native header tags above |
| to #include the header file in the 'name' attribute. |
| </comment> |
| |
| <type requires="X11/Xlib.h" name="Display"/> |
| <type requires="X11/Xlib.h" name="VisualID"/> |
| <type requires="X11/Xlib.h" name="Window"/> |
| <type requires="X11/extensions/Xrandr.h" name="RROutput"/> |
| <type requires="wayland-client.h" name="wl_display"/> |
| <type requires="wayland-client.h" name="wl_surface"/> |
| <type requires="windows.h" name="HINSTANCE"/> |
| <type requires="windows.h" name="HWND"/> |
| <type requires="windows.h" name="HMONITOR"/> |
| <type requires="windows.h" name="HANDLE"/> |
| <type requires="windows.h" name="SECURITY_ATTRIBUTES"/> |
| <type requires="windows.h" name="DWORD"/> |
| <type requires="windows.h" name="LPCWSTR"/> |
| <type requires="xcb/xcb.h" name="xcb_connection_t"/> |
| <type requires="xcb/xcb.h" name="xcb_visualid_t"/> |
| <type requires="xcb/xcb.h" name="xcb_window_t"/> |
| <type requires="directfb.h" name="IDirectFB"/> |
| <type requires="directfb.h" name="IDirectFBSurface"/> |
| <type requires="zircon/types.h" name="zx_handle_t"/> |
| <type requires="ggp_c/vulkan_types.h" name="GgpStreamDescriptor"/> |
| <type requires="ggp_c/vulkan_types.h" name="GgpFrameToken"/> |
| <type requires="screen/screen.h" name="_screen_context"/> |
| <type requires="screen/screen.h" name="_screen_window"/> |
| <type requires="screen/screen.h" name="_screen_buffer"/> |
| <type requires="nvscisync.h" name="NvSciSyncAttrList"/> |
| <type requires="nvscisync.h" name="NvSciSyncObj"/> |
| <type requires="nvscisync.h" name="NvSciSyncFence"/> |
| <type requires="nvscibuf.h" name="NvSciBufAttrList"/> |
| <type requires="nvscibuf.h" name="NvSciBufObj"/> |
| |
| <type category="define" deprecated="true">// DEPRECATED: This define is deprecated. VK_MAKE_API_VERSION should be used instead. |
| #define <name>VK_MAKE_VERSION</name>(major, minor, patch) \ |
| ((((uint32_t)(major)) << 22U) | (((uint32_t)(minor)) << 12U) | ((uint32_t)(patch)))</type> |
| <type category="define" deprecated="true">// DEPRECATED: This define is deprecated. VK_API_VERSION_MAJOR should be used instead. |
| #define <name>VK_VERSION_MAJOR</name>(version) ((uint32_t)(version) >> 22U)</type> |
| <type category="define" deprecated="true">// DEPRECATED: This define is deprecated. VK_API_VERSION_MINOR should be used instead. |
| #define <name>VK_VERSION_MINOR</name>(version) (((uint32_t)(version) >> 12U) & 0x3FFU)</type> |
| <type category="define" deprecated="true">// DEPRECATED: This define is deprecated. VK_API_VERSION_PATCH should be used instead. |
| #define <name>VK_VERSION_PATCH</name>(version) ((uint32_t)(version) & 0xFFFU)</type> |
| |
| <type category="define">#define <name>VK_MAKE_API_VERSION</name>(variant, major, minor, patch) \ |
| ((((uint32_t)(variant)) << 29U) | (((uint32_t)(major)) << 22U) | (((uint32_t)(minor)) << 12U) | ((uint32_t)(patch)))</type> |
| <type category="define">#define <name>VK_API_VERSION_VARIANT</name>(version) ((uint32_t)(version) >> 29U)</type> |
| <type category="define">#define <name>VK_API_VERSION_MAJOR</name>(version) (((uint32_t)(version) >> 22U) & 0x7FU)</type> |
| <type category="define">#define <name>VK_API_VERSION_MINOR</name>(version) (((uint32_t)(version) >> 12U) & 0x3FFU)</type> |
| <type category="define">#define <name>VK_API_VERSION_PATCH</name>(version) ((uint32_t)(version) & 0xFFFU)</type> |
| |
| <type category="define" requires="VK_HEADER_VERSION">// Vulkan SC variant number |
| #define <name>VKSC_API_VARIANT</name> 1</type> |
| |
| <type category="define">// DEPRECATED: This define has been removed. Specific version defines (e.g. VK_API_VERSION_1_0), or the VK_MAKE_VERSION macro, should be used instead. |
| //#define <name>VK_API_VERSION</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 0, 0) // Patch version should always be set to 0</type> |
| <type category="define">// Vulkan 1.0 version number |
| #define <name>VK_API_VERSION_1_0</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 0, 0)// Patch version should always be set to 0</type> |
| <type category="define">// Vulkan 1.1 version number |
| #define <name>VK_API_VERSION_1_1</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 1, 0)// Patch version should always be set to 0</type> |
| <type category="define">// Vulkan 1.2 version number |
| #define <name>VK_API_VERSION_1_2</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 2, 0)// Patch version should always be set to 0</type> |
| <type category="define" requires="VK_MAKE_API_VERSION">// Vulkan 1.3 version number |
| #define <name>VK_API_VERSION_1_3</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 3, 0)// Patch version should always be set to 0</type> |
| <type category="define" requires="VKSC_API_VARIANT">// Vulkan SC 1.0 version number |
| #define <name>VKSC_API_VERSION_1_0</name> <type>VK_MAKE_API_VERSION</type>(VKSC_API_VARIANT, 1, 0, 0)// Patch version should always be set to 0</type> |
| |
| <type api="vulkan" category="define">// Version of this file |
| #define <name>VK_HEADER_VERSION</name> 301</type> |
| <type api="vulkan" category="define" requires="VK_HEADER_VERSION">// Complete version of this file |
| #define <name>VK_HEADER_VERSION_COMPLETE</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 3, VK_HEADER_VERSION)</type> |
| <type api="vulkansc" category="define">// Version of this file |
| #define <name>VK_HEADER_VERSION</name> 16</type> |
| <type api="vulkansc" category="define" requires="VKSC_API_VARIANT">// Complete version of this file |
| #define <name>VK_HEADER_VERSION_COMPLETE</name> <type>VK_MAKE_API_VERSION</type>(VKSC_API_VARIANT, 1, 0, VK_HEADER_VERSION)</type> |
| |
| <type api="vulkan" category="define"> |
| #define <name>VK_DEFINE_HANDLE</name>(object) typedef struct object##_T* object;</type> |
| <type api="vulkansc" category="define" comment="Extra parenthesis are a MISRA-C requirement that exposes a bug in MSVC"> |
| #define <name>VK_DEFINE_HANDLE</name>(object) typedef struct object##_T* (object);</type> |
| |
| <type category="define" name="VK_USE_64_BIT_PTR_DEFINES"> |
| #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__) || (defined(__riscv) && __riscv_xlen == 64) |
| #define VK_USE_64_BIT_PTR_DEFINES 1 |
| #else |
| #define VK_USE_64_BIT_PTR_DEFINES 0 |
| #endif |
| #endif</type> |
| <type category="define" requires="VK_USE_64_BIT_PTR_DEFINES" name="VK_NULL_HANDLE"> |
| #ifndef VK_DEFINE_NON_DISPATCHABLE_HANDLE |
| #if (VK_USE_64_BIT_PTR_DEFINES==1) |
| #if (defined(__cplusplus) && (__cplusplus >= 201103L)) || (defined(_MSVC_LANG) && (_MSVC_LANG >= 201103L)) |
| #define VK_NULL_HANDLE nullptr |
| #else |
| #define VK_NULL_HANDLE ((void*)0) |
| #endif |
| #else |
| #define VK_NULL_HANDLE 0ULL |
| #endif |
| #endif |
| #ifndef VK_NULL_HANDLE |
| #define VK_NULL_HANDLE 0 |
| #endif</type> |
| <type api="vulkan" category="define" requires="VK_NULL_HANDLE" name="VK_DEFINE_NON_DISPATCHABLE_HANDLE"> |
| #ifndef VK_DEFINE_NON_DISPATCHABLE_HANDLE |
| #if (VK_USE_64_BIT_PTR_DEFINES==1) |
| #define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef struct object##_T *object; |
| #else |
| #define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef uint64_t object; |
| #endif |
| #endif</type> |
| <type api="vulkansc" category="define" requires="VK_NULL_HANDLE" name="VK_DEFINE_NON_DISPATCHABLE_HANDLE" comment="Extra parenthesis are a MISRA-C requirement that exposes a bug in MSVC"> |
| #ifndef VK_DEFINE_NON_DISPATCHABLE_HANDLE |
| #if (VK_USE_64_BIT_PTR_DEFINES==1) |
| #define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef struct object##_T *(object); |
| #else |
| #define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef uint64_t (object); |
| #endif |
| #endif</type> |
| |
| <type category="basetype">struct <name>ANativeWindow</name>;</type> |
| <type category="basetype">struct <name>AHardwareBuffer</name>;</type> |
| <type category="basetype">#ifdef __OBJC__ |
| @class CAMetalLayer; |
| #else |
| typedef void <name>CAMetalLayer</name>; |
| #endif</type> |
| <type category="basetype">#ifdef __OBJC__ |
| @protocol MTLDevice; |
| typedef __unsafe_unretained id<MTLDevice> MTLDevice_id; |
| #else |
| typedef void* <name>MTLDevice_id</name>; |
| #endif</type> |
| <type category="basetype">#ifdef __OBJC__ |
| @protocol MTLCommandQueue; |
| typedef __unsafe_unretained id<MTLCommandQueue> MTLCommandQueue_id; |
| #else |
| typedef void* <name>MTLCommandQueue_id</name>; |
| #endif</type> |
| <type category="basetype">#ifdef __OBJC__ |
| @protocol MTLBuffer; |
| typedef __unsafe_unretained id<MTLBuffer> MTLBuffer_id; |
| #else |
| typedef void* <name>MTLBuffer_id</name>; |
| #endif</type> |
| <type category="basetype">#ifdef __OBJC__ |
| @protocol MTLTexture; |
| typedef __unsafe_unretained id<MTLTexture> MTLTexture_id; |
| #else |
| typedef void* <name>MTLTexture_id</name>; |
| #endif</type> |
| <type category="basetype">#ifdef __OBJC__ |
| @protocol MTLSharedEvent; |
| typedef __unsafe_unretained id<MTLSharedEvent> MTLSharedEvent_id; |
| #else |
| typedef void* <name>MTLSharedEvent_id</name>; |
| #endif</type> |
| <type category="basetype">typedef struct __IOSurface* <name>IOSurfaceRef</name>;</type> |
| |
| <type category="basetype">typedef <type>uint32_t</type> <name>VkSampleMask</name>;</type> |
| <type category="basetype">typedef <type>uint32_t</type> <name>VkBool32</name>;</type> |
| <type category="basetype">typedef <type>uint32_t</type> <name>VkFlags</name>;</type> |
| <type category="basetype">typedef <type>uint64_t</type> <name>VkFlags64</name>;</type> |
| <type category="basetype">typedef <type>uint64_t</type> <name>VkDeviceSize</name>;</type> |
| <type category="basetype">typedef <type>uint64_t</type> <name>VkDeviceAddress</name>;</type> |
| |
| <comment>Basic C types, pulled in via vk_platform.h</comment> |
| <type requires="vk_platform" name="void"/> |
| <type requires="vk_platform" name="char"/> |
| <type requires="vk_platform" name="float"/> |
| <type requires="vk_platform" name="double"/> |
| <type requires="vk_platform" name="int8_t"/> |
| <type requires="vk_platform" name="uint8_t"/> |
| <type requires="vk_platform" name="int16_t"/> |
| <type requires="vk_platform" name="uint16_t"/> |
| <type requires="vk_platform" name="uint32_t"/> |
| <type requires="vk_platform" name="uint64_t"/> |
| <type requires="vk_platform" name="int32_t"/> |
| <type requires="vk_platform" name="int64_t"/> |
| <type requires="vk_platform" name="size_t"/> |
| <type name="int"/> |
| |
| <comment>Bitmask types</comment> |
| <type requires="VkFramebufferCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkFramebufferCreateFlags</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkQueryPoolCreateFlags</name>;</type> |
| <type requires="VkRenderPassCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkRenderPassCreateFlags</name>;</type> |
| <type requires="VkSamplerCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkSamplerCreateFlags</name>;</type> |
| <type requires="VkPipelineLayoutCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineLayoutCreateFlags</name>;</type> |
| <type requires="VkPipelineCacheCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineCacheCreateFlags</name>;</type> |
| <type api="vulkan" requires="VkPipelineDepthStencilStateCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineDepthStencilStateCreateFlags</name>;</type> |
| <type api="vulkansc" category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineDepthStencilStateCreateFlags</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineDynamicStateCreateFlags</name>;</type> |
| <type api="vulkan" requires="VkPipelineColorBlendStateCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineColorBlendStateCreateFlags</name>;</type> |
| <type api="vulkansc" category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineColorBlendStateCreateFlags</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineMultisampleStateCreateFlags</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineRasterizationStateCreateFlags</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineViewportStateCreateFlags</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineTessellationStateCreateFlags</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineInputAssemblyStateCreateFlags</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineVertexInputStateCreateFlags</name>;</type> |
| <type requires="VkPipelineShaderStageCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineShaderStageCreateFlags</name>;</type> |
| <type requires="VkDescriptorSetLayoutCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkDescriptorSetLayoutCreateFlags</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkBufferViewCreateFlags</name>;</type> |
| <type requires="VkInstanceCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkInstanceCreateFlags</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkDeviceCreateFlags</name>;</type> |
| <type requires="VkDeviceQueueCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkDeviceQueueCreateFlags</name>;</type> |
| <type requires="VkQueueFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkQueueFlags</name>;</type> |
| <type requires="VkMemoryPropertyFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkMemoryPropertyFlags</name>;</type> |
| <type requires="VkMemoryHeapFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkMemoryHeapFlags</name>;</type> |
| <type requires="VkAccessFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkAccessFlags</name>;</type> |
| <type requires="VkBufferUsageFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkBufferUsageFlags</name>;</type> |
| <type requires="VkBufferCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkBufferCreateFlags</name>;</type> |
| <type requires="VkShaderStageFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkShaderStageFlags</name>;</type> |
| <type requires="VkImageUsageFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkImageUsageFlags</name>;</type> |
| <type requires="VkImageCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkImageCreateFlags</name>;</type> |
| <type requires="VkImageViewCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkImageViewCreateFlags</name>;</type> |
| <type requires="VkPipelineCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineCreateFlags</name>;</type> |
| <type requires="VkColorComponentFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkColorComponentFlags</name>;</type> |
| <type requires="VkFenceCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkFenceCreateFlags</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkSemaphoreCreateFlags</name>;</type> |
| <type requires="VkFormatFeatureFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkFormatFeatureFlags</name>;</type> |
| <type requires="VkQueryControlFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkQueryControlFlags</name>;</type> |
| <type requires="VkQueryResultFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkQueryResultFlags</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkShaderModuleCreateFlags</name>;</type> |
| <type requires="VkEventCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkEventCreateFlags</name>;</type> |
| <type requires="VkCommandPoolCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkCommandPoolCreateFlags</name>;</type> |
| <type requires="VkCommandPoolResetFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkCommandPoolResetFlags</name>;</type> |
| <type requires="VkCommandBufferResetFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkCommandBufferResetFlags</name>;</type> |
| <type requires="VkCommandBufferUsageFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkCommandBufferUsageFlags</name>;</type> |
| <type requires="VkQueryPipelineStatisticFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkQueryPipelineStatisticFlags</name>;</type> |
| <type requires="VkMemoryMapFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkMemoryMapFlags</name>;</type> |
| <type requires="VkMemoryUnmapFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkMemoryUnmapFlagsKHR</name>;</type> |
| <type requires="VkImageAspectFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkImageAspectFlags</name>;</type> |
| <type requires="VkSparseMemoryBindFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkSparseMemoryBindFlags</name>;</type> |
| <type requires="VkSparseImageFormatFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkSparseImageFormatFlags</name>;</type> |
| <type requires="VkSubpassDescriptionFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkSubpassDescriptionFlags</name>;</type> |
| <type requires="VkPipelineStageFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineStageFlags</name>;</type> |
| <type requires="VkSampleCountFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkSampleCountFlags</name>;</type> |
| <type requires="VkAttachmentDescriptionFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkAttachmentDescriptionFlags</name>;</type> |
| <type requires="VkStencilFaceFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkStencilFaceFlags</name>;</type> |
| <type requires="VkCullModeFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkCullModeFlags</name>;</type> |
| <type requires="VkDescriptorPoolCreateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkDescriptorPoolCreateFlags</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkDescriptorPoolResetFlags</name>;</type> |
| <type requires="VkDependencyFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkDependencyFlags</name>;</type> |
| <type requires="VkSubgroupFeatureFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkSubgroupFeatureFlags</name>;</type> |
| <type requires="VkIndirectCommandsLayoutUsageFlagBitsNV" category="bitmask">typedef <type>VkFlags</type> <name>VkIndirectCommandsLayoutUsageFlagsNV</name>;</type> |
| <type requires="VkIndirectStateFlagBitsNV" category="bitmask">typedef <type>VkFlags</type> <name>VkIndirectStateFlagsNV</name>;</type> |
| <type requires="VkGeometryFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkGeometryFlagsKHR</name>;</type> |
| <type category="bitmask" name="VkGeometryFlagsNV" alias="VkGeometryFlagsKHR"/> |
| <type requires="VkGeometryInstanceFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkGeometryInstanceFlagsKHR</name>;</type> |
| <type category="bitmask" name="VkGeometryInstanceFlagsNV" alias="VkGeometryInstanceFlagsKHR"/> |
| <type requires="VkBuildAccelerationStructureFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkBuildAccelerationStructureFlagsKHR</name>;</type> |
| <type category="bitmask" name="VkBuildAccelerationStructureFlagsNV" alias="VkBuildAccelerationStructureFlagsKHR"/> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkPrivateDataSlotCreateFlags</name>;</type> |
| <type category="bitmask" name="VkPrivateDataSlotCreateFlagsEXT" alias="VkPrivateDataSlotCreateFlags"/> |
| <type requires="VkAccelerationStructureCreateFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkAccelerationStructureCreateFlagsKHR</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkDescriptorUpdateTemplateCreateFlags</name>;</type> |
| <type category="bitmask" name="VkDescriptorUpdateTemplateCreateFlagsKHR" alias="VkDescriptorUpdateTemplateCreateFlags"/> |
| <type requires="VkPipelineCreationFeedbackFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineCreationFeedbackFlags</name>;</type> |
| <type category="bitmask" name="VkPipelineCreationFeedbackFlagsEXT" alias="VkPipelineCreationFeedbackFlags"/> |
| <type requires="VkPerformanceCounterDescriptionFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkPerformanceCounterDescriptionFlagsKHR</name>;</type> |
| <type requires="VkAcquireProfilingLockFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkAcquireProfilingLockFlagsKHR</name>;</type> |
| <type requires="VkSemaphoreWaitFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkSemaphoreWaitFlags</name>;</type> |
| <type category="bitmask" name="VkSemaphoreWaitFlagsKHR" alias="VkSemaphoreWaitFlags"/> |
| <type requires="VkPipelineCompilerControlFlagBitsAMD" category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineCompilerControlFlagsAMD</name>;</type> |
| <type requires="VkShaderCorePropertiesFlagBitsAMD" category="bitmask">typedef <type>VkFlags</type> <name>VkShaderCorePropertiesFlagsAMD</name>;</type> |
| <type requires="VkDeviceDiagnosticsConfigFlagBitsNV" category="bitmask">typedef <type>VkFlags</type> <name>VkDeviceDiagnosticsConfigFlagsNV</name>;</type> |
| <type requires="VkRefreshObjectFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkRefreshObjectFlagsKHR</name>;</type> |
| <type bitvalues="VkAccessFlagBits2" category="bitmask">typedef <type>VkFlags64</type> <name>VkAccessFlags2</name>;</type> |
| <type category="bitmask" name="VkAccessFlags2KHR" alias="VkAccessFlags2"/> |
| <type bitvalues="VkPipelineStageFlagBits2" category="bitmask">typedef <type>VkFlags64</type> <name>VkPipelineStageFlags2</name>;</type> |
| <type category="bitmask" name="VkPipelineStageFlags2KHR" alias="VkPipelineStageFlags2"/> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkAccelerationStructureMotionInfoFlagsNV</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkAccelerationStructureMotionInstanceFlagsNV</name>;</type> |
| <type bitvalues="VkFormatFeatureFlagBits2" category="bitmask">typedef <type>VkFlags64</type> <name>VkFormatFeatureFlags2</name>;</type> |
| <type category="bitmask" name="VkFormatFeatureFlags2KHR" alias="VkFormatFeatureFlags2"/> |
| <type requires="VkRenderingFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkRenderingFlags</name>;</type> |
| <type bitvalues="VkMemoryDecompressionMethodFlagBitsNV" category="bitmask">typedef <type>VkFlags64</type> <name>VkMemoryDecompressionMethodFlagsNV</name>;</type> |
| <type category="bitmask" name="VkRenderingFlagsKHR" alias="VkRenderingFlags"/> |
| <type requires="VkBuildMicromapFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkBuildMicromapFlagsEXT</name>;</type> |
| <type requires="VkMicromapCreateFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkMicromapCreateFlagsEXT</name>;</type> |
| <type requires="VkIndirectCommandsLayoutUsageFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkIndirectCommandsLayoutUsageFlagsEXT</name>;</type> |
| <type requires="VkIndirectCommandsInputModeFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkIndirectCommandsInputModeFlagsEXT</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkDirectDriverLoadingFlagsLUNARG</name>;</type> |
| <type bitvalues="VkPipelineCreateFlagBits2KHR" category="bitmask">typedef <type>VkFlags64</type> <name>VkPipelineCreateFlags2KHR</name>;</type> |
| <type bitvalues="VkBufferUsageFlagBits2KHR" category="bitmask">typedef <type>VkFlags64</type> <name>VkBufferUsageFlags2KHR</name>;</type> |
| |
| <comment>WSI extensions</comment> |
| <type requires="VkCompositeAlphaFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkCompositeAlphaFlagsKHR</name>;</type> |
| <type requires="VkDisplayPlaneAlphaFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkDisplayPlaneAlphaFlagsKHR</name>;</type> |
| <type requires="VkSurfaceTransformFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkSurfaceTransformFlagsKHR</name>;</type> |
| <type requires="VkSwapchainCreateFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkSwapchainCreateFlagsKHR</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkDisplayModeCreateFlagsKHR</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkDisplaySurfaceCreateFlagsKHR</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkAndroidSurfaceCreateFlagsKHR</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkViSurfaceCreateFlagsNN</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkWaylandSurfaceCreateFlagsKHR</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkWin32SurfaceCreateFlagsKHR</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkXlibSurfaceCreateFlagsKHR</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkXcbSurfaceCreateFlagsKHR</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkDirectFBSurfaceCreateFlagsEXT</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkIOSSurfaceCreateFlagsMVK</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkMacOSSurfaceCreateFlagsMVK</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkMetalSurfaceCreateFlagsEXT</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkImagePipeSurfaceCreateFlagsFUCHSIA</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkStreamDescriptorSurfaceCreateFlagsGGP</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkHeadlessSurfaceCreateFlagsEXT</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkScreenSurfaceCreateFlagsQNX</name>;</type> |
| <type requires="VkPeerMemoryFeatureFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkPeerMemoryFeatureFlags</name>;</type> |
| <type category="bitmask" name="VkPeerMemoryFeatureFlagsKHR" alias="VkPeerMemoryFeatureFlags"/> |
| <type requires="VkMemoryAllocateFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkMemoryAllocateFlags</name>;</type> |
| <type category="bitmask" name="VkMemoryAllocateFlagsKHR" alias="VkMemoryAllocateFlags"/> |
| <type requires="VkDeviceGroupPresentModeFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkDeviceGroupPresentModeFlagsKHR</name>;</type> |
| |
| <type requires="VkDebugReportFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkDebugReportFlagsEXT</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkCommandPoolTrimFlags</name>;</type> |
| <type category="bitmask" name="VkCommandPoolTrimFlagsKHR" alias="VkCommandPoolTrimFlags"/> |
| <type requires="VkExternalMemoryHandleTypeFlagBitsNV" category="bitmask">typedef <type>VkFlags</type> <name>VkExternalMemoryHandleTypeFlagsNV</name>;</type> |
| <type requires="VkExternalMemoryFeatureFlagBitsNV" category="bitmask">typedef <type>VkFlags</type> <name>VkExternalMemoryFeatureFlagsNV</name>;</type> |
| <type requires="VkExternalMemoryHandleTypeFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkExternalMemoryHandleTypeFlags</name>;</type> |
| <type category="bitmask" name="VkExternalMemoryHandleTypeFlagsKHR" alias="VkExternalMemoryHandleTypeFlags"/> |
| <type requires="VkExternalMemoryFeatureFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkExternalMemoryFeatureFlags</name>;</type> |
| <type category="bitmask" name="VkExternalMemoryFeatureFlagsKHR" alias="VkExternalMemoryFeatureFlags"/> |
| <type requires="VkExternalSemaphoreHandleTypeFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkExternalSemaphoreHandleTypeFlags</name>;</type> |
| <type category="bitmask" name="VkExternalSemaphoreHandleTypeFlagsKHR" alias="VkExternalSemaphoreHandleTypeFlags"/> |
| <type requires="VkExternalSemaphoreFeatureFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkExternalSemaphoreFeatureFlags</name>;</type> |
| <type category="bitmask" name="VkExternalSemaphoreFeatureFlagsKHR" alias="VkExternalSemaphoreFeatureFlags"/> |
| <type requires="VkSemaphoreImportFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkSemaphoreImportFlags</name>;</type> |
| <type category="bitmask" name="VkSemaphoreImportFlagsKHR" alias="VkSemaphoreImportFlags"/> |
| <type requires="VkExternalFenceHandleTypeFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkExternalFenceHandleTypeFlags</name>;</type> |
| <type category="bitmask" name="VkExternalFenceHandleTypeFlagsKHR" alias="VkExternalFenceHandleTypeFlags"/> |
| <type requires="VkExternalFenceFeatureFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkExternalFenceFeatureFlags</name>;</type> |
| <type category="bitmask" name="VkExternalFenceFeatureFlagsKHR" alias="VkExternalFenceFeatureFlags"/> |
| <type requires="VkFenceImportFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkFenceImportFlags</name>;</type> |
| <type category="bitmask" name="VkFenceImportFlagsKHR" alias="VkFenceImportFlags"/> |
| <type requires="VkSurfaceCounterFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkSurfaceCounterFlagsEXT</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineViewportSwizzleStateCreateFlagsNV</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineDiscardRectangleStateCreateFlagsEXT</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineCoverageToColorStateCreateFlagsNV</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineCoverageModulationStateCreateFlagsNV</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineCoverageReductionStateCreateFlagsNV</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkValidationCacheCreateFlagsEXT</name>;</type> |
| <type requires="VkDebugUtilsMessageSeverityFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkDebugUtilsMessageSeverityFlagsEXT</name>;</type> |
| <type requires="VkDebugUtilsMessageTypeFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkDebugUtilsMessageTypeFlagsEXT</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkDebugUtilsMessengerCreateFlagsEXT</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkDebugUtilsMessengerCallbackDataFlagsEXT</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkDeviceMemoryReportFlagsEXT</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineRasterizationConservativeStateCreateFlagsEXT</name>;</type> |
| <type requires="VkDescriptorBindingFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkDescriptorBindingFlags</name>;</type> |
| <type category="bitmask" name="VkDescriptorBindingFlagsEXT" alias="VkDescriptorBindingFlags"/> |
| <type requires="VkConditionalRenderingFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkConditionalRenderingFlagsEXT</name>;</type> |
| <type requires="VkResolveModeFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkResolveModeFlags</name>;</type> |
| <type category="bitmask" name="VkResolveModeFlagsKHR" alias="VkResolveModeFlags"/> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineRasterizationStateStreamCreateFlagsEXT</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineRasterizationDepthClipStateCreateFlagsEXT</name>;</type> |
| <type requires="VkSwapchainImageUsageFlagBitsANDROID" category="bitmask">typedef <type>VkFlags</type> <name>VkSwapchainImageUsageFlagsANDROID</name>;</type> |
| <type requires="VkToolPurposeFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkToolPurposeFlags</name>;</type> |
| <type category="bitmask" name="VkToolPurposeFlagsEXT" alias="VkToolPurposeFlags"/> |
| <type requires="VkSubmitFlagBits" category="bitmask">typedef <type>VkFlags</type> <name>VkSubmitFlags</name>;</type> |
| <type category="bitmask" name="VkSubmitFlagsKHR" alias="VkSubmitFlags"/> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkImageFormatConstraintsFlagsFUCHSIA</name>;</type> |
| <type requires="VkHostImageCopyFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkHostImageCopyFlagsEXT</name>;</type> |
| <type requires="VkImageConstraintsInfoFlagBitsFUCHSIA" category="bitmask">typedef <type>VkFlags</type> <name>VkImageConstraintsInfoFlagsFUCHSIA</name>;</type> |
| <type requires="VkGraphicsPipelineLibraryFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkGraphicsPipelineLibraryFlagsEXT</name>;</type> |
| <type requires="VkImageCompressionFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkImageCompressionFlagsEXT</name>;</type> |
| <type requires="VkImageCompressionFixedRateFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkImageCompressionFixedRateFlagsEXT</name>;</type> |
| <type requires="VkExportMetalObjectTypeFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkExportMetalObjectTypeFlagsEXT</name>;</type> |
| <type requires="VkDeviceAddressBindingFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkDeviceAddressBindingFlagsEXT</name>;</type> |
| <type requires="VkOpticalFlowGridSizeFlagBitsNV" category="bitmask">typedef <type>VkFlags</type> <name>VkOpticalFlowGridSizeFlagsNV</name>;</type> |
| <type requires="VkOpticalFlowUsageFlagBitsNV" category="bitmask">typedef <type>VkFlags</type> <name>VkOpticalFlowUsageFlagsNV</name>;</type> |
| <type requires="VkOpticalFlowSessionCreateFlagBitsNV" category="bitmask">typedef <type>VkFlags</type> <name>VkOpticalFlowSessionCreateFlagsNV</name>;</type> |
| <type requires="VkOpticalFlowExecuteFlagBitsNV" category="bitmask">typedef <type>VkFlags</type> <name>VkOpticalFlowExecuteFlagsNV</name>;</type> |
| <type requires="VkFrameBoundaryFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkFrameBoundaryFlagsEXT</name>;</type> |
| <type requires="VkPresentScalingFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkPresentScalingFlagsEXT</name>;</type> |
| <type requires="VkPresentGravityFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkPresentGravityFlagsEXT</name>;</type> |
| <type requires="VkShaderCreateFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkShaderCreateFlagsEXT</name>;</type> |
| <type bitvalues="VkPhysicalDeviceSchedulingControlsFlagBitsARM" category="bitmask">typedef <type>VkFlags64</type> <name>VkPhysicalDeviceSchedulingControlsFlagsARM</name>;</type> |
| |
| <comment>Video Core extension</comment> |
| <type requires="VkVideoCodecOperationFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoCodecOperationFlagsKHR</name>;</type> |
| <type requires="VkVideoCapabilityFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoCapabilityFlagsKHR</name>;</type> |
| <type requires="VkVideoSessionCreateFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoSessionCreateFlagsKHR</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkVideoSessionParametersCreateFlagsKHR</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkVideoBeginCodingFlagsKHR</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEndCodingFlagsKHR</name>;</type> |
| <type requires="VkVideoCodingControlFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoCodingControlFlagsKHR</name>;</type> |
| |
| <comment>Video Decode Core extension</comment> |
| <type requires="VkVideoDecodeUsageFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoDecodeUsageFlagsKHR</name>;</type> |
| <type requires="VkVideoDecodeCapabilityFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoDecodeCapabilityFlagsKHR</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkVideoDecodeFlagsKHR</name>;</type> |
| |
| <comment>Video Decode H.264 extension</comment> |
| <type requires="VkVideoDecodeH264PictureLayoutFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoDecodeH264PictureLayoutFlagsKHR</name>;</type> |
| |
| <comment>Video Encode Core extension</comment> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEncodeFlagsKHR</name>;</type> |
| <type requires="VkVideoEncodeUsageFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEncodeUsageFlagsKHR</name>;</type> |
| <type requires="VkVideoEncodeContentFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEncodeContentFlagsKHR</name>;</type> |
| <type requires="VkVideoEncodeCapabilityFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEncodeCapabilityFlagsKHR</name>;</type> |
| <type requires="VkVideoEncodeFeedbackFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEncodeFeedbackFlagsKHR</name>;</type> |
| <type category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEncodeRateControlFlagsKHR</name>;</type> |
| <type requires="VkVideoEncodeRateControlModeFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEncodeRateControlModeFlagsKHR</name>;</type> |
| <type requires="VkVideoChromaSubsamplingFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoChromaSubsamplingFlagsKHR</name>;</type> |
| <type requires="VkVideoComponentBitDepthFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoComponentBitDepthFlagsKHR</name>;</type> |
| |
| <comment>Video Encode H.264 extension</comment> |
| <type requires="VkVideoEncodeH264CapabilityFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEncodeH264CapabilityFlagsKHR</name>;</type> |
| <type requires="VkVideoEncodeH264StdFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEncodeH264StdFlagsKHR</name>;</type> |
| <type requires="VkVideoEncodeH264RateControlFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEncodeH264RateControlFlagsKHR</name>;</type> |
| |
| <comment>Video Encode H.265 extension</comment> |
| <type requires="VkVideoEncodeH265CapabilityFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEncodeH265CapabilityFlagsKHR</name>;</type> |
| <type requires="VkVideoEncodeH265StdFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEncodeH265StdFlagsKHR</name>;</type> |
| <type requires="VkVideoEncodeH265RateControlFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEncodeH265RateControlFlagsKHR</name>;</type> |
| <type requires="VkVideoEncodeH265CtbSizeFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEncodeH265CtbSizeFlagsKHR</name>;</type> |
| <type requires="VkVideoEncodeH265TransformBlockSizeFlagBitsKHR" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEncodeH265TransformBlockSizeFlagsKHR</name>;</type> |
| |
| <comment>Types which can be void pointers or class pointers, selected at compile time</comment> |
| <type category="handle" objtypeenum="VK_OBJECT_TYPE_INSTANCE"><type>VK_DEFINE_HANDLE</type>(<name>VkInstance</name>)</type> |
| <type category="handle" parent="VkInstance" objtypeenum="VK_OBJECT_TYPE_PHYSICAL_DEVICE"><type>VK_DEFINE_HANDLE</type>(<name>VkPhysicalDevice</name>)</type> |
| <type category="handle" parent="VkPhysicalDevice" objtypeenum="VK_OBJECT_TYPE_DEVICE"><type>VK_DEFINE_HANDLE</type>(<name>VkDevice</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_QUEUE"><type>VK_DEFINE_HANDLE</type>(<name>VkQueue</name>)</type> |
| <type category="handle" parent="VkCommandPool" objtypeenum="VK_OBJECT_TYPE_COMMAND_BUFFER"><type>VK_DEFINE_HANDLE</type>(<name>VkCommandBuffer</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_DEVICE_MEMORY"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkDeviceMemory</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_COMMAND_POOL"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkCommandPool</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_BUFFER"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkBuffer</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_BUFFER_VIEW"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkBufferView</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_IMAGE"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkImage</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_IMAGE_VIEW"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkImageView</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_SHADER_MODULE"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkShaderModule</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_PIPELINE"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkPipeline</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_PIPELINE_LAYOUT"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkPipelineLayout</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_SAMPLER"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkSampler</name>)</type> |
| <type category="handle" parent="VkDescriptorPool" objtypeenum="VK_OBJECT_TYPE_DESCRIPTOR_SET"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkDescriptorSet</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkDescriptorSetLayout</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_DESCRIPTOR_POOL"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkDescriptorPool</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_FENCE"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkFence</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_SEMAPHORE"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkSemaphore</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_EVENT"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkEvent</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_QUERY_POOL"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkQueryPool</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_FRAMEBUFFER"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkFramebuffer</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_RENDER_PASS"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkRenderPass</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_PIPELINE_CACHE"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkPipelineCache</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_PIPELINE_BINARY_KHR"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkPipelineBinaryKHR</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkIndirectCommandsLayoutNV</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_EXT"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkIndirectCommandsLayoutEXT</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_INDIRECT_EXECUTION_SET_EXT"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkIndirectExecutionSetEXT</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkDescriptorUpdateTemplate</name>)</type> |
| <type category="handle" name="VkDescriptorUpdateTemplateKHR" alias="VkDescriptorUpdateTemplate"/> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkSamplerYcbcrConversion</name>)</type> |
| <type category="handle" name="VkSamplerYcbcrConversionKHR" alias="VkSamplerYcbcrConversion"/> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_VALIDATION_CACHE_EXT"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkValidationCacheEXT</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkAccelerationStructureKHR</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkAccelerationStructureNV</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkPerformanceConfigurationINTEL</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkBufferCollectionFUCHSIA</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkDeferredOperationKHR</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_PRIVATE_DATA_SLOT"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkPrivateDataSlot</name>)</type> |
| <type category="handle" name="VkPrivateDataSlotEXT" alias="VkPrivateDataSlot"/> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_CU_MODULE_NVX"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkCuModuleNVX</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_CU_FUNCTION_NVX"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkCuFunctionNVX</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_OPTICAL_FLOW_SESSION_NV"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkOpticalFlowSessionNV</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_MICROMAP_EXT"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkMicromapEXT</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_SHADER_EXT"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkShaderEXT</name>)</type> |
| |
| <comment>WSI extensions</comment> |
| <type category="handle" parent="VkPhysicalDevice" objtypeenum="VK_OBJECT_TYPE_DISPLAY_KHR"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkDisplayKHR</name>)</type> |
| <type category="handle" parent="VkDisplayKHR" objtypeenum="VK_OBJECT_TYPE_DISPLAY_MODE_KHR"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkDisplayModeKHR</name>)</type> |
| <type category="handle" parent="VkInstance" objtypeenum="VK_OBJECT_TYPE_SURFACE_KHR"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkSurfaceKHR</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_SWAPCHAIN_KHR"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkSwapchainKHR</name>)</type> |
| <type category="handle" parent="VkInstance" objtypeenum="VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkDebugReportCallbackEXT</name>)</type> |
| <type category="handle" parent="VkInstance" objtypeenum="VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkDebugUtilsMessengerEXT</name>)</type> |
| |
| <comment>Video extensions</comment> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_VIDEO_SESSION_KHR"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkVideoSessionKHR</name>)</type> |
| <type category="handle" parent="VkVideoSessionKHR" objtypeenum="VK_OBJECT_TYPE_VIDEO_SESSION_PARAMETERS_KHR"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkVideoSessionParametersKHR</name>)</type> |
| |
| <comment>VK_NV_external_sci_sync2</comment> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_SEMAPHORE_SCI_SYNC_POOL_NV"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkSemaphoreSciSyncPoolNV</name>)</type> |
| |
| <comment>Types generated from corresponding enums tags below</comment> |
| <type name="VkAttachmentLoadOp" category="enum"/> |
| <type name="VkAttachmentStoreOp" category="enum"/> |
| <type name="VkBlendFactor" category="enum"/> |
| <type name="VkBlendOp" category="enum"/> |
| <type name="VkBorderColor" category="enum"/> |
| <type name="VkFramebufferCreateFlagBits" category="enum"/> |
| <type name="VkQueryPoolCreateFlagBits" category="enum"/> |
| <type name="VkRenderPassCreateFlagBits" category="enum"/> |
| <type name="VkSamplerCreateFlagBits" category="enum"/> |
| <type name="VkPipelineCacheHeaderVersion" category="enum"/> |
| <type name="VkPipelineCacheCreateFlagBits" category="enum"/> |
| <type name="VkPipelineShaderStageCreateFlagBits" category="enum"/> |
| <type name="VkDescriptorSetLayoutCreateFlagBits" category="enum"/> |
| <type name="VkInstanceCreateFlagBits" category="enum"/> |
| <type name="VkDeviceQueueCreateFlagBits" category="enum"/> |
| <type name="VkBufferCreateFlagBits" category="enum"/> |
| <type name="VkBufferUsageFlagBits" category="enum"/> |
| <type name="VkColorComponentFlagBits" category="enum"/> |
| <type name="VkComponentSwizzle" category="enum"/> |
| <type name="VkCommandPoolCreateFlagBits" category="enum"/> |
| <type name="VkCommandPoolResetFlagBits" category="enum"/> |
| <type name="VkCommandBufferResetFlagBits" category="enum"/> |
| <type name="VkCommandBufferLevel" category="enum"/> |
| <type name="VkCommandBufferUsageFlagBits" category="enum"/> |
| <type name="VkCompareOp" category="enum"/> |
| <type name="VkCullModeFlagBits" category="enum"/> |
| <type name="VkDescriptorType" category="enum"/> |
| <type name="VkDeviceCreateFlagBits" category="enum"/> |
| <type name="VkDynamicState" category="enum"/> |
| <type name="VkFenceCreateFlagBits" category="enum"/> |
| <type name="VkPolygonMode" category="enum"/> |
| <type name="VkFormat" category="enum"/> |
| <type name="VkFormatFeatureFlagBits" category="enum"/> |
| <type name="VkFrontFace" category="enum"/> |
| <type name="VkMemoryMapFlagBits" category="enum"/> |
| <type name="VkImageAspectFlagBits" category="enum"/> |
| <type name="VkImageCreateFlagBits" category="enum"/> |
| <type name="VkImageLayout" category="enum"/> |
| <type name="VkImageTiling" category="enum"/> |
| <type name="VkImageType" category="enum"/> |
| <type name="VkImageUsageFlagBits" category="enum"/> |
| <type name="VkImageViewCreateFlagBits" category="enum"/> |
| <type name="VkImageViewType" category="enum"/> |
| <type name="VkIndirectCommandsTokenTypeEXT" category="enum"/> |
| <type name="VkSharingMode" category="enum"/> |
| <type name="VkIndexType" category="enum"/> |
| <type name="VkLogicOp" category="enum"/> |
| <type name="VkMemoryHeapFlagBits" category="enum"/> |
| <type name="VkAccessFlagBits" category="enum"/> |
| <type name="VkMemoryPropertyFlagBits" category="enum"/> |
| <type name="VkPhysicalDeviceType" category="enum"/> |
| <type name="VkPipelineBindPoint" category="enum"/> |
| <type name="VkPipelineCreateFlagBits" category="enum"/> |
| <type name="VkPrimitiveTopology" category="enum"/> |
| <type name="VkQueryControlFlagBits" category="enum"/> |
| <type name="VkQueryPipelineStatisticFlagBits" category="enum"/> |
| <type name="VkQueryResultFlagBits" category="enum"/> |
| <type name="VkQueryType" category="enum"/> |
| <type name="VkQueueFlagBits" category="enum"/> |
| <type name="VkSubpassContents" category="enum"/> |
| <type name="VkResult" category="enum"/> |
| <type name="VkShaderStageFlagBits" category="enum"/> |
| <type name="VkSparseMemoryBindFlagBits" category="enum"/> |
| <type name="VkStencilFaceFlagBits" category="enum"/> |
| <type name="VkStencilOp" category="enum"/> |
| <type name="VkStructureType" category="enum"/> |
| <type name="VkSystemAllocationScope" category="enum"/> |
| <type name="VkInternalAllocationType" category="enum"/> |
| <type name="VkSamplerAddressMode" category="enum"/> |
| <type name="VkFilter" category="enum"/> |
| <type name="VkSamplerMipmapMode" category="enum"/> |
| <type name="VkVertexInputRate" category="enum"/> |
| <type name="VkPipelineStageFlagBits" category="enum"/> |
| <type name="VkSparseImageFormatFlagBits" category="enum"/> |
| <type name="VkSampleCountFlagBits" category="enum"/> |
| <type name="VkAttachmentDescriptionFlagBits" category="enum"/> |
| <type name="VkDescriptorPoolCreateFlagBits" category="enum"/> |
| <type name="VkDependencyFlagBits" category="enum"/> |
| <type name="VkObjectType" category="enum"/> |
| <type name="VkEventCreateFlagBits" category="enum"/> |
| <type name="VkPipelineLayoutCreateFlagBits" category="enum"/> |
| <type name="VkSemaphoreCreateFlagBits" category="enum"/> |
| <type name="VkRayTracingInvocationReorderModeNV" category="enum"/> |
| |
| <comment>Extensions</comment> |
| <type name="VkIndirectCommandsLayoutUsageFlagBitsNV" category="enum"/> |
| <type name="VkIndirectCommandsTokenTypeNV" category="enum"/> |
| <type name="VkIndirectStateFlagBitsNV" category="enum"/> |
| <type name="VkPrivateDataSlotCreateFlagBits" category="enum"/> |
| <type category="enum" name="VkPrivateDataSlotCreateFlagBitsEXT" alias="VkPrivateDataSlotCreateFlagBits"/> |
| <type name="VkDescriptorUpdateTemplateType" category="enum"/> |
| <type category="enum" name="VkDescriptorUpdateTemplateTypeKHR" alias="VkDescriptorUpdateTemplateType"/> |
| <type name="VkViewportCoordinateSwizzleNV" category="enum"/> |
| <type name="VkDiscardRectangleModeEXT" category="enum"/> |
| <type name="VkSubpassDescriptionFlagBits" category="enum"/> |
| <type name="VkPointClippingBehavior" category="enum"/> |
| <type category="enum" name="VkPointClippingBehaviorKHR" alias="VkPointClippingBehavior"/> |
| <type name="VkCoverageModulationModeNV" category="enum"/> |
| <type name="VkCoverageReductionModeNV" category="enum"/> |
| <type name="VkValidationCacheHeaderVersionEXT" category="enum"/> |
| <type name="VkShaderInfoTypeAMD" category="enum"/> |
| <type name="VkQueueGlobalPriorityKHR" category="enum"/> |
| <type name="VkQueueGlobalPriorityEXT" category="enum" alias="VkQueueGlobalPriorityKHR"/> |
| <type name="VkTimeDomainKHR" category="enum"/> |
| <type name="VkTimeDomainEXT" category="enum" alias="VkTimeDomainKHR"/> |
| <type name="VkConservativeRasterizationModeEXT" category="enum"/> |
| <type name="VkResolveModeFlagBits" category="enum"/> |
| <type category="enum" name="VkResolveModeFlagBitsKHR" alias="VkResolveModeFlagBits"/> |
| <type name="VkDescriptorBindingFlagBits" category="enum"/> |
| <type category="enum" name="VkDescriptorBindingFlagBitsEXT" alias="VkDescriptorBindingFlagBits"/> |
| <type name="VkConditionalRenderingFlagBitsEXT" category="enum"/> |
| <type name="VkSemaphoreType" category="enum"/> |
| <type category="enum" name="VkSemaphoreTypeKHR" alias="VkSemaphoreType"/> |
| <type name="VkGeometryFlagBitsKHR" category="enum"/> |
| <type category="enum" name="VkGeometryFlagBitsNV" alias="VkGeometryFlagBitsKHR"/> |
| <type name="VkGeometryInstanceFlagBitsKHR" category="enum"/> |
| <type category="enum" name="VkGeometryInstanceFlagBitsNV" alias="VkGeometryInstanceFlagBitsKHR"/> |
| <type name="VkBuildAccelerationStructureFlagBitsKHR" category="enum"/> |
| <type category="enum" name="VkBuildAccelerationStructureFlagBitsNV" alias="VkBuildAccelerationStructureFlagBitsKHR"/> |
| <type name="VkAccelerationStructureCreateFlagBitsKHR" category="enum"/> |
| <type name="VkBuildAccelerationStructureModeKHR" category="enum"/> |
| <type name="VkCopyAccelerationStructureModeKHR" category="enum"/> |
| <type category="enum" name="VkCopyAccelerationStructureModeNV" alias="VkCopyAccelerationStructureModeKHR"/> |
| <type name="VkAccelerationStructureTypeKHR" category="enum"/> |
| <type category="enum" name="VkAccelerationStructureTypeNV" alias="VkAccelerationStructureTypeKHR"/> |
| <type name="VkGeometryTypeKHR" category="enum"/> |
| <type category="enum" name="VkGeometryTypeNV" alias="VkGeometryTypeKHR"/> |
| <type name="VkRayTracingShaderGroupTypeKHR" category="enum"/> |
| <type category="enum" name="VkRayTracingShaderGroupTypeNV" alias="VkRayTracingShaderGroupTypeKHR"/> |
| <type name="VkAccelerationStructureMemoryRequirementsTypeNV" category="enum"/> |
| <type name="VkAccelerationStructureBuildTypeKHR" category="enum"/> |
| <type name="VkAccelerationStructureCompatibilityKHR" category="enum"/> |
| <type name="VkShaderGroupShaderKHR" category="enum"/> |
| <type name="VkMemoryOverallocationBehaviorAMD" category="enum"/> |
| <type name="VkDeviceDiagnosticsConfigFlagBitsNV" category="enum"/> |
| <type name="VkPipelineCreationFeedbackFlagBits" category="enum"/> |
| <type category="enum" name="VkPipelineCreationFeedbackFlagBitsEXT" alias="VkPipelineCreationFeedbackFlagBits"/> |
| <type name="VkPerformanceCounterScopeKHR" category="enum"/> |
| <type name="VkPerformanceCounterUnitKHR" category="enum"/> |
| <type name="VkPerformanceCounterStorageKHR" category="enum"/> |
| <type name="VkPerformanceCounterDescriptionFlagBitsKHR" category="enum"/> |
| <type name="VkAcquireProfilingLockFlagBitsKHR" category="enum"/> |
| <type name="VkSemaphoreWaitFlagBits" category="enum"/> |
| <type category="enum" name="VkSemaphoreWaitFlagBitsKHR" alias="VkSemaphoreWaitFlagBits"/> |
| <type name="VkPerformanceConfigurationTypeINTEL" category="enum"/> |
| <type name="VkQueryPoolSamplingModeINTEL" category="enum"/> |
| <type name="VkPerformanceOverrideTypeINTEL" category="enum"/> |
| <type name="VkPerformanceParameterTypeINTEL" category="enum"/> |
| <type name="VkPerformanceValueTypeINTEL" category="enum"/> |
| <type name="VkLineRasterizationModeKHR" category="enum"/> |
| <type name="VkLineRasterizationModeEXT" category="enum" alias="VkLineRasterizationModeKHR"/> |
| <type name="VkShaderModuleCreateFlagBits" category="enum"/> |
| <type name="VkPipelineCompilerControlFlagBitsAMD" category="enum"/> |
| <type name="VkShaderCorePropertiesFlagBitsAMD" category="enum"/> |
| <type name="VkRefreshObjectFlagBitsKHR" category="enum"/> |
| <type name="VkFaultLevel" category="enum"/> |
| <type name="VkFaultType" category="enum"/> |
| <type name="VkFaultQueryBehavior" category="enum"/> |
| <type name="VkPipelineMatchControl" category="enum"/> |
| <type name="VkSciSyncClientTypeNV" category="enum"/> |
| <type name="VkSciSyncPrimitiveTypeNV" category="enum"/> |
| <type name="VkToolPurposeFlagBits" category="enum"/> |
| <type category="enum" name="VkToolPurposeFlagBitsEXT" alias="VkToolPurposeFlagBits"/> |
| <type name="VkFragmentShadingRateNV" category="enum"/> |
| <type name="VkFragmentShadingRateTypeNV" category="enum"/> |
| <type name="VkSubpassMergeStatusEXT" category="enum"/> |
| <type name="VkAccessFlagBits2" category="enum"/> |
| <type category="enum" name="VkAccessFlagBits2KHR" alias="VkAccessFlagBits2"/> |
| <type name="VkPipelineStageFlagBits2" category="enum"/> |
| <type category="enum" name="VkPipelineStageFlagBits2KHR" alias="VkPipelineStageFlagBits2"/> |
| <type name="VkProvokingVertexModeEXT" category="enum"/> |
| <type name="VkPipelineCacheValidationVersion" category="enum"/> |
| <type name="VkImageFormatConstraintsFlagBitsFUCHSIA" category="enum"/> |
| <type name="VkHostImageCopyFlagBitsEXT" category="enum"/> |
| <type name="VkImageConstraintsInfoFlagBitsFUCHSIA" category="enum"/> |
| <type name="VkFormatFeatureFlagBits2" category="enum"/> |
| <type category="enum" name="VkFormatFeatureFlagBits2KHR" alias="VkFormatFeatureFlagBits2"/> |
| <type name="VkRenderingFlagBits" category="enum"/> |
| <type category="enum" name="VkRenderingFlagBitsKHR" alias="VkRenderingFlagBits"/> |
| <type name="VkPipelineDepthStencilStateCreateFlagBits" category="enum"/> |
| <type name="VkPipelineColorBlendStateCreateFlagBits" category="enum"/> |
| <type name="VkImageCompressionFlagBitsEXT" category="enum"/> |
| <type name="VkImageCompressionFixedRateFlagBitsEXT" category="enum"/> |
| <type name="VkExportMetalObjectTypeFlagBitsEXT" category="enum"/> |
| <type name="VkPipelineRobustnessBufferBehaviorEXT" category="enum"/> |
| <type name="VkPipelineRobustnessImageBehaviorEXT" category="enum"/> |
| <type name="VkDeviceAddressBindingFlagBitsEXT" category="enum"/> |
| <type name="VkDeviceAddressBindingTypeEXT" category="enum"/> |
| <type name="VkMicromapTypeEXT" category="enum"/> |
| <type name="VkBuildMicromapModeEXT" category="enum"/> |
| <type name="VkCopyMicromapModeEXT" category="enum"/> |
| <type name="VkBuildMicromapFlagBitsEXT" category="enum"/> |
| <type name="VkMicromapCreateFlagBitsEXT" category="enum"/> |
| <type name="VkOpacityMicromapFormatEXT" category="enum"/> |
| <type name="VkOpacityMicromapSpecialIndexEXT" category="enum"/> |
| <type name="VkDeviceFaultVendorBinaryHeaderVersionEXT" category="enum"/> |
| <type name="VkIndirectCommandsLayoutUsageFlagBitsEXT" category="enum"/> |
| <type name="VkIndirectExecutionSetInfoTypeEXT" category="enum"/> |
| <type name="VkIndirectCommandsInputModeFlagBitsEXT" category="enum"/> |
| <type name="VkFrameBoundaryFlagBitsEXT" category="enum"/> |
| <type name="VkMemoryDecompressionMethodFlagBitsNV" category="enum"/> |
| <type name="VkDepthBiasRepresentationEXT" category="enum"/> |
| <type name="VkDirectDriverLoadingModeLUNARG" category="enum"/> |
| <type name="VkAntiLagModeAMD" category="enum"/> |
| <type name="VkAntiLagStageAMD" category="enum"/> |
| <type name="VkPipelineCreateFlagBits2KHR" category="enum"/> |
| <type name="VkBufferUsageFlagBits2KHR" category="enum"/> |
| <type name="VkDisplacementMicromapFormatNV" category="enum"/> |
| <type name="VkShaderCreateFlagBitsEXT" category="enum"/> |
| <type name="VkShaderCodeTypeEXT" category="enum"/> |
| <type name="VkScopeKHR" category="enum"/> |
| <type name="VkComponentTypeKHR" category="enum"/> |
| <type category="enum" name="VkScopeNV" alias="VkScopeKHR"/> |
| <type category="enum" name="VkComponentTypeNV" alias="VkComponentTypeKHR"/> |
| <type name="VkCubicFilterWeightsQCOM" category="enum"/> |
| <type name="VkBlockMatchWindowCompareModeQCOM" category="enum"/> |
| <type name="VkLayeredDriverUnderlyingApiMSFT" category="enum"/> |
| <type name="VkPhysicalDeviceLayeredApiKHR" category="enum"/> |
| <type name="VkDepthClampModeEXT" category="enum"/> |
| |
| <comment>WSI extensions</comment> |
| <type name="VkColorSpaceKHR" category="enum"/> |
| <type name="VkCompositeAlphaFlagBitsKHR" category="enum"/> |
| <type name="VkDisplayPlaneAlphaFlagBitsKHR" category="enum"/> |
| <type name="VkPresentModeKHR" category="enum"/> |
| <type name="VkSurfaceTransformFlagBitsKHR" category="enum"/> |
| <type name="VkDebugReportFlagBitsEXT" category="enum"/> |
| <type name="VkDebugReportObjectTypeEXT" category="enum"/> |
| <type name="VkDeviceMemoryReportEventTypeEXT" category="enum"/> |
| <type name="VkRasterizationOrderAMD" category="enum"/> |
| <type name="VkExternalMemoryHandleTypeFlagBitsNV" category="enum"/> |
| <type name="VkExternalMemoryFeatureFlagBitsNV" category="enum"/> |
| <type name="VkValidationCheckEXT" category="enum"/> |
| <type name="VkValidationFeatureEnableEXT" category="enum"/> |
| <type name="VkValidationFeatureDisableEXT" category="enum"/> |
| <type name="VkExternalMemoryHandleTypeFlagBits" category="enum"/> |
| <type category="enum" name="VkExternalMemoryHandleTypeFlagBitsKHR" alias="VkExternalMemoryHandleTypeFlagBits"/> |
| <type name="VkExternalMemoryFeatureFlagBits" category="enum"/> |
| <type category="enum" name="VkExternalMemoryFeatureFlagBitsKHR" alias="VkExternalMemoryFeatureFlagBits"/> |
| <type name="VkExternalSemaphoreHandleTypeFlagBits" category="enum"/> |
| <type category="enum" name="VkExternalSemaphoreHandleTypeFlagBitsKHR" alias="VkExternalSemaphoreHandleTypeFlagBits"/> |
| <type name="VkExternalSemaphoreFeatureFlagBits" category="enum"/> |
| <type category="enum" name="VkExternalSemaphoreFeatureFlagBitsKHR" alias="VkExternalSemaphoreFeatureFlagBits"/> |
| <type name="VkSemaphoreImportFlagBits" category="enum"/> |
| <type category="enum" name="VkSemaphoreImportFlagBitsKHR" alias="VkSemaphoreImportFlagBits"/> |
| <type name="VkExternalFenceHandleTypeFlagBits" category="enum"/> |
| <type category="enum" name="VkExternalFenceHandleTypeFlagBitsKHR" alias="VkExternalFenceHandleTypeFlagBits"/> |
| <type name="VkExternalFenceFeatureFlagBits" category="enum"/> |
| <type category="enum" name="VkExternalFenceFeatureFlagBitsKHR" alias="VkExternalFenceFeatureFlagBits"/> |
| <type name="VkFenceImportFlagBits" category="enum"/> |
| <type category="enum" name="VkFenceImportFlagBitsKHR" alias="VkFenceImportFlagBits"/> |
| <type name="VkSurfaceCounterFlagBitsEXT" category="enum"/> |
| <type name="VkDisplayPowerStateEXT" category="enum"/> |
| <type name="VkDeviceEventTypeEXT" category="enum"/> |
| <type name="VkDisplayEventTypeEXT" category="enum"/> |
| <type name="VkPeerMemoryFeatureFlagBits" category="enum"/> |
| <type category="enum" name="VkPeerMemoryFeatureFlagBitsKHR" alias="VkPeerMemoryFeatureFlagBits"/> |
| <type name="VkMemoryAllocateFlagBits" category="enum"/> |
| <type category="enum" name="VkMemoryAllocateFlagBitsKHR" alias="VkMemoryAllocateFlagBits"/> |
| <type name="VkDeviceGroupPresentModeFlagBitsKHR" category="enum"/> |
| <type name="VkSwapchainCreateFlagBitsKHR" category="enum"/> |
| <type name="VkSubgroupFeatureFlagBits" category="enum"/> |
| <type name="VkTessellationDomainOrigin" category="enum"/> |
| <type category="enum" name="VkTessellationDomainOriginKHR" alias="VkTessellationDomainOrigin"/> |
| <type name="VkSamplerYcbcrModelConversion" category="enum"/> |
| <type category="enum" name="VkSamplerYcbcrModelConversionKHR" alias="VkSamplerYcbcrModelConversion"/> |
| <type name="VkSamplerYcbcrRange" category="enum"/> |
| <type category="enum" name="VkSamplerYcbcrRangeKHR" alias="VkSamplerYcbcrRange"/> |
| <type name="VkChromaLocation" category="enum"/> |
| <type category="enum" name="VkChromaLocationKHR" alias="VkChromaLocation"/> |
| <type name="VkSamplerReductionMode" category="enum"/> |
| <type category="enum" name="VkSamplerReductionModeEXT" alias="VkSamplerReductionMode"/> |
| <type name="VkBlendOverlapEXT" category="enum"/> |
| <type name="VkDebugUtilsMessageSeverityFlagBitsEXT" category="enum"/> |
| <type name="VkDebugUtilsMessageTypeFlagBitsEXT" category="enum"/> |
| <type name="VkFullScreenExclusiveEXT" category="enum"/> |
| <type name="VkShaderFloatControlsIndependence" category="enum"/> |
| <type category="enum" name="VkShaderFloatControlsIndependenceKHR" alias="VkShaderFloatControlsIndependence"/> |
| <type name="VkSwapchainImageUsageFlagBitsANDROID" category="enum"/> |
| <type name="VkFragmentShadingRateCombinerOpKHR" category="enum"/> |
| <type name="VkSubmitFlagBits" category="enum"/> |
| <type category="enum" name="VkSubmitFlagBitsKHR" alias="VkSubmitFlagBits"/> |
| <type name="VkGraphicsPipelineLibraryFlagBitsEXT" category="enum"/> |
| <type name="VkOpticalFlowGridSizeFlagBitsNV" category="enum"/> |
| <type name="VkOpticalFlowUsageFlagBitsNV" category="enum"/> |
| <type name="VkOpticalFlowPerformanceLevelNV" category="enum"/> |
| <type name="VkOpticalFlowSessionBindingPointNV" category="enum"/> |
| <type name="VkOpticalFlowSessionCreateFlagBitsNV" category="enum"/> |
| <type name="VkOpticalFlowExecuteFlagBitsNV" category="enum"/> |
| <type name="VkDeviceFaultAddressTypeEXT" category="enum"/> |
| <type name="VkPresentScalingFlagBitsEXT" category="enum"/> |
| <type name="VkPresentGravityFlagBitsEXT" category="enum"/> |
| <type name="VkLayerSettingTypeEXT" category="enum"/> |
| <type name="VkLatencyMarkerNV" category="enum"/> |
| <type name="VkOutOfBandQueueTypeNV" category="enum"/> |
| <type name="VkPhysicalDeviceSchedulingControlsFlagBitsARM" category="enum"/> |
| <type name="VkMemoryUnmapFlagBitsKHR" category="enum"/> |
| <type name="VkWaylandSurfaceCreateFlagBitsKHR" category="enum"/> |
| |
| <comment>Enumerated types in the header, but not used by the API</comment> |
| <type name="VkVendorId" category="enum"/> |
| <type name="VkDriverId" category="enum"/> |
| <type category="enum" name="VkDriverIdKHR" alias="VkDriverId"/> |
| <type name="VkShadingRatePaletteEntryNV" category="enum"/> |
| <type name="VkCoarseSampleOrderTypeNV" category="enum"/> |
| <type name="VkPipelineExecutableStatisticFormatKHR" category="enum"/> |
| |
| <comment>Video Core extensions</comment> |
| <type name="VkVideoCodecOperationFlagBitsKHR" category="enum"/> |
| <type name="VkVideoChromaSubsamplingFlagBitsKHR" category="enum"/> |
| <type name="VkVideoComponentBitDepthFlagBitsKHR" category="enum"/> |
| <type name="VkVideoCapabilityFlagBitsKHR" category="enum"/> |
| <type name="VkVideoSessionCreateFlagBitsKHR" category="enum"/> |
| <type name="VkVideoCodingControlFlagBitsKHR" category="enum"/> |
| <type name="VkQueryResultStatusKHR" category="enum"/> |
| |
| <comment>Video Decode extensions</comment> |
| <type name="VkVideoDecodeUsageFlagBitsKHR" category="enum"/> |
| <type name="VkVideoDecodeCapabilityFlagBitsKHR" category="enum"/> |
| |
| <comment>Video H.264 Decode extensions</comment> |
| <type name="VkVideoDecodeH264PictureLayoutFlagBitsKHR" category="enum"/> |
| |
| <comment>Video H.265 Decode extensions</comment> |
| |
| <comment>Video Encode extensions</comment> |
| <type name="VkVideoEncodeFlagBitsKHR" category="enum"/> |
| <type name="VkVideoEncodeUsageFlagBitsKHR" category="enum"/> |
| <type name="VkVideoEncodeContentFlagBitsKHR" category="enum"/> |
| <type name="VkVideoEncodeTuningModeKHR" category="enum"/> |
| <type name="VkVideoEncodeCapabilityFlagBitsKHR" category="enum"/> |
| <type name="VkVideoEncodeFeedbackFlagBitsKHR" category="enum"/> |
| <type name="VkVideoEncodeRateControlModeFlagBitsKHR" category="enum"/> |
| |
| <comment>Video H.264 Encode extensions</comment> |
| <type name="VkVideoEncodeH264CapabilityFlagBitsKHR" category="enum"/> |
| <type name="VkVideoEncodeH264StdFlagBitsKHR" category="enum"/> |
| <type name="VkVideoEncodeH264RateControlFlagBitsKHR" category="enum"/> |
| |
| <comment>Video H.265 Encode extensions</comment> |
| <type name="VkVideoEncodeH265CapabilityFlagBitsKHR" category="enum"/> |
| <type name="VkVideoEncodeH265StdFlagBitsKHR" category="enum"/> |
| <type name="VkVideoEncodeH265RateControlFlagBitsKHR" category="enum"/> |
| <type name="VkVideoEncodeH265CtbSizeFlagBitsKHR" category="enum"/> |
| <type name="VkVideoEncodeH265TransformBlockSizeFlagBitsKHR" category="enum"/> |
| |
| <comment>The PFN_vk*Function types are used by VkAllocationCallbacks below</comment> |
| <type category="funcpointer">typedef void (VKAPI_PTR *<name>PFN_vkInternalAllocationNotification</name>)( |
| <type>void</type>* pUserData, |
| <type>size_t</type> size, |
| <type>VkInternalAllocationType</type> allocationType, |
| <type>VkSystemAllocationScope</type> allocationScope);</type> |
| <type category="funcpointer">typedef void (VKAPI_PTR *<name>PFN_vkInternalFreeNotification</name>)( |
| <type>void</type>* pUserData, |
| <type>size_t</type> size, |
| <type>VkInternalAllocationType</type> allocationType, |
| <type>VkSystemAllocationScope</type> allocationScope);</type> |
| <type category="funcpointer">typedef void* (VKAPI_PTR *<name>PFN_vkReallocationFunction</name>)( |
| <type>void</type>* pUserData, |
| <type>void</type>* pOriginal, |
| <type>size_t</type> size, |
| <type>size_t</type> alignment, |
| <type>VkSystemAllocationScope</type> allocationScope);</type> |
| <type category="funcpointer">typedef void* (VKAPI_PTR *<name>PFN_vkAllocationFunction</name>)( |
| <type>void</type>* pUserData, |
| <type>size_t</type> size, |
| <type>size_t</type> alignment, |
| <type>VkSystemAllocationScope</type> allocationScope);</type> |
| <type category="funcpointer">typedef void (VKAPI_PTR *<name>PFN_vkFreeFunction</name>)( |
| <type>void</type>* pUserData, |
| <type>void</type>* pMemory);</type> |
| |
| <comment>The PFN_vkVoidFunction type are used by VkGet*ProcAddr below</comment> |
| <type category="funcpointer">typedef void (VKAPI_PTR *<name>PFN_vkVoidFunction</name>)(void);</type> |
| |
| <comment>The PFN_vkDebugReportCallbackEXT type are used by the DEBUG_REPORT extension</comment> |
| <type category="funcpointer">typedef VkBool32 (VKAPI_PTR *<name>PFN_vkDebugReportCallbackEXT</name>)( |
| <type>VkDebugReportFlagsEXT</type> flags, |
| <type>VkDebugReportObjectTypeEXT</type> objectType, |
| <type>uint64_t</type> object, |
| <type>size_t</type> location, |
| <type>int32_t</type> messageCode, |
| const <type>char</type>* pLayerPrefix, |
| const <type>char</type>* pMessage, |
| <type>void</type>* pUserData);</type> |
| |
| <comment>The PFN_vkDebugUtilsMessengerCallbackEXT type are used by the VK_EXT_debug_utils extension</comment> |
| <type category="funcpointer" requires="VkDebugUtilsMessengerCallbackDataEXT">typedef VkBool32 (VKAPI_PTR *<name>PFN_vkDebugUtilsMessengerCallbackEXT</name>)( |
| <type>VkDebugUtilsMessageSeverityFlagBitsEXT</type> messageSeverity, |
| <type>VkDebugUtilsMessageTypeFlagsEXT</type> messageTypes, |
| const <type>VkDebugUtilsMessengerCallbackDataEXT</type>* pCallbackData, |
| <type>void</type>* pUserData);</type> |
| |
| <comment>The PFN_vkFaultCallbackFunction type is used by VKSC_VERSION_1_0</comment> |
| <type category="funcpointer">typedef void (VKAPI_PTR *<name>PFN_vkFaultCallbackFunction</name>)( |
| <type>VkBool32</type> unrecordedFaults, |
| <type>uint32_t</type> faultCount, |
| const <type>VkFaultData</type>* pFaults);</type> |
| |
| <comment>The PFN_vkDeviceMemoryReportCallbackEXT type is used by the VK_EXT_device_memory_report extension</comment> |
| <type category="funcpointer" requires="VkDeviceMemoryReportCallbackDataEXT">typedef void (VKAPI_PTR *<name>PFN_vkDeviceMemoryReportCallbackEXT</name>)( |
| const <type>VkDeviceMemoryReportCallbackDataEXT</type>* pCallbackData, |
| <type>void</type>* pUserData);</type> |
| |
| <comment>The PFN_vkGetInstanceProcAddrLUNARG type is used by the |
| VkDirectDriverLoadingInfoLUNARG structure. |
| We cannot introduce an explicit dependency on the |
| equivalent PFN_vkGetInstanceProcAddr type, even though |
| it is implicitly generated in the C header, because |
| that results in multiple definitions.</comment> |
| <type category="funcpointer" requires="VkInstance">typedef PFN_vkVoidFunction (VKAPI_PTR *<name>PFN_vkGetInstanceProcAddrLUNARG</name>)( |
| <type>VkInstance</type> instance, const <type>char</type>* pName);</type> |
| |
| <comment>Struct types</comment> |
| <type category="struct" name="VkBaseOutStructure"> |
| <member><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">struct <type>VkBaseOutStructure</type>* <name>pNext</name></member> |
| </type> |
| <type category="struct" name="VkBaseInStructure"> |
| <member><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const struct <type>VkBaseInStructure</type>* <name>pNext</name></member> |
| </type> |
| <type category="struct" name="VkOffset2D"> |
| <member><type>int32_t</type> <name>x</name></member> |
| <member><type>int32_t</type> <name>y</name></member> |
| </type> |
| <type category="struct" name="VkOffset3D"> |
| <member><type>int32_t</type> <name>x</name></member> |
| <member><type>int32_t</type> <name>y</name></member> |
| <member><type>int32_t</type> <name>z</name></member> |
| </type> |
| <type category="struct" name="VkExtent2D"> |
| <member><type>uint32_t</type> <name>width</name></member> |
| <member><type>uint32_t</type> <name>height</name></member> |
| </type> |
| <type category="struct" name="VkExtent3D"> |
| <member><type>uint32_t</type> <name>width</name></member> |
| <member><type>uint32_t</type> <name>height</name></member> |
| <member><type>uint32_t</type> <name>depth</name></member> |
| </type> |
| <type category="struct" name="VkViewport"> |
| <member noautovalidity="true"><type>float</type> <name>x</name></member> |
| <member noautovalidity="true"><type>float</type> <name>y</name></member> |
| <member noautovalidity="true"><type>float</type> <name>width</name></member> |
| <member noautovalidity="true"><type>float</type> <name>height</name></member> |
| <member><type>float</type> <name>minDepth</name></member> |
| <member><type>float</type> <name>maxDepth</name></member> |
| </type> |
| <type category="struct" name="VkRect2D"> |
| <member><type>VkOffset2D</type> <name>offset</name></member> |
| <member><type>VkExtent2D</type> <name>extent</name></member> |
| </type> |
| <type category="struct" name="VkClearRect"> |
| <member><type>VkRect2D</type> <name>rect</name></member> |
| <member><type>uint32_t</type> <name>baseArrayLayer</name></member> |
| <member><type>uint32_t</type> <name>layerCount</name></member> |
| </type> |
| <type category="struct" name="VkComponentMapping"> |
| <member><type>VkComponentSwizzle</type> <name>r</name></member> |
| <member><type>VkComponentSwizzle</type> <name>g</name></member> |
| <member><type>VkComponentSwizzle</type> <name>b</name></member> |
| <member><type>VkComponentSwizzle</type> <name>a</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceProperties" returnedonly="true"> |
| <member limittype="noauto"><type>uint32_t</type> <name>apiVersion</name></member> |
| <member limittype="noauto"><type>uint32_t</type> <name>driverVersion</name></member> |
| <member limittype="noauto"><type>uint32_t</type> <name>vendorID</name></member> |
| <member limittype="noauto"><type>uint32_t</type> <name>deviceID</name></member> |
| <member limittype="noauto"><type>VkPhysicalDeviceType</type> <name>deviceType</name></member> |
| <member limittype="noauto" len="null-terminated"><type>char</type> <name>deviceName</name>[<enum>VK_MAX_PHYSICAL_DEVICE_NAME_SIZE</enum>]</member> |
| <member limittype="noauto"><type>uint8_t</type> <name>pipelineCacheUUID</name>[<enum>VK_UUID_SIZE</enum>]</member> |
| <member limittype="struct"><type>VkPhysicalDeviceLimits</type> <name>limits</name></member> |
| <member limittype="struct"><type>VkPhysicalDeviceSparseProperties</type> <name>sparseProperties</name></member> |
| </type> |
| <type category="struct" name="VkExtensionProperties" returnedonly="true"> |
| <member len="null-terminated"><type>char</type> <name>extensionName</name>[<enum>VK_MAX_EXTENSION_NAME_SIZE</enum>]<comment>extension name</comment></member> |
| <member><type>uint32_t</type> <name>specVersion</name><comment>version of the extension specification implemented</comment></member> |
| </type> |
| <type category="struct" name="VkLayerProperties" returnedonly="true"> |
| <member len="null-terminated"><type>char</type> <name>layerName</name>[<enum>VK_MAX_EXTENSION_NAME_SIZE</enum>]<comment>layer name</comment></member> |
| <member><type>uint32_t</type> <name>specVersion</name><comment>version of the layer specification implemented</comment></member> |
| <member><type>uint32_t</type> <name>implementationVersion</name><comment>build or release version of the layer's library</comment></member> |
| <member len="null-terminated"><type>char</type> <name>description</name>[<enum>VK_MAX_DESCRIPTION_SIZE</enum>]<comment>Free-form description of the layer</comment></member> |
| </type> |
| <type category="struct" name="VkApplicationInfo"> |
| <member values="VK_STRUCTURE_TYPE_APPLICATION_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true" len="null-terminated">const <type>char</type>* <name>pApplicationName</name></member> |
| <member><type>uint32_t</type> <name>applicationVersion</name></member> |
| <member optional="true" len="null-terminated">const <type>char</type>* <name>pEngineName</name></member> |
| <member><type>uint32_t</type> <name>engineVersion</name></member> |
| <member><type>uint32_t</type> <name>apiVersion</name></member> |
| </type> |
| <type category="struct" name="VkAllocationCallbacks"> |
| <member optional="true"><type>void</type>* <name>pUserData</name></member> |
| <member noautovalidity="true"><type>PFN_vkAllocationFunction</type> <name>pfnAllocation</name></member> |
| <member noautovalidity="true"><type>PFN_vkReallocationFunction</type> <name>pfnReallocation</name></member> |
| <member noautovalidity="true"><type>PFN_vkFreeFunction</type> <name>pfnFree</name></member> |
| <member optional="true" noautovalidity="true"><type>PFN_vkInternalAllocationNotification</type> <name>pfnInternalAllocation</name></member> |
| <member optional="true" noautovalidity="true"><type>PFN_vkInternalFreeNotification</type> <name>pfnInternalFree</name></member> |
| </type> |
| <type category="struct" name="VkDeviceQueueCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkDeviceQueueCreateFlags</type> <name>flags</name></member> |
| <member><type>uint32_t</type> <name>queueFamilyIndex</name></member> |
| <member><type>uint32_t</type> <name>queueCount</name></member> |
| <member len="queueCount">const <type>float</type>* <name>pQueuePriorities</name></member> |
| </type> |
| <type category="struct" name="VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkDeviceCreateFlags</type> <name>flags</name></member> |
| <member><type>uint32_t</type> <name>queueCreateInfoCount</name></member> |
| <member len="queueCreateInfoCount">const <type>VkDeviceQueueCreateInfo</type>* <name>pQueueCreateInfos</name></member> |
| <member optional="true" deprecated="ignored"><type>uint32_t</type> <name>enabledLayerCount</name></member> |
| <member len="enabledLayerCount,null-terminated" deprecated="ignored">const <type>char</type>* const* <name>ppEnabledLayerNames</name><comment>Ordered list of layer names to be enabled</comment></member> |
| <member optional="true"><type>uint32_t</type> <name>enabledExtensionCount</name></member> |
| <member len="enabledExtensionCount,null-terminated">const <type>char</type>* const* <name>ppEnabledExtensionNames</name></member> |
| <member optional="true">const <type>VkPhysicalDeviceFeatures</type>* <name>pEnabledFeatures</name></member> |
| </type> |
| <type category="struct" name="VkInstanceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkInstanceCreateFlags</type> <name>flags</name></member> |
| <member optional="true">const <type>VkApplicationInfo</type>* <name>pApplicationInfo</name></member> |
| <member optional="true"><type>uint32_t</type> <name>enabledLayerCount</name></member> |
| <member len="enabledLayerCount,null-terminated">const <type>char</type>* const* <name>ppEnabledLayerNames</name><comment>Ordered list of layer names to be enabled</comment></member> |
| <member optional="true"><type>uint32_t</type> <name>enabledExtensionCount</name></member> |
| <member len="enabledExtensionCount,null-terminated">const <type>char</type>* const* <name>ppEnabledExtensionNames</name><comment>Extension names to be enabled</comment></member> |
| </type> |
| <type category="struct" name="VkQueueFamilyProperties" returnedonly="true"> |
| <member optional="true" limittype="bitmask"><type>VkQueueFlags</type> <name>queueFlags</name><comment>Queue flags</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>queueCount</name></member> |
| <member limittype="bits"><type>uint32_t</type> <name>timestampValidBits</name></member> |
| <member limittype="min,mul"><type>VkExtent3D</type> <name>minImageTransferGranularity</name><comment>Minimum alignment requirement for image transfers</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMemoryProperties" returnedonly="true"> |
| <member><type>uint32_t</type> <name>memoryTypeCount</name></member> |
| <member len="memoryTypeCount"><type>VkMemoryType</type> <name>memoryTypes</name>[<enum>VK_MAX_MEMORY_TYPES</enum>]</member> |
| <member><type>uint32_t</type> <name>memoryHeapCount</name></member> |
| <member len="memoryHeapCount"><type>VkMemoryHeap</type> <name>memoryHeaps</name>[<enum>VK_MAX_MEMORY_HEAPS</enum>]</member> |
| </type> |
| <type category="struct" name="VkMemoryAllocateInfo"> |
| <member values="VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceSize</type> <name>allocationSize</name><comment>Size of memory allocation</comment></member> |
| <member><type>uint32_t</type> <name>memoryTypeIndex</name><comment>Index of the of the memory type to allocate from</comment></member> |
| </type> |
| <type category="struct" name="VkMemoryRequirements" returnedonly="true"> |
| <member><type>VkDeviceSize</type> <name>size</name><comment>Specified in bytes</comment></member> |
| <member><type>VkDeviceSize</type> <name>alignment</name><comment>Specified in bytes</comment></member> |
| <member><type>uint32_t</type> <name>memoryTypeBits</name><comment>Bitmask of the allowed memory type indices into memoryTypes[] for this object</comment></member> |
| </type> |
| <type category="struct" name="VkSparseImageFormatProperties" returnedonly="true"> |
| <member limittype="bitmask" optional="true"><type>VkImageAspectFlags</type> <name>aspectMask</name></member> |
| <member limittype="min,mul"><type>VkExtent3D</type> <name>imageGranularity</name></member> |
| <member limittype="bitmask" optional="true"><type>VkSparseImageFormatFlags</type> <name>flags</name></member> |
| </type> |
| <type category="struct" name="VkSparseImageMemoryRequirements" returnedonly="true"> |
| <member><type>VkSparseImageFormatProperties</type> <name>formatProperties</name></member> |
| <member><type>uint32_t</type> <name>imageMipTailFirstLod</name></member> |
| <member><type>VkDeviceSize</type> <name>imageMipTailSize</name><comment>Specified in bytes, must be a multiple of sparse block size in bytes / alignment</comment></member> |
| <member><type>VkDeviceSize</type> <name>imageMipTailOffset</name><comment>Specified in bytes, must be a multiple of sparse block size in bytes / alignment</comment></member> |
| <member><type>VkDeviceSize</type> <name>imageMipTailStride</name><comment>Specified in bytes, must be a multiple of sparse block size in bytes / alignment</comment></member> |
| </type> |
| <type category="struct" name="VkMemoryType" returnedonly="true"> |
| <member optional="true"><type>VkMemoryPropertyFlags</type> <name>propertyFlags</name><comment>Memory properties of this memory type</comment></member> |
| <member><type>uint32_t</type> <name>heapIndex</name><comment>Index of the memory heap allocations of this memory type are taken from</comment></member> |
| </type> |
| <type category="struct" name="VkMemoryHeap" returnedonly="true"> |
| <member><type>VkDeviceSize</type> <name>size</name><comment>Available memory in the heap</comment></member> |
| <member optional="true"><type>VkMemoryHeapFlags</type> <name>flags</name><comment>Flags for the heap</comment></member> |
| </type> |
| <type category="struct" name="VkMappedMemoryRange"> |
| <member values="VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceMemory</type> <name>memory</name><comment>Mapped memory object</comment></member> |
| <member><type>VkDeviceSize</type> <name>offset</name><comment>Offset within the memory object where the range starts</comment></member> |
| <member><type>VkDeviceSize</type> <name>size</name><comment>Size of the range within the memory object</comment></member> |
| </type> |
| <type category="struct" name="VkFormatProperties" returnedonly="true"> |
| <member optional="true" limittype="bitmask"><type>VkFormatFeatureFlags</type> <name>linearTilingFeatures</name><comment>Format features in case of linear tiling</comment></member> |
| <member optional="true" limittype="bitmask"><type>VkFormatFeatureFlags</type> <name>optimalTilingFeatures</name><comment>Format features in case of optimal tiling</comment></member> |
| <member optional="true" limittype="bitmask"><type>VkFormatFeatureFlags</type> <name>bufferFeatures</name><comment>Format features supported by buffers</comment></member> |
| </type> |
| <type category="struct" name="VkImageFormatProperties" returnedonly="true"> |
| <member><type>VkExtent3D</type> <name>maxExtent</name><comment>max image dimensions for this resource type</comment></member> |
| <member><type>uint32_t</type> <name>maxMipLevels</name><comment>max number of mipmap levels for this resource type</comment></member> |
| <member><type>uint32_t</type> <name>maxArrayLayers</name><comment>max array size for this resource type</comment></member> |
| <member optional="true"><type>VkSampleCountFlags</type> <name>sampleCounts</name><comment>supported sample counts for this resource type</comment></member> |
| <member><type>VkDeviceSize</type> <name>maxResourceSize</name><comment>max size (in bytes) of this resource type</comment></member> |
| </type> |
| <type category="struct" name="VkDescriptorBufferInfo"> |
| <member optional="true"><type>VkBuffer</type> <name>buffer</name><comment>Buffer used for this descriptor slot.</comment></member> |
| <member><type>VkDeviceSize</type> <name>offset</name><comment>Base offset from buffer start in bytes to update in the descriptor set.</comment></member> |
| <member><type>VkDeviceSize</type> <name>range</name><comment>Size in bytes of the buffer resource for this descriptor update.</comment></member> |
| </type> |
| <type category="struct" name="VkDescriptorImageInfo"> |
| <member noautovalidity="true"><type>VkSampler</type> <name>sampler</name><comment>Sampler to write to the descriptor in case it is a SAMPLER or COMBINED_IMAGE_SAMPLER descriptor. Ignored otherwise.</comment></member> |
| <member noautovalidity="true"><type>VkImageView</type> <name>imageView</name><comment>Image view to write to the descriptor in case it is a SAMPLED_IMAGE, STORAGE_IMAGE, COMBINED_IMAGE_SAMPLER, or INPUT_ATTACHMENT descriptor. Ignored otherwise.</comment></member> |
| <member noautovalidity="true"><type>VkImageLayout</type> <name>imageLayout</name><comment>Layout the image is expected to be in when accessed using this descriptor (only used if imageView is not VK_NULL_HANDLE).</comment></member> |
| </type> |
| <type category="struct" name="VkWriteDescriptorSet"> |
| <member values="VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member noautovalidity="true"><type>VkDescriptorSet</type> <name>dstSet</name><comment>Destination descriptor set</comment></member> |
| <member><type>uint32_t</type> <name>dstBinding</name><comment>Binding within the destination descriptor set to write</comment></member> |
| <member><type>uint32_t</type> <name>dstArrayElement</name><comment>Array element within the destination binding to write</comment></member> |
| <member><type>uint32_t</type> <name>descriptorCount</name><comment>Number of descriptors to write (determines the size of the array pointed by pDescriptors)</comment></member> |
| <member><type>VkDescriptorType</type> <name>descriptorType</name><comment>Descriptor type to write (determines which members of the array pointed by pDescriptors are going to be used)</comment></member> |
| <member noautovalidity="true" len="descriptorCount">const <type>VkDescriptorImageInfo</type>* <name>pImageInfo</name><comment>Sampler, image view, and layout for SAMPLER, COMBINED_IMAGE_SAMPLER, {SAMPLED,STORAGE}_IMAGE, and INPUT_ATTACHMENT descriptor types.</comment></member> |
| <member noautovalidity="true" len="descriptorCount">const <type>VkDescriptorBufferInfo</type>* <name>pBufferInfo</name><comment>Raw buffer, size, and offset for {UNIFORM,STORAGE}_BUFFER[_DYNAMIC] descriptor types.</comment></member> |
| <member noautovalidity="true" len="descriptorCount">const <type>VkBufferView</type>* <name>pTexelBufferView</name><comment>Buffer view to write to the descriptor for {UNIFORM,STORAGE}_TEXEL_BUFFER descriptor types.</comment></member> |
| </type> |
| <type category="struct" name="VkCopyDescriptorSet"> |
| <member values="VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDescriptorSet</type> <name>srcSet</name><comment>Source descriptor set</comment></member> |
| <member><type>uint32_t</type> <name>srcBinding</name><comment>Binding within the source descriptor set to copy from</comment></member> |
| <member><type>uint32_t</type> <name>srcArrayElement</name><comment>Array element within the source binding to copy from</comment></member> |
| <member><type>VkDescriptorSet</type> <name>dstSet</name><comment>Destination descriptor set</comment></member> |
| <member><type>uint32_t</type> <name>dstBinding</name><comment>Binding within the destination descriptor set to copy to</comment></member> |
| <member><type>uint32_t</type> <name>dstArrayElement</name><comment>Array element within the destination binding to copy to</comment></member> |
| <member><type>uint32_t</type> <name>descriptorCount</name><comment>Number of descriptors to write (determines the size of the array pointed by pDescriptors)</comment></member> |
| </type> |
| <type category="struct" name="VkBufferUsageFlags2CreateInfoKHR" structextends="VkBufferViewCreateInfo,VkBufferCreateInfo,VkPhysicalDeviceExternalBufferInfo,VkDescriptorBufferBindingInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBufferUsageFlags2KHR</type> <name>usage</name></member> |
| </type> |
| <type category="struct" name="VkBufferCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkBufferCreateFlags</type> <name>flags</name><comment>Buffer creation flags</comment></member> |
| <member><type>VkDeviceSize</type> <name>size</name><comment>Specified in bytes</comment></member> |
| <member noautovalidity="true"><type>VkBufferUsageFlags</type> <name>usage</name><comment>Buffer usage flags</comment></member> |
| <member><type>VkSharingMode</type> <name>sharingMode</name></member> |
| <member optional="true"><type>uint32_t</type> <name>queueFamilyIndexCount</name></member> |
| <member noautovalidity="true" len="queueFamilyIndexCount">const <type>uint32_t</type>* <name>pQueueFamilyIndices</name></member> |
| </type> |
| <type category="struct" name="VkBufferViewCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkBufferViewCreateFlags</type> <name>flags</name></member> |
| <member><type>VkBuffer</type> <name>buffer</name></member> |
| <member><type>VkFormat</type> <name>format</name><comment>Optionally specifies format of elements</comment></member> |
| <member><type>VkDeviceSize</type> <name>offset</name><comment>Specified in bytes</comment></member> |
| <member><type>VkDeviceSize</type> <name>range</name><comment>View size specified in bytes</comment></member> |
| </type> |
| <type category="struct" name="VkImageSubresource"> |
| <member><type>VkImageAspectFlags</type> <name>aspectMask</name></member> |
| <member><type>uint32_t</type> <name>mipLevel</name></member> |
| <member><type>uint32_t</type> <name>arrayLayer</name></member> |
| </type> |
| <type category="struct" name="VkImageSubresourceLayers"> |
| <member><type>VkImageAspectFlags</type> <name>aspectMask</name></member> |
| <member><type>uint32_t</type> <name>mipLevel</name></member> |
| <member><type>uint32_t</type> <name>baseArrayLayer</name></member> |
| <member><type>uint32_t</type> <name>layerCount</name></member> |
| </type> |
| <type category="struct" name="VkImageSubresourceRange"> |
| <member><type>VkImageAspectFlags</type> <name>aspectMask</name></member> |
| <member><type>uint32_t</type> <name>baseMipLevel</name></member> |
| <member><type>uint32_t</type> <name>levelCount</name></member> |
| <member><type>uint32_t</type> <name>baseArrayLayer</name></member> |
| <member><type>uint32_t</type> <name>layerCount</name></member> |
| </type> |
| <type category="struct" name="VkMemoryBarrier"> |
| <member values="VK_STRUCTURE_TYPE_MEMORY_BARRIER"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkAccessFlags</type> <name>srcAccessMask</name><comment>Memory accesses from the source of the dependency to synchronize</comment></member> |
| <member optional="true"><type>VkAccessFlags</type> <name>dstAccessMask</name><comment>Memory accesses from the destination of the dependency to synchronize</comment></member> |
| </type> |
| <type category="struct" name="VkBufferMemoryBarrier"> |
| <member values="VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member noautovalidity="true"><type>VkAccessFlags</type> <name>srcAccessMask</name><comment>Memory accesses from the source of the dependency to synchronize</comment></member> |
| <member noautovalidity="true"><type>VkAccessFlags</type> <name>dstAccessMask</name><comment>Memory accesses from the destination of the dependency to synchronize</comment></member> |
| <member><type>uint32_t</type> <name>srcQueueFamilyIndex</name><comment>Queue family to transition ownership from</comment></member> |
| <member><type>uint32_t</type> <name>dstQueueFamilyIndex</name><comment>Queue family to transition ownership to</comment></member> |
| <member><type>VkBuffer</type> <name>buffer</name><comment>Buffer to sync</comment></member> |
| <member><type>VkDeviceSize</type> <name>offset</name><comment>Offset within the buffer to sync</comment></member> |
| <member><type>VkDeviceSize</type> <name>size</name><comment>Amount of bytes to sync</comment></member> |
| </type> |
| <type category="struct" name="VkImageMemoryBarrier"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member noautovalidity="true"><type>VkAccessFlags</type> <name>srcAccessMask</name><comment>Memory accesses from the source of the dependency to synchronize</comment></member> |
| <member noautovalidity="true"><type>VkAccessFlags</type> <name>dstAccessMask</name><comment>Memory accesses from the destination of the dependency to synchronize</comment></member> |
| <member><type>VkImageLayout</type> <name>oldLayout</name><comment>Current layout of the image</comment></member> |
| <member><type>VkImageLayout</type> <name>newLayout</name><comment>New layout to transition the image to</comment></member> |
| <member><type>uint32_t</type> <name>srcQueueFamilyIndex</name><comment>Queue family to transition ownership from</comment></member> |
| <member><type>uint32_t</type> <name>dstQueueFamilyIndex</name><comment>Queue family to transition ownership to</comment></member> |
| <member><type>VkImage</type> <name>image</name><comment>Image to sync</comment></member> |
| <member><type>VkImageSubresourceRange</type> <name>subresourceRange</name><comment>Subresource range to sync</comment></member> |
| </type> |
| <type category="struct" name="VkImageCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkImageCreateFlags</type> <name>flags</name><comment>Image creation flags</comment></member> |
| <member><type>VkImageType</type> <name>imageType</name></member> |
| <member><type>VkFormat</type> <name>format</name></member> |
| <member><type>VkExtent3D</type> <name>extent</name></member> |
| <member><type>uint32_t</type> <name>mipLevels</name></member> |
| <member><type>uint32_t</type> <name>arrayLayers</name></member> |
| <member><type>VkSampleCountFlagBits</type> <name>samples</name></member> |
| <member><type>VkImageTiling</type> <name>tiling</name></member> |
| <member><type>VkImageUsageFlags</type> <name>usage</name><comment>Image usage flags</comment></member> |
| <member><type>VkSharingMode</type> <name>sharingMode</name><comment>Cross-queue-family sharing mode</comment></member> |
| <member optional="true"><type>uint32_t</type> <name>queueFamilyIndexCount</name><comment>Number of queue families to share across</comment></member> |
| <member noautovalidity="true" len="queueFamilyIndexCount">const <type>uint32_t</type>* <name>pQueueFamilyIndices</name><comment>Array of queue family indices to share across</comment></member> |
| <member><type>VkImageLayout</type> <name>initialLayout</name><comment>Initial image layout for all subresources</comment></member> |
| </type> |
| <type category="struct" name="VkSubresourceLayout"> |
| <member><type>VkDeviceSize</type> <name>offset</name><comment>Specified in bytes</comment></member> |
| <member><type>VkDeviceSize</type> <name>size</name><comment>Specified in bytes</comment></member> |
| <member><type>VkDeviceSize</type> <name>rowPitch</name><comment>Specified in bytes</comment></member> |
| <member><type>VkDeviceSize</type> <name>arrayPitch</name><comment>Specified in bytes</comment></member> |
| <member><type>VkDeviceSize</type> <name>depthPitch</name><comment>Specified in bytes</comment></member> |
| </type> |
| <type category="struct" name="VkImageViewCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkImageViewCreateFlags</type> <name>flags</name></member> |
| <member><type>VkImage</type> <name>image</name></member> |
| <member><type>VkImageViewType</type> <name>viewType</name></member> |
| <member><type>VkFormat</type> <name>format</name></member> |
| <member><type>VkComponentMapping</type> <name>components</name></member> |
| <member><type>VkImageSubresourceRange</type> <name>subresourceRange</name></member> |
| </type> |
| <type category="struct" name="VkBufferCopy"> |
| <member><type>VkDeviceSize</type> <name>srcOffset</name><comment>Specified in bytes</comment></member> |
| <member><type>VkDeviceSize</type> <name>dstOffset</name><comment>Specified in bytes</comment></member> |
| <member noautovalidity="true"><type>VkDeviceSize</type> <name>size</name><comment>Specified in bytes</comment></member> |
| </type> |
| <type category="struct" name="VkSparseMemoryBind"> |
| <member><type>VkDeviceSize</type> <name>resourceOffset</name><comment>Specified in bytes</comment></member> |
| <member><type>VkDeviceSize</type> <name>size</name><comment>Specified in bytes</comment></member> |
| <member optional="true"><type>VkDeviceMemory</type> <name>memory</name></member> |
| <member><type>VkDeviceSize</type> <name>memoryOffset</name><comment>Specified in bytes</comment></member> |
| <member optional="true"><type>VkSparseMemoryBindFlags</type> <name>flags</name></member> |
| </type> |
| <type category="struct" name="VkSparseImageMemoryBind"> |
| <member><type>VkImageSubresource</type> <name>subresource</name></member> |
| <member><type>VkOffset3D</type> <name>offset</name></member> |
| <member><type>VkExtent3D</type> <name>extent</name></member> |
| <member optional="true"><type>VkDeviceMemory</type> <name>memory</name></member> |
| <member><type>VkDeviceSize</type> <name>memoryOffset</name><comment>Specified in bytes</comment></member> |
| <member optional="true"><type>VkSparseMemoryBindFlags</type> <name>flags</name></member> |
| </type> |
| <type category="struct" name="VkSparseBufferMemoryBindInfo"> |
| <member><type>VkBuffer</type> <name>buffer</name></member> |
| <member><type>uint32_t</type> <name>bindCount</name></member> |
| <member len="bindCount">const <type>VkSparseMemoryBind</type>* <name>pBinds</name></member> |
| </type> |
| <type category="struct" name="VkSparseImageOpaqueMemoryBindInfo"> |
| <member><type>VkImage</type> <name>image</name></member> |
| <member><type>uint32_t</type> <name>bindCount</name></member> |
| <member len="bindCount">const <type>VkSparseMemoryBind</type>* <name>pBinds</name></member> |
| </type> |
| <type category="struct" name="VkSparseImageMemoryBindInfo"> |
| <member><type>VkImage</type> <name>image</name></member> |
| <member><type>uint32_t</type> <name>bindCount</name></member> |
| <member len="bindCount">const <type>VkSparseImageMemoryBind</type>* <name>pBinds</name></member> |
| </type> |
| <type category="struct" name="VkBindSparseInfo"> |
| <member values="VK_STRUCTURE_TYPE_BIND_SPARSE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>waitSemaphoreCount</name></member> |
| <member len="waitSemaphoreCount">const <type>VkSemaphore</type>* <name>pWaitSemaphores</name></member> |
| <member optional="true"><type>uint32_t</type> <name>bufferBindCount</name></member> |
| <member len="bufferBindCount">const <type>VkSparseBufferMemoryBindInfo</type>* <name>pBufferBinds</name></member> |
| <member optional="true"><type>uint32_t</type> <name>imageOpaqueBindCount</name></member> |
| <member len="imageOpaqueBindCount">const <type>VkSparseImageOpaqueMemoryBindInfo</type>* <name>pImageOpaqueBinds</name></member> |
| <member optional="true"><type>uint32_t</type> <name>imageBindCount</name></member> |
| <member len="imageBindCount">const <type>VkSparseImageMemoryBindInfo</type>* <name>pImageBinds</name></member> |
| <member optional="true"><type>uint32_t</type> <name>signalSemaphoreCount</name></member> |
| <member len="signalSemaphoreCount">const <type>VkSemaphore</type>* <name>pSignalSemaphores</name></member> |
| </type> |
| <type category="struct" name="VkImageCopy"> |
| <member><type>VkImageSubresourceLayers</type> <name>srcSubresource</name></member> |
| <member><type>VkOffset3D</type> <name>srcOffset</name><comment>Specified in pixels for both compressed and uncompressed images</comment></member> |
| <member><type>VkImageSubresourceLayers</type> <name>dstSubresource</name></member> |
| <member><type>VkOffset3D</type> <name>dstOffset</name><comment>Specified in pixels for both compressed and uncompressed images</comment></member> |
| <member><type>VkExtent3D</type> <name>extent</name><comment>Specified in pixels for both compressed and uncompressed images</comment></member> |
| </type> |
| <type category="struct" name="VkImageBlit"> |
| <member><type>VkImageSubresourceLayers</type> <name>srcSubresource</name></member> |
| <member><type>VkOffset3D</type> <name>srcOffsets</name>[2]<comment>Specified in pixels for both compressed and uncompressed images</comment></member> |
| <member><type>VkImageSubresourceLayers</type> <name>dstSubresource</name></member> |
| <member><type>VkOffset3D</type> <name>dstOffsets</name>[2]<comment>Specified in pixels for both compressed and uncompressed images</comment></member> |
| </type> |
| <type category="struct" name="VkBufferImageCopy"> |
| <member><type>VkDeviceSize</type> <name>bufferOffset</name><comment>Specified in bytes</comment></member> |
| <member><type>uint32_t</type> <name>bufferRowLength</name><comment>Specified in texels</comment></member> |
| <member><type>uint32_t</type> <name>bufferImageHeight</name></member> |
| <member><type>VkImageSubresourceLayers</type> <name>imageSubresource</name></member> |
| <member><type>VkOffset3D</type> <name>imageOffset</name><comment>Specified in pixels for both compressed and uncompressed images</comment></member> |
| <member><type>VkExtent3D</type> <name>imageExtent</name><comment>Specified in pixels for both compressed and uncompressed images</comment></member> |
| </type> |
| <type category="struct" name="VkCopyMemoryIndirectCommandNV"> |
| <member><type>VkDeviceAddress</type> <name>srcAddress</name></member> |
| <member><type>VkDeviceAddress</type> <name>dstAddress</name></member> |
| <member><type>VkDeviceSize</type> <name>size</name><comment>Specified in bytes</comment></member> |
| </type> |
| <type category="struct" name="VkCopyMemoryToImageIndirectCommandNV"> |
| <member><type>VkDeviceAddress</type> <name>srcAddress</name></member> |
| <member><type>uint32_t</type> <name>bufferRowLength</name><comment>Specified in texels</comment></member> |
| <member><type>uint32_t</type> <name>bufferImageHeight</name></member> |
| <member><type>VkImageSubresourceLayers</type> <name>imageSubresource</name></member> |
| <member><type>VkOffset3D</type> <name>imageOffset</name><comment>Specified in pixels for both compressed and uncompressed images</comment></member> |
| <member><type>VkExtent3D</type> <name>imageExtent</name><comment>Specified in pixels for both compressed and uncompressed images</comment></member> |
| </type> |
| <type category="struct" name="VkImageResolve"> |
| <member><type>VkImageSubresourceLayers</type> <name>srcSubresource</name></member> |
| <member><type>VkOffset3D</type> <name>srcOffset</name></member> |
| <member><type>VkImageSubresourceLayers</type> <name>dstSubresource</name></member> |
| <member><type>VkOffset3D</type> <name>dstOffset</name></member> |
| <member><type>VkExtent3D</type> <name>extent</name></member> |
| </type> |
| <type category="struct" name="VkShaderModuleCreateInfo" structextends="VkPipelineShaderStageCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member noautovalidity="true" optional="true">const <type>void</type>* <name>pNext</name><comment>noautovalidity because this structure can be either an explicit parameter, or passed in a pNext chain</comment></member> |
| <member optional="true"><type>VkShaderModuleCreateFlags</type> <name>flags</name></member> |
| <member><type>size_t</type> <name>codeSize</name><comment>Specified in bytes</comment></member> |
| <member len="latexmath:[\textrm{codeSize} \over 4]" altlen="codeSize / 4">const <type>uint32_t</type>* <name>pCode</name><comment>Binary code of size codeSize</comment></member> |
| </type> |
| <type category="struct" name="VkDescriptorSetLayoutBinding"> |
| <member><type>uint32_t</type> <name>binding</name><comment>Binding number for this entry</comment></member> |
| <member><type>VkDescriptorType</type> <name>descriptorType</name><comment>Type of the descriptors in this binding</comment></member> |
| <member optional="true"><type>uint32_t</type> <name>descriptorCount</name><comment>Number of descriptors in this binding</comment></member> |
| <member noautovalidity="true"><type>VkShaderStageFlags</type> <name>stageFlags</name><comment>Shader stages this binding is visible to</comment></member> |
| <member noautovalidity="true" optional="true" len="descriptorCount">const <type>VkSampler</type>* <name>pImmutableSamplers</name><comment>Immutable samplers (used if descriptor type is SAMPLER or COMBINED_IMAGE_SAMPLER, is either NULL or contains count number of elements)</comment></member> |
| </type> |
| <type category="struct" name="VkDescriptorSetLayoutCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkDescriptorSetLayoutCreateFlags</type> <name>flags</name></member> |
| <member optional="true"><type>uint32_t</type> <name>bindingCount</name><comment>Number of bindings in the descriptor set layout</comment></member> |
| <member len="bindingCount">const <type>VkDescriptorSetLayoutBinding</type>* <name>pBindings</name><comment>Array of descriptor set layout bindings</comment></member> |
| </type> |
| <type category="struct" name="VkDescriptorPoolSize"> |
| <member><type>VkDescriptorType</type> <name>type</name></member> |
| <member><type>uint32_t</type> <name>descriptorCount</name></member> |
| </type> |
| <type category="struct" name="VkDescriptorPoolCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkDescriptorPoolCreateFlags</type> <name>flags</name></member> |
| <member><type>uint32_t</type> <name>maxSets</name></member> |
| <member optional="true"><type>uint32_t</type> <name>poolSizeCount</name></member> |
| <member len="poolSizeCount">const <type>VkDescriptorPoolSize</type>* <name>pPoolSizes</name></member> |
| </type> |
| <type category="struct" name="VkDescriptorSetAllocateInfo"> |
| <member values="VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDescriptorPool</type> <name>descriptorPool</name></member> |
| <member><type>uint32_t</type> <name>descriptorSetCount</name></member> |
| <member len="descriptorSetCount">const <type>VkDescriptorSetLayout</type>* <name>pSetLayouts</name></member> |
| </type> |
| <type category="struct" name="VkSpecializationMapEntry"> |
| <member><type>uint32_t</type> <name>constantID</name><comment>The SpecConstant ID specified in the BIL</comment></member> |
| <member><type>uint32_t</type> <name>offset</name><comment>Offset of the value in the data block</comment></member> |
| <member noautovalidity="true"><type>size_t</type> <name>size</name><comment>Size in bytes of the SpecConstant</comment></member> |
| </type> |
| <type category="struct" name="VkSpecializationInfo"> |
| <member optional="true"><type>uint32_t</type> <name>mapEntryCount</name><comment>Number of entries in the map</comment></member> |
| <member len="mapEntryCount">const <type>VkSpecializationMapEntry</type>* <name>pMapEntries</name><comment>Array of map entries</comment></member> |
| <member optional="true"><type>size_t</type> <name>dataSize</name><comment>Size in bytes of pData</comment></member> |
| <member len="dataSize">const <type>void</type>* <name>pData</name><comment>Pointer to SpecConstant data</comment></member> |
| </type> |
| <type category="struct" name="VkPipelineShaderStageCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPipelineShaderStageCreateFlags</type> <name>flags</name></member> |
| <member><type>VkShaderStageFlagBits</type> <name>stage</name><comment>Shader stage</comment></member> |
| <member optional="true"><type>VkShaderModule</type> <name>module</name><comment>Module containing entry point</comment></member> |
| <member api="vulkan" len="null-terminated">const <type>char</type>* <name>pName</name><comment>Null-terminated entry point name</comment></member> |
| <member api="vulkansc" optional="true" len="null-terminated">const <type>char</type>* <name>pName</name><comment>Null-terminated entry point name</comment></member> |
| <member optional="true">const <type>VkSpecializationInfo</type>* <name>pSpecializationInfo</name></member> |
| </type> |
| <type category="struct" name="VkComputePipelineCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member noautovalidity="true" optional="true"><type>VkPipelineCreateFlags</type> <name>flags</name><comment>Pipeline creation flags</comment></member> |
| <member><type>VkPipelineShaderStageCreateInfo</type> <name>stage</name></member> |
| <member><type>VkPipelineLayout</type> <name>layout</name><comment>Interface layout of the pipeline</comment></member> |
| <member noautovalidity="true" optional="true"><type>VkPipeline</type> <name>basePipelineHandle</name><comment>If 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</comment></member> |
| <member><type>int32_t</type> <name>basePipelineIndex</name><comment>If 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</comment></member> |
| </type> |
| <type category="struct" name="VkComputePipelineIndirectBufferInfoNV" structextends="VkComputePipelineCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_INDIRECT_BUFFER_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceAddress</type> <name>deviceAddress</name></member> |
| <member><type>VkDeviceSize</type> <name>size</name></member> |
| <member><type>VkDeviceAddress</type> <name>pipelineDeviceAddressCaptureReplay</name></member> |
| </type> |
| <type category="struct" name="VkPipelineCreateFlags2CreateInfoKHR" structextends="VkComputePipelineCreateInfo,VkGraphicsPipelineCreateInfo,VkRayTracingPipelineCreateInfoNV,VkRayTracingPipelineCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkPipelineCreateFlags2KHR</type> <name>flags</name></member> |
| </type> |
| <type category="struct" name="VkVertexInputBindingDescription"> |
| <member><type>uint32_t</type> <name>binding</name><comment>Vertex buffer binding id</comment></member> |
| <member><type>uint32_t</type> <name>stride</name><comment>Distance between vertices in bytes (0 = no advancement)</comment></member> |
| <member><type>VkVertexInputRate</type> <name>inputRate</name><comment>The rate at which the vertex data is consumed</comment></member> |
| </type> |
| <type category="struct" name="VkVertexInputAttributeDescription"> |
| <member><type>uint32_t</type> <name>location</name><comment>location of the shader vertex attrib</comment></member> |
| <member><type>uint32_t</type> <name>binding</name><comment>Vertex buffer binding id</comment></member> |
| <member><type>VkFormat</type> <name>format</name><comment>format of source data</comment></member> |
| <member><type>uint32_t</type> <name>offset</name><comment>Offset of first element in bytes from base of vertex</comment></member> |
| </type> |
| <type category="struct" name="VkPipelineVertexInputStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPipelineVertexInputStateCreateFlags</type> <name>flags</name></member> |
| <member optional="true"><type>uint32_t</type> <name>vertexBindingDescriptionCount</name><comment>number of bindings</comment></member> |
| <member len="vertexBindingDescriptionCount">const <type>VkVertexInputBindingDescription</type>* <name>pVertexBindingDescriptions</name></member> |
| <member optional="true"><type>uint32_t</type> <name>vertexAttributeDescriptionCount</name><comment>number of attributes</comment></member> |
| <member len="vertexAttributeDescriptionCount">const <type>VkVertexInputAttributeDescription</type>* <name>pVertexAttributeDescriptions</name></member> |
| </type> |
| <type category="struct" name="VkPipelineInputAssemblyStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPipelineInputAssemblyStateCreateFlags</type> <name>flags</name></member> |
| <member><type>VkPrimitiveTopology</type> <name>topology</name></member> |
| <member><type>VkBool32</type> <name>primitiveRestartEnable</name></member> |
| </type> |
| <type category="struct" name="VkPipelineTessellationStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPipelineTessellationStateCreateFlags</type> <name>flags</name></member> |
| <member><type>uint32_t</type> <name>patchControlPoints</name></member> |
| </type> |
| <type category="struct" name="VkPipelineViewportStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPipelineViewportStateCreateFlags</type> <name>flags</name></member> |
| <member optional="true"><type>uint32_t</type> <name>viewportCount</name></member> |
| <member noautovalidity="true" optional="true" len="viewportCount">const <type>VkViewport</type>* <name>pViewports</name></member> |
| <member optional="true"><type>uint32_t</type> <name>scissorCount</name></member> |
| <member noautovalidity="true" optional="true" len="scissorCount">const <type>VkRect2D</type>* <name>pScissors</name></member> |
| </type> |
| <type category="struct" name="VkPipelineRasterizationStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPipelineRasterizationStateCreateFlags</type> <name>flags</name></member> |
| <member><type>VkBool32</type> <name>depthClampEnable</name></member> |
| <member><type>VkBool32</type> <name>rasterizerDiscardEnable</name></member> |
| <member><type>VkPolygonMode</type> <name>polygonMode</name><comment>optional (GL45)</comment></member> |
| <member optional="true"><type>VkCullModeFlags</type> <name>cullMode</name></member> |
| <member><type>VkFrontFace</type> <name>frontFace</name></member> |
| <member><type>VkBool32</type> <name>depthBiasEnable</name></member> |
| <member><type>float</type> <name>depthBiasConstantFactor</name></member> |
| <member><type>float</type> <name>depthBiasClamp</name></member> |
| <member><type>float</type> <name>depthBiasSlopeFactor</name></member> |
| <member><type>float</type> <name>lineWidth</name></member> |
| </type> |
| <type category="struct" name="VkPipelineMultisampleStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPipelineMultisampleStateCreateFlags</type> <name>flags</name></member> |
| <member><type>VkSampleCountFlagBits</type> <name>rasterizationSamples</name><comment>Number of samples used for rasterization</comment></member> |
| <member><type>VkBool32</type> <name>sampleShadingEnable</name><comment>optional (GL45)</comment></member> |
| <member><type>float</type> <name>minSampleShading</name><comment>optional (GL45)</comment></member> |
| <member optional="true" len="latexmath:[\lceil{\mathit{rasterizationSamples} \over 32}\rceil]" altlen="(rasterizationSamples + 31) / 32">const <type>VkSampleMask</type>* <name>pSampleMask</name><comment>Array of sampleMask words</comment></member> |
| <member><type>VkBool32</type> <name>alphaToCoverageEnable</name></member> |
| <member><type>VkBool32</type> <name>alphaToOneEnable</name></member> |
| </type> |
| <type category="struct" name="VkPipelineColorBlendAttachmentState"> |
| <member><type>VkBool32</type> <name>blendEnable</name></member> |
| <member><type>VkBlendFactor</type> <name>srcColorBlendFactor</name></member> |
| <member><type>VkBlendFactor</type> <name>dstColorBlendFactor</name></member> |
| <member><type>VkBlendOp</type> <name>colorBlendOp</name></member> |
| <member><type>VkBlendFactor</type> <name>srcAlphaBlendFactor</name></member> |
| <member><type>VkBlendFactor</type> <name>dstAlphaBlendFactor</name></member> |
| <member><type>VkBlendOp</type> <name>alphaBlendOp</name></member> |
| <member optional="true"><type>VkColorComponentFlags</type> <name>colorWriteMask</name></member> |
| </type> |
| <type category="struct" name="VkPipelineColorBlendStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPipelineColorBlendStateCreateFlags</type> <name>flags</name></member> |
| <member><type>VkBool32</type> <name>logicOpEnable</name></member> |
| <member noautovalidity="true"><type>VkLogicOp</type> <name>logicOp</name></member> |
| <member optional="true"><type>uint32_t</type> <name>attachmentCount</name><comment># of pAttachments</comment></member> |
| <member optional="true" len="attachmentCount">const <type>VkPipelineColorBlendAttachmentState</type>* <name>pAttachments</name></member> |
| <member><type>float</type> <name>blendConstants</name>[4]</member> |
| </type> |
| <type category="struct" name="VkPipelineDynamicStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPipelineDynamicStateCreateFlags</type> <name>flags</name></member> |
| <member optional="true"><type>uint32_t</type> <name>dynamicStateCount</name></member> |
| <member len="dynamicStateCount">const <type>VkDynamicState</type>* <name>pDynamicStates</name></member> |
| </type> |
| <type category="struct" name="VkStencilOpState"> |
| <member><type>VkStencilOp</type> <name>failOp</name></member> |
| <member><type>VkStencilOp</type> <name>passOp</name></member> |
| <member><type>VkStencilOp</type> <name>depthFailOp</name></member> |
| <member><type>VkCompareOp</type> <name>compareOp</name></member> |
| <member><type>uint32_t</type> <name>compareMask</name></member> |
| <member><type>uint32_t</type> <name>writeMask</name></member> |
| <member><type>uint32_t</type> <name>reference</name></member> |
| </type> |
| <type category="struct" name="VkPipelineDepthStencilStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPipelineDepthStencilStateCreateFlags</type> <name>flags</name></member> |
| <member><type>VkBool32</type> <name>depthTestEnable</name></member> |
| <member><type>VkBool32</type> <name>depthWriteEnable</name></member> |
| <member><type>VkCompareOp</type> <name>depthCompareOp</name></member> |
| <member><type>VkBool32</type> <name>depthBoundsTestEnable</name><comment>optional (depth_bounds_test)</comment></member> |
| <member><type>VkBool32</type> <name>stencilTestEnable</name></member> |
| <member><type>VkStencilOpState</type> <name>front</name></member> |
| <member><type>VkStencilOpState</type> <name>back</name></member> |
| <member><type>float</type> <name>minDepthBounds</name></member> |
| <member><type>float</type> <name>maxDepthBounds</name></member> |
| </type> |
| <type category="struct" name="VkGraphicsPipelineCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member noautovalidity="true" optional="true"><type>VkPipelineCreateFlags</type> <name>flags</name><comment>Pipeline creation flags</comment></member> |
| <member noautovalidity="true" optional="true"><type>uint32_t</type> <name>stageCount</name></member> |
| <member api="vulkan" noautovalidity="true" len="stageCount" optional="true">const <type>VkPipelineShaderStageCreateInfo</type>* <name>pStages</name><comment>One entry for each active shader stage</comment></member> |
| <member api="vulkansc" noautovalidity="true" len="stageCount">const <type>VkPipelineShaderStageCreateInfo</type>* <name>pStages</name><comment>One entry for each active shader stage</comment></member> |
| <member noautovalidity="true" optional="true">const <type>VkPipelineVertexInputStateCreateInfo</type>* <name>pVertexInputState</name></member> |
| <member noautovalidity="true" optional="true">const <type>VkPipelineInputAssemblyStateCreateInfo</type>* <name>pInputAssemblyState</name></member> |
| <member noautovalidity="true" optional="true">const <type>VkPipelineTessellationStateCreateInfo</type>* <name>pTessellationState</name></member> |
| <member noautovalidity="true" optional="true">const <type>VkPipelineViewportStateCreateInfo</type>* <name>pViewportState</name></member> |
| <member noautovalidity="true" optional="true">const <type>VkPipelineRasterizationStateCreateInfo</type>* <name>pRasterizationState</name></member> |
| <member noautovalidity="true" optional="true">const <type>VkPipelineMultisampleStateCreateInfo</type>* <name>pMultisampleState</name></member> |
| <member noautovalidity="true" optional="true">const <type>VkPipelineDepthStencilStateCreateInfo</type>* <name>pDepthStencilState</name></member> |
| <member noautovalidity="true" optional="true">const <type>VkPipelineColorBlendStateCreateInfo</type>* <name>pColorBlendState</name></member> |
| <member optional="true">const <type>VkPipelineDynamicStateCreateInfo</type>* <name>pDynamicState</name></member> |
| <member noautovalidity="true" optional="true"><type>VkPipelineLayout</type> <name>layout</name><comment>Interface layout of the pipeline</comment></member> |
| <member noautovalidity="true" optional="true"><type>VkRenderPass</type> <name>renderPass</name></member> |
| <member noautovalidity="true"><type>uint32_t</type> <name>subpass</name></member> |
| <member noautovalidity="true" optional="true"><type>VkPipeline</type> <name>basePipelineHandle</name><comment>If 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</comment></member> |
| <member><type>int32_t</type> <name>basePipelineIndex</name><comment>If 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</comment></member> |
| </type> |
| <type category="struct" name="VkPipelineCacheCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPipelineCacheCreateFlags</type> <name>flags</name></member> |
| <member api="vulkan" optional="true"><type>size_t</type> <name>initialDataSize</name><comment>Size of initial data to populate cache, in bytes</comment></member> |
| <member api="vulkansc"><type>size_t</type> <name>initialDataSize</name><comment>Size of initial data to populate cache, in bytes</comment></member> |
| <member len="initialDataSize">const <type>void</type>* <name>pInitialData</name><comment>Initial data to populate cache</comment></member> |
| </type> |
| <type category="struct" name="VkPipelineCacheHeaderVersionOne"> |
| <comment>The fields in this structure are non-normative since structure packing is implementation-defined in C. The specification defines the normative layout.</comment> |
| <member><type>uint32_t</type> <name>headerSize</name></member> |
| <member><type>VkPipelineCacheHeaderVersion</type> <name>headerVersion</name></member> |
| <member><type>uint32_t</type> <name>vendorID</name></member> |
| <member><type>uint32_t</type> <name>deviceID</name></member> |
| <member><type>uint8_t</type> <name>pipelineCacheUUID</name>[<enum>VK_UUID_SIZE</enum>]</member> |
| </type> |
| <type category="struct" name="VkPipelineCacheStageValidationIndexEntry"> |
| <comment>The fields in this structure are non-normative since structure packing is implementation-defined in C. The specification defines the normative layout.</comment> |
| <member><type>uint64_t</type> <name>codeSize</name></member> |
| <member><type>uint64_t</type> <name>codeOffset</name></member> |
| </type> |
| <type category="struct" name="VkPipelineCacheSafetyCriticalIndexEntry"> |
| <comment>The fields in this structure are non-normative since structure packing is implementation-defined in C. The specification defines the normative layout.</comment> |
| <member><type>uint8_t</type> <name>pipelineIdentifier</name>[<enum>VK_UUID_SIZE</enum>]</member> |
| <member><type>uint64_t</type> <name>pipelineMemorySize</name></member> |
| <member><type>uint64_t</type> <name>jsonSize</name></member> |
| <member><type>uint64_t</type> <name>jsonOffset</name></member> |
| <member><type>uint32_t</type> <name>stageIndexCount</name></member> |
| <member><type>uint32_t</type> <name>stageIndexStride</name></member> |
| <member><type>uint64_t</type> <name>stageIndexOffset</name></member> |
| </type> |
| <type category="struct" name="VkPipelineCacheHeaderVersionSafetyCriticalOne"> |
| <comment>The fields in this structure are non-normative since structure packing is implementation-defined in C. The specification defines the normative layout.</comment> |
| <member><type>VkPipelineCacheHeaderVersionOne</type> <name>headerVersionOne</name></member> |
| <member><type>VkPipelineCacheValidationVersion</type> <name>validationVersion</name></member> |
| <member><type>uint32_t</type> <name>implementationData</name></member> |
| <member><type>uint32_t</type> <name>pipelineIndexCount</name></member> |
| <member><type>uint32_t</type> <name>pipelineIndexStride</name></member> |
| <member><type>uint64_t</type> <name>pipelineIndexOffset</name></member> |
| </type> |
| <type category="struct" name="VkPushConstantRange"> |
| <member><type>VkShaderStageFlags</type> <name>stageFlags</name><comment>Which stages use the range</comment></member> |
| <member><type>uint32_t</type> <name>offset</name><comment>Start of the range, in bytes</comment></member> |
| <member><type>uint32_t</type> <name>size</name><comment>Size of the range, in bytes</comment></member> |
| </type> |
| <type category="struct" name="VkPipelineBinaryCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_BINARY_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true">const <type>VkPipelineBinaryKeysAndDataKHR</type>* <name>pKeysAndDataInfo</name></member> |
| <member optional="true"><type>VkPipeline</type> <name>pipeline</name></member> |
| <member optional="true">const <type>VkPipelineCreateInfoKHR</type>* <name>pPipelineCreateInfo</name></member> |
| </type> |
| <type category="struct" name="VkPipelineBinaryHandlesInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_BINARY_HANDLES_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="false,true"><type>uint32_t</type> <name>pipelineBinaryCount</name></member> |
| <member optional="true" len="pipelineBinaryCount"><type>VkPipelineBinaryKHR</type>* <name>pPipelineBinaries</name></member> |
| </type> |
| <type category="struct" name="VkPipelineBinaryDataKHR"> |
| <member><type>size_t</type> <name>dataSize</name></member> |
| <member len="dataSize"><type>void</type>* <name>pData</name></member> |
| </type> |
| <type category="struct" name="VkPipelineBinaryKeysAndDataKHR"> |
| <member><type>uint32_t</type> <name>binaryCount</name></member> |
| <member len="binaryCount">const <type>VkPipelineBinaryKeyKHR</type>* <name>pPipelineBinaryKeys</name></member> |
| <member len="binaryCount">const <type>VkPipelineBinaryDataKHR</type>* <name>pPipelineBinaryData</name></member> |
| </type> |
| <type category="struct" name="VkPipelineBinaryKeyKHR"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_BINARY_KEY_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member noautovalidity="true"><type>uint32_t</type> <name>keySize</name></member> |
| <member><type>uint8_t</type> <name>key</name>[<enum>VK_MAX_PIPELINE_BINARY_KEY_SIZE_KHR</enum>]</member> |
| </type> |
| <type category="struct" name="VkPipelineBinaryInfoKHR" structextends="VkGraphicsPipelineCreateInfo,VkComputePipelineCreateInfo,VkRayTracingPipelineCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_BINARY_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>binaryCount</name></member> |
| <member len="binaryCount">const <type>VkPipelineBinaryKHR</type>* <name>pPipelineBinaries</name></member> |
| </type> |
| <type category="struct" name="VkReleaseCapturedPipelineDataInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_RELEASE_CAPTURED_PIPELINE_DATA_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkPipeline</type> <name>pipeline</name></member> |
| </type> |
| <type category="struct" name="VkPipelineBinaryDataInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_BINARY_DATA_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkPipelineBinaryKHR</type> <name>pipelineBinary</name></member> |
| </type> |
| <type category="struct" name="VkPipelineCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member noautovalidity="true" optional="true"><type>void</type>* <name>pNext</name></member> |
| </type> |
| <type category="struct" name="VkPipelineLayoutCreateInfo" structextends="VkBindDescriptorSetsInfoKHR,VkPushConstantsInfoKHR,VkPushDescriptorSetInfoKHR,VkPushDescriptorSetWithTemplateInfoKHR,VkSetDescriptorBufferOffsetsInfoEXT,VkBindDescriptorBufferEmbeddedSamplersInfoEXT,VkIndirectCommandsLayoutCreateInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPipelineLayoutCreateFlags</type> <name>flags</name></member> |
| <member optional="true"><type>uint32_t</type> <name>setLayoutCount</name><comment>Number of descriptor sets interfaced by the pipeline</comment></member> |
| <member optional="false,true" len="setLayoutCount">const <type>VkDescriptorSetLayout</type>* <name>pSetLayouts</name><comment>Array of setCount number of descriptor set layout objects defining the layout of the</comment></member> |
| <member optional="true"><type>uint32_t</type> <name>pushConstantRangeCount</name><comment>Number of push-constant ranges used by the pipeline</comment></member> |
| <member len="pushConstantRangeCount">const <type>VkPushConstantRange</type>* <name>pPushConstantRanges</name><comment>Array of pushConstantRangeCount number of ranges used by various shader stages</comment></member> |
| </type> |
| <type category="struct" name="VkSamplerCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkSamplerCreateFlags</type> <name>flags</name></member> |
| <member><type>VkFilter</type> <name>magFilter</name><comment>Filter mode for magnification</comment></member> |
| <member><type>VkFilter</type> <name>minFilter</name><comment>Filter mode for minifiation</comment></member> |
| <member><type>VkSamplerMipmapMode</type> <name>mipmapMode</name><comment>Mipmap selection mode</comment></member> |
| <member><type>VkSamplerAddressMode</type> <name>addressModeU</name></member> |
| <member><type>VkSamplerAddressMode</type> <name>addressModeV</name></member> |
| <member><type>VkSamplerAddressMode</type> <name>addressModeW</name></member> |
| <member><type>float</type> <name>mipLodBias</name></member> |
| <member><type>VkBool32</type> <name>anisotropyEnable</name></member> |
| <member><type>float</type> <name>maxAnisotropy</name></member> |
| <member><type>VkBool32</type> <name>compareEnable</name></member> |
| <member noautovalidity="true"><type>VkCompareOp</type> <name>compareOp</name></member> |
| <member><type>float</type> <name>minLod</name></member> |
| <member><type>float</type> <name>maxLod</name></member> |
| <member noautovalidity="true"><type>VkBorderColor</type> <name>borderColor</name></member> |
| <member><type>VkBool32</type> <name>unnormalizedCoordinates</name></member> |
| </type> |
| <type category="struct" name="VkCommandPoolCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkCommandPoolCreateFlags</type> <name>flags</name><comment>Command pool creation flags</comment></member> |
| <member><type>uint32_t</type> <name>queueFamilyIndex</name></member> |
| </type> |
| <type category="struct" name="VkCommandBufferAllocateInfo"> |
| <member values="VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkCommandPool</type> <name>commandPool</name></member> |
| <member><type>VkCommandBufferLevel</type> <name>level</name></member> |
| <member><type>uint32_t</type> <name>commandBufferCount</name></member> |
| </type> |
| <type category="struct" name="VkCommandBufferInheritanceInfo"> |
| <member values="VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true" noautovalidity="true"><type>VkRenderPass</type> <name>renderPass</name><comment>Render pass for secondary command buffers</comment></member> |
| <member><type>uint32_t</type> <name>subpass</name></member> |
| <member optional="true" noautovalidity="true"><type>VkFramebuffer</type> <name>framebuffer</name><comment>Framebuffer for secondary command buffers</comment></member> |
| <member><type>VkBool32</type> <name>occlusionQueryEnable</name><comment>Whether this secondary command buffer may be executed during an occlusion query</comment></member> |
| <member optional="true" noautovalidity="true"><type>VkQueryControlFlags</type> <name>queryFlags</name><comment>Query flags used by this secondary command buffer, if executed during an occlusion query</comment></member> |
| <member optional="true" noautovalidity="true"><type>VkQueryPipelineStatisticFlags</type> <name>pipelineStatistics</name><comment>Pipeline statistics that may be counted for this secondary command buffer</comment></member> |
| </type> |
| <type category="struct" name="VkCommandBufferBeginInfo"> |
| <member values="VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkCommandBufferUsageFlags</type> <name>flags</name><comment>Command buffer usage flags</comment></member> |
| <member optional="true" noautovalidity="true">const <type>VkCommandBufferInheritanceInfo</type>* <name>pInheritanceInfo</name><comment>Pointer to inheritance info for secondary command buffers</comment></member> |
| </type> |
| <type category="struct" name="VkRenderPassBeginInfo"> |
| <member values="VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkRenderPass</type> <name>renderPass</name></member> |
| <member><type>VkFramebuffer</type> <name>framebuffer</name></member> |
| <member><type>VkRect2D</type> <name>renderArea</name></member> |
| <member optional="true"><type>uint32_t</type> <name>clearValueCount</name></member> |
| <member len="clearValueCount" noautovalidity="true">const <type>VkClearValue</type>* <name>pClearValues</name></member> |
| </type> |
| <type category="union" name="VkClearColorValue" comment="// Union allowing specification of floating-point, integer, or unsigned integer color data. Actual value selected is based on image/attachment being cleared."> |
| <member><type>float</type> <name>float32</name>[4]</member> |
| <member><type>int32_t</type> <name>int32</name>[4]</member> |
| <member><type>uint32_t</type> <name>uint32</name>[4]</member> |
| </type> |
| <type category="struct" name="VkClearDepthStencilValue"> |
| <member><type>float</type> <name>depth</name></member> |
| <member><type>uint32_t</type> <name>stencil</name></member> |
| </type> |
| <type category="union" name="VkClearValue" comment="// Union allowing specification of color or depth and stencil values. Actual value selected is based on attachment being cleared."> |
| <member noautovalidity="true"><type>VkClearColorValue</type> <name>color</name></member> |
| <member><type>VkClearDepthStencilValue</type> <name>depthStencil</name></member> |
| </type> |
| <type category="struct" name="VkClearAttachment"> |
| <member><type>VkImageAspectFlags</type> <name>aspectMask</name></member> |
| <member><type>uint32_t</type> <name>colorAttachment</name></member> |
| <member noautovalidity="true"><type>VkClearValue</type> <name>clearValue</name></member> |
| </type> |
| <type category="struct" name="VkAttachmentDescription"> |
| <member optional="true"><type>VkAttachmentDescriptionFlags</type> <name>flags</name></member> |
| <member><type>VkFormat</type> <name>format</name></member> |
| <member><type>VkSampleCountFlagBits</type> <name>samples</name></member> |
| <member><type>VkAttachmentLoadOp</type> <name>loadOp</name><comment>Load operation for color or depth data</comment></member> |
| <member><type>VkAttachmentStoreOp</type> <name>storeOp</name><comment>Store operation for color or depth data</comment></member> |
| <member><type>VkAttachmentLoadOp</type> <name>stencilLoadOp</name><comment>Load operation for stencil data</comment></member> |
| <member><type>VkAttachmentStoreOp</type> <name>stencilStoreOp</name><comment>Store operation for stencil data</comment></member> |
| <member><type>VkImageLayout</type> <name>initialLayout</name></member> |
| <member><type>VkImageLayout</type> <name>finalLayout</name></member> |
| </type> |
| <type category="struct" name="VkAttachmentReference"> |
| <member><type>uint32_t</type> <name>attachment</name></member> |
| <member><type>VkImageLayout</type> <name>layout</name></member> |
| </type> |
| <type category="struct" name="VkSubpassDescription"> |
| <member optional="true"><type>VkSubpassDescriptionFlags</type> <name>flags</name></member> |
| <member><type>VkPipelineBindPoint</type> <name>pipelineBindPoint</name><comment>Must be VK_PIPELINE_BIND_POINT_GRAPHICS for now</comment></member> |
| <member optional="true"><type>uint32_t</type> <name>inputAttachmentCount</name></member> |
| <member len="inputAttachmentCount">const <type>VkAttachmentReference</type>* <name>pInputAttachments</name></member> |
| <member optional="true"><type>uint32_t</type> <name>colorAttachmentCount</name></member> |
| <member len="colorAttachmentCount">const <type>VkAttachmentReference</type>* <name>pColorAttachments</name></member> |
| <member optional="true" len="colorAttachmentCount">const <type>VkAttachmentReference</type>* <name>pResolveAttachments</name></member> |
| <member optional="true">const <type>VkAttachmentReference</type>* <name>pDepthStencilAttachment</name></member> |
| <member optional="true"><type>uint32_t</type> <name>preserveAttachmentCount</name></member> |
| <member len="preserveAttachmentCount">const <type>uint32_t</type>* <name>pPreserveAttachments</name></member> |
| </type> |
| <type category="struct" name="VkSubpassDependency"> |
| <member><type>uint32_t</type> <name>srcSubpass</name></member> |
| <member><type>uint32_t</type> <name>dstSubpass</name></member> |
| <member optional="true"><type>VkPipelineStageFlags</type> <name>srcStageMask</name></member> |
| <member optional="true"><type>VkPipelineStageFlags</type> <name>dstStageMask</name></member> |
| <member optional="true"><type>VkAccessFlags</type> <name>srcAccessMask</name><comment>Memory accesses from the source of the dependency to synchronize</comment></member> |
| <member optional="true"><type>VkAccessFlags</type> <name>dstAccessMask</name><comment>Memory accesses from the destination of the dependency to synchronize</comment></member> |
| <member optional="true"><type>VkDependencyFlags</type> <name>dependencyFlags</name></member> |
| </type> |
| <type category="struct" name="VkRenderPassCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkRenderPassCreateFlags</type> <name>flags</name></member> |
| <member optional="true"><type>uint32_t</type> <name>attachmentCount</name></member> |
| <member len="attachmentCount">const <type>VkAttachmentDescription</type>* <name>pAttachments</name></member> |
| <member><type>uint32_t</type> <name>subpassCount</name></member> |
| <member len="subpassCount">const <type>VkSubpassDescription</type>* <name>pSubpasses</name></member> |
| <member optional="true"><type>uint32_t</type> <name>dependencyCount</name></member> |
| <member len="dependencyCount">const <type>VkSubpassDependency</type>* <name>pDependencies</name></member> |
| </type> |
| <type category="struct" name="VkEventCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_EVENT_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkEventCreateFlags</type> <name>flags</name><comment>Event creation flags</comment></member> |
| </type> |
| <type category="struct" name="VkFenceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_FENCE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkFenceCreateFlags</type> <name>flags</name><comment>Fence creation flags</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceFeatures"> |
| <member><type>VkBool32</type> <name>robustBufferAccess</name><comment>out of bounds buffer accesses are well defined</comment></member> |
| <member><type>VkBool32</type> <name>fullDrawIndexUint32</name><comment>full 32-bit range of indices for indexed draw calls</comment></member> |
| <member><type>VkBool32</type> <name>imageCubeArray</name><comment>image views which are arrays of cube maps</comment></member> |
| <member><type>VkBool32</type> <name>independentBlend</name><comment>blending operations are controlled per-attachment</comment></member> |
| <member><type>VkBool32</type> <name>geometryShader</name><comment>geometry stage</comment></member> |
| <member><type>VkBool32</type> <name>tessellationShader</name><comment>tessellation control and evaluation stage</comment></member> |
| <member><type>VkBool32</type> <name>sampleRateShading</name><comment>per-sample shading and interpolation</comment></member> |
| <member><type>VkBool32</type> <name>dualSrcBlend</name><comment>blend operations which take two sources</comment></member> |
| <member><type>VkBool32</type> <name>logicOp</name><comment>logic operations</comment></member> |
| <member><type>VkBool32</type> <name>multiDrawIndirect</name><comment>multi draw indirect</comment></member> |
| <member><type>VkBool32</type> <name>drawIndirectFirstInstance</name><comment>indirect drawing can use non-zero firstInstance</comment></member> |
| <member><type>VkBool32</type> <name>depthClamp</name><comment>depth clamping</comment></member> |
| <member><type>VkBool32</type> <name>depthBiasClamp</name><comment>depth bias clamping</comment></member> |
| <member><type>VkBool32</type> <name>fillModeNonSolid</name><comment>point and wireframe fill modes</comment></member> |
| <member><type>VkBool32</type> <name>depthBounds</name><comment>depth bounds test</comment></member> |
| <member><type>VkBool32</type> <name>wideLines</name><comment>lines with width greater than 1</comment></member> |
| <member><type>VkBool32</type> <name>largePoints</name><comment>points with size greater than 1</comment></member> |
| <member><type>VkBool32</type> <name>alphaToOne</name><comment>the fragment alpha component can be forced to maximum representable alpha value</comment></member> |
| <member><type>VkBool32</type> <name>multiViewport</name><comment>viewport arrays</comment></member> |
| <member><type>VkBool32</type> <name>samplerAnisotropy</name><comment>anisotropic sampler filtering</comment></member> |
| <member><type>VkBool32</type> <name>textureCompressionETC2</name><comment>ETC texture compression formats</comment></member> |
| <member><type>VkBool32</type> <name>textureCompressionASTC_LDR</name><comment>ASTC LDR texture compression formats</comment></member> |
| <member><type>VkBool32</type> <name>textureCompressionBC</name><comment>BC1-7 texture compressed formats</comment></member> |
| <member><type>VkBool32</type> <name>occlusionQueryPrecise</name><comment>precise occlusion queries returning actual sample counts</comment></member> |
| <member><type>VkBool32</type> <name>pipelineStatisticsQuery</name><comment>pipeline statistics query</comment></member> |
| <member><type>VkBool32</type> <name>vertexPipelineStoresAndAtomics</name><comment>stores and atomic ops on storage buffers and images are supported in vertex, tessellation, and geometry stages</comment></member> |
| <member><type>VkBool32</type> <name>fragmentStoresAndAtomics</name><comment>stores and atomic ops on storage buffers and images are supported in the fragment stage</comment></member> |
| <member><type>VkBool32</type> <name>shaderTessellationAndGeometryPointSize</name><comment>tessellation and geometry stages can export point size</comment></member> |
| <member><type>VkBool32</type> <name>shaderImageGatherExtended</name><comment>image gather with runtime values and independent offsets</comment></member> |
| <member><type>VkBool32</type> <name>shaderStorageImageExtendedFormats</name><comment>the extended set of formats can be used for storage images</comment></member> |
| <member><type>VkBool32</type> <name>shaderStorageImageMultisample</name><comment>multisample images can be used for storage images</comment></member> |
| <member><type>VkBool32</type> <name>shaderStorageImageReadWithoutFormat</name><comment>read from storage image does not require format qualifier</comment></member> |
| <member><type>VkBool32</type> <name>shaderStorageImageWriteWithoutFormat</name><comment>write to storage image does not require format qualifier</comment></member> |
| <member><type>VkBool32</type> <name>shaderUniformBufferArrayDynamicIndexing</name><comment>arrays of uniform buffers can be accessed with dynamically uniform indices</comment></member> |
| <member><type>VkBool32</type> <name>shaderSampledImageArrayDynamicIndexing</name><comment>arrays of sampled images can be accessed with dynamically uniform indices</comment></member> |
| <member><type>VkBool32</type> <name>shaderStorageBufferArrayDynamicIndexing</name><comment>arrays of storage buffers can be accessed with dynamically uniform indices</comment></member> |
| <member><type>VkBool32</type> <name>shaderStorageImageArrayDynamicIndexing</name><comment>arrays of storage images can be accessed with dynamically uniform indices</comment></member> |
| <member><type>VkBool32</type> <name>shaderClipDistance</name><comment>clip distance in shaders</comment></member> |
| <member><type>VkBool32</type> <name>shaderCullDistance</name><comment>cull distance in shaders</comment></member> |
| <member><type>VkBool32</type> <name>shaderFloat64</name><comment>64-bit floats (doubles) in shaders</comment></member> |
| <member><type>VkBool32</type> <name>shaderInt64</name><comment>64-bit integers in shaders</comment></member> |
| <member><type>VkBool32</type> <name>shaderInt16</name><comment>16-bit integers in shaders</comment></member> |
| <member><type>VkBool32</type> <name>shaderResourceResidency</name><comment>shader can use texture operations that return resource residency information (requires sparseNonResident support)</comment></member> |
| <member><type>VkBool32</type> <name>shaderResourceMinLod</name><comment>shader can use texture operations that specify minimum resource LOD</comment></member> |
| <member><type>VkBool32</type> <name>sparseBinding</name><comment>Sparse resources support: Resource memory can be managed at opaque page level rather than object level</comment></member> |
| <member><type>VkBool32</type> <name>sparseResidencyBuffer</name><comment>Sparse resources support: GPU can access partially resident buffers </comment></member> |
| <member><type>VkBool32</type> <name>sparseResidencyImage2D</name><comment>Sparse resources support: GPU can access partially resident 2D (non-MSAA non-depth/stencil) images </comment></member> |
| <member><type>VkBool32</type> <name>sparseResidencyImage3D</name><comment>Sparse resources support: GPU can access partially resident 3D images </comment></member> |
| <member><type>VkBool32</type> <name>sparseResidency2Samples</name><comment>Sparse resources support: GPU can access partially resident MSAA 2D images with 2 samples</comment></member> |
| <member><type>VkBool32</type> <name>sparseResidency4Samples</name><comment>Sparse resources support: GPU can access partially resident MSAA 2D images with 4 samples</comment></member> |
| <member><type>VkBool32</type> <name>sparseResidency8Samples</name><comment>Sparse resources support: GPU can access partially resident MSAA 2D images with 8 samples</comment></member> |
| <member><type>VkBool32</type> <name>sparseResidency16Samples</name><comment>Sparse resources support: GPU can access partially resident MSAA 2D images with 16 samples</comment></member> |
| <member><type>VkBool32</type> <name>sparseResidencyAliased</name><comment>Sparse resources support: GPU can correctly access data aliased into multiple locations (opt-in)</comment></member> |
| <member><type>VkBool32</type> <name>variableMultisampleRate</name><comment>multisample rate must be the same for all pipelines in a subpass</comment></member> |
| <member><type>VkBool32</type> <name>inheritedQueries</name><comment>Queries may be inherited from primary to secondary command buffers</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceSparseProperties" returnedonly="true"> |
| <member limittype="bitmask"><type>VkBool32</type> <name>residencyStandard2DBlockShape</name><comment>Sparse resources support: GPU will access all 2D (single sample) sparse resources using the standard sparse image block shapes (based on pixel format)</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>residencyStandard2DMultisampleBlockShape</name><comment>Sparse resources support: GPU will access all 2D (multisample) sparse resources using the standard sparse image block shapes (based on pixel format)</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>residencyStandard3DBlockShape</name><comment>Sparse resources support: GPU will access all 3D sparse resources using the standard sparse image block shapes (based on pixel format)</comment></member> |
| <member limittype="not"><type>VkBool32</type> <name>residencyAlignedMipSize</name><comment>Sparse 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</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>residencyNonResidentStrict</name><comment>Sparse resources support: GPU can consistently access non-resident regions of a resource, all reads return as if data is 0, writes are discarded</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceLimits" returnedonly="true"> |
| <comment>resource maximum sizes</comment> |
| <member limittype="max"><type>uint32_t</type> <name>maxImageDimension1D</name><comment>max 1D image dimension</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxImageDimension2D</name><comment>max 2D image dimension</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxImageDimension3D</name><comment>max 3D image dimension</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxImageDimensionCube</name><comment>max cube map image dimension</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxImageArrayLayers</name><comment>max layers for image arrays</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTexelBufferElements</name><comment>max texel buffer size (fstexels)</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxUniformBufferRange</name><comment>max uniform buffer range (bytes)</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxStorageBufferRange</name><comment>max storage buffer range (bytes)</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPushConstantsSize</name><comment>max size of the push constants pool (bytes)</comment></member> |
| <comment>memory limits</comment> |
| <member limittype="max"><type>uint32_t</type> <name>maxMemoryAllocationCount</name><comment>max number of device memory allocations supported</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxSamplerAllocationCount</name><comment>max number of samplers that can be allocated on a device</comment></member> |
| <member limittype="min,mul"><type>VkDeviceSize</type> <name>bufferImageGranularity</name><comment>Granularity (in bytes) at which buffers and images can be bound to adjacent memory for simultaneous usage</comment></member> |
| <member limittype="max"><type>VkDeviceSize</type> <name>sparseAddressSpaceSize</name><comment>Total address space available for sparse allocations (bytes)</comment></member> |
| <comment>descriptor set limits</comment> |
| <member limittype="max"><type>uint32_t</type> <name>maxBoundDescriptorSets</name><comment>max number of descriptors sets that can be bound to a pipeline</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageDescriptorSamplers</name><comment>max number of samplers allowed per-stage in a descriptor set</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageDescriptorUniformBuffers</name><comment>max number of uniform buffers allowed per-stage in a descriptor set</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageDescriptorStorageBuffers</name><comment>max number of storage buffers allowed per-stage in a descriptor set</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageDescriptorSampledImages</name><comment>max number of sampled images allowed per-stage in a descriptor set</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageDescriptorStorageImages</name><comment>max number of storage images allowed per-stage in a descriptor set</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageDescriptorInputAttachments</name><comment>max number of input attachments allowed per-stage in a descriptor set</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageResources</name><comment>max number of resources allowed by a single stage</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetSamplers</name><comment>max number of samplers allowed in all stages in a descriptor set</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetUniformBuffers</name><comment>max number of uniform buffers allowed in all stages in a descriptor set</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetUniformBuffersDynamic</name><comment>max number of dynamic uniform buffers allowed in all stages in a descriptor set</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetStorageBuffers</name><comment>max number of storage buffers allowed in all stages in a descriptor set</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetStorageBuffersDynamic</name><comment>max number of dynamic storage buffers allowed in all stages in a descriptor set</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetSampledImages</name><comment>max number of sampled images allowed in all stages in a descriptor set</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetStorageImages</name><comment>max number of storage images allowed in all stages in a descriptor set</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetInputAttachments</name><comment>max number of input attachments allowed in all stages in a descriptor set</comment></member> |
| <comment>vertex stage limits</comment> |
| <member limittype="max"><type>uint32_t</type> <name>maxVertexInputAttributes</name><comment>max number of vertex input attribute slots</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxVertexInputBindings</name><comment>max number of vertex input binding slots</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxVertexInputAttributeOffset</name><comment>max vertex input attribute offset added to vertex buffer offset</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxVertexInputBindingStride</name><comment>max vertex input binding stride</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxVertexOutputComponents</name><comment>max number of output components written by vertex shader</comment></member> |
| <comment>tessellation control stage limits</comment> |
| <member limittype="max"><type>uint32_t</type> <name>maxTessellationGenerationLevel</name><comment>max level supported by tessellation primitive generator</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTessellationPatchSize</name><comment>max patch size (vertices)</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTessellationControlPerVertexInputComponents</name><comment>max number of input components per-vertex in TCS</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTessellationControlPerVertexOutputComponents</name><comment>max number of output components per-vertex in TCS</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTessellationControlPerPatchOutputComponents</name><comment>max number of output components per-patch in TCS</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTessellationControlTotalOutputComponents</name><comment>max total number of per-vertex and per-patch output components in TCS</comment></member> |
| <comment>tessellation evaluation stage limits</comment> |
| <member limittype="max"><type>uint32_t</type> <name>maxTessellationEvaluationInputComponents</name><comment>max number of input components per vertex in TES</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTessellationEvaluationOutputComponents</name><comment>max number of output components per vertex in TES</comment></member> |
| <comment>geometry stage limits</comment> |
| <member limittype="max"><type>uint32_t</type> <name>maxGeometryShaderInvocations</name><comment>max invocation count supported in geometry shader</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxGeometryInputComponents</name><comment>max number of input components read in geometry stage</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxGeometryOutputComponents</name><comment>max number of output components written in geometry stage</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxGeometryOutputVertices</name><comment>max number of vertices that can be emitted in geometry stage</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxGeometryTotalOutputComponents</name><comment>max total number of components (all vertices) written in geometry stage</comment></member> |
| <comment>fragment stage limits</comment> |
| <member limittype="max"><type>uint32_t</type> <name>maxFragmentInputComponents</name><comment>max number of input components read in fragment stage</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxFragmentOutputAttachments</name><comment>max number of output attachments written in fragment stage</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxFragmentDualSrcAttachments</name><comment>max number of output attachments written when using dual source blending</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxFragmentCombinedOutputResources</name><comment>max total number of storage buffers, storage images and output buffers</comment></member> |
| <comment>compute stage limits</comment> |
| <member limittype="max"><type>uint32_t</type> <name>maxComputeSharedMemorySize</name><comment>max total storage size of work group local storage (bytes)</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxComputeWorkGroupCount</name>[3]<comment>max num of compute work groups that may be dispatched by a single command (x,y,z)</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxComputeWorkGroupInvocations</name><comment>max total compute invocations in a single local work group</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxComputeWorkGroupSize</name>[3]<comment>max local size of a compute work group (x,y,z)</comment></member> |
| <member limittype="bits"><type>uint32_t</type> <name>subPixelPrecisionBits</name><comment>number bits of subpixel precision in screen x and y</comment></member> |
| <member limittype="bits"><type>uint32_t</type> <name>subTexelPrecisionBits</name><comment>number bits of precision for selecting texel weights</comment></member> |
| <member limittype="bits"><type>uint32_t</type> <name>mipmapPrecisionBits</name><comment>number bits of precision for selecting mipmap weights</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDrawIndexedIndexValue</name><comment>max index value for indexed draw calls (for 32-bit indices)</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDrawIndirectCount</name><comment>max draw count for indirect drawing calls</comment></member> |
| <member limittype="max"><type>float</type> <name>maxSamplerLodBias</name><comment>max absolute sampler LOD bias</comment></member> |
| <member limittype="max"><type>float</type> <name>maxSamplerAnisotropy</name><comment>max degree of sampler anisotropy</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxViewports</name><comment>max number of active viewports</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxViewportDimensions</name>[2]<comment>max viewport dimensions (x,y)</comment></member> |
| <member limittype="range"><type>float</type> <name>viewportBoundsRange</name>[2]<comment>viewport bounds range (min,max)</comment></member> |
| <member limittype="bits"><type>uint32_t</type> <name>viewportSubPixelBits</name><comment>number bits of subpixel precision for viewport</comment></member> |
| <member limittype="min,pot"><type>size_t</type> <name>minMemoryMapAlignment</name><comment>min required alignment of pointers returned by MapMemory (bytes)</comment></member> |
| <member limittype="min,pot"><type>VkDeviceSize</type> <name>minTexelBufferOffsetAlignment</name><comment>min required alignment for texel buffer offsets (bytes) </comment></member> |
| <member limittype="min,pot"><type>VkDeviceSize</type> <name>minUniformBufferOffsetAlignment</name><comment>min required alignment for uniform buffer sizes and offsets (bytes)</comment></member> |
| <member limittype="min,pot"><type>VkDeviceSize</type> <name>minStorageBufferOffsetAlignment</name><comment>min required alignment for storage buffer offsets (bytes)</comment></member> |
| <member limittype="min"><type>int32_t</type> <name>minTexelOffset</name><comment>min texel offset for OpTextureSampleOffset</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTexelOffset</name><comment>max texel offset for OpTextureSampleOffset</comment></member> |
| <member limittype="min"><type>int32_t</type> <name>minTexelGatherOffset</name><comment>min texel offset for OpTextureGatherOffset</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTexelGatherOffset</name><comment>max texel offset for OpTextureGatherOffset</comment></member> |
| <member limittype="min"><type>float</type> <name>minInterpolationOffset</name><comment>furthest negative offset for interpolateAtOffset</comment></member> |
| <member limittype="max"><type>float</type> <name>maxInterpolationOffset</name><comment>furthest positive offset for interpolateAtOffset</comment></member> |
| <member limittype="bits"><type>uint32_t</type> <name>subPixelInterpolationOffsetBits</name><comment>number of subpixel bits for interpolateAtOffset</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxFramebufferWidth</name><comment>max width for a framebuffer</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxFramebufferHeight</name><comment>max height for a framebuffer</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxFramebufferLayers</name><comment>max layer count for a layered framebuffer</comment></member> |
| <member limittype="bitmask" optional="true"><type>VkSampleCountFlags</type> <name>framebufferColorSampleCounts</name><comment>supported color sample counts for a framebuffer</comment></member> |
| <member limittype="bitmask" optional="true"><type>VkSampleCountFlags</type> <name>framebufferDepthSampleCounts</name><comment>supported depth sample counts for a framebuffer</comment></member> |
| <member limittype="bitmask" optional="true"><type>VkSampleCountFlags</type> <name>framebufferStencilSampleCounts</name><comment>supported stencil sample counts for a framebuffer</comment></member> |
| <member limittype="bitmask" optional="true"><type>VkSampleCountFlags</type> <name>framebufferNoAttachmentsSampleCounts</name><comment>supported sample counts for a subpass which uses no attachments</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxColorAttachments</name><comment>max number of color attachments per subpass</comment></member> |
| <member limittype="bitmask" optional="true"><type>VkSampleCountFlags</type> <name>sampledImageColorSampleCounts</name><comment>supported color sample counts for a non-integer sampled image</comment></member> |
| <member limittype="bitmask" optional="true"><type>VkSampleCountFlags</type> <name>sampledImageIntegerSampleCounts</name><comment>supported sample counts for an integer image</comment></member> |
| <member limittype="bitmask" optional="true"><type>VkSampleCountFlags</type> <name>sampledImageDepthSampleCounts</name><comment>supported depth sample counts for a sampled image</comment></member> |
| <member limittype="bitmask" optional="true"><type>VkSampleCountFlags</type> <name>sampledImageStencilSampleCounts</name><comment>supported stencil sample counts for a sampled image</comment></member> |
| <member limittype="bitmask" optional="true"><type>VkSampleCountFlags</type> <name>storageImageSampleCounts</name><comment>supported sample counts for a storage image</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxSampleMaskWords</name><comment>max number of sample mask words</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>timestampComputeAndGraphics</name><comment>timestamps on graphics and compute queues</comment></member> |
| <member limittype="min,mul"><type>float</type> <name>timestampPeriod</name><comment>number of nanoseconds it takes for timestamp query value to increment by 1</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxClipDistances</name><comment>max number of clip distances</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxCullDistances</name><comment>max number of cull distances</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxCombinedClipAndCullDistances</name><comment>max combined number of user clipping</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>discreteQueuePriorities</name><comment>distinct queue priorities available </comment></member> |
| <member limittype="range"><type>float</type> <name>pointSizeRange</name>[2]<comment>range (min,max) of supported point sizes</comment></member> |
| <member limittype="range"><type>float</type> <name>lineWidthRange</name>[2]<comment>range (min,max) of supported line widths</comment></member> |
| <member limittype="min,mul"><type>float</type> <name>pointSizeGranularity</name><comment>granularity of supported point sizes</comment></member> |
| <member limittype="min,mul"><type>float</type> <name>lineWidthGranularity</name><comment>granularity of supported line widths</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>strictLines</name><comment>line rasterization follows preferred rules</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>standardSampleLocations</name><comment>supports standard sample locations for all supported sample counts</comment></member> |
| <member limittype="min,pot"><type>VkDeviceSize</type> <name>optimalBufferCopyOffsetAlignment</name><comment>optimal offset of buffer copies</comment></member> |
| <member limittype="min,pot"><type>VkDeviceSize</type> <name>optimalBufferCopyRowPitchAlignment</name><comment>optimal pitch of buffer copies</comment></member> |
| <member limittype="min,pot"><type>VkDeviceSize</type> <name>nonCoherentAtomSize</name><comment>minimum size and alignment for non-coherent host-mapped device memory access</comment></member> |
| </type> |
| <type category="struct" name="VkSemaphoreCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkSemaphoreCreateFlags</type> <name>flags</name><comment>Semaphore creation flags</comment></member> |
| </type> |
| <type category="struct" name="VkQueryPoolCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkQueryPoolCreateFlags</type> <name>flags</name></member> |
| <member><type>VkQueryType</type> <name>queryType</name></member> |
| <member><type>uint32_t</type> <name>queryCount</name></member> |
| <member optional="true" noautovalidity="true"><type>VkQueryPipelineStatisticFlags</type> <name>pipelineStatistics</name><comment>Optional</comment></member> |
| </type> |
| <type category="struct" name="VkFramebufferCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkFramebufferCreateFlags</type> <name>flags</name></member> |
| <member><type>VkRenderPass</type> <name>renderPass</name></member> |
| <member optional="true"><type>uint32_t</type> <name>attachmentCount</name></member> |
| <member noautovalidity="true" len="attachmentCount">const <type>VkImageView</type>* <name>pAttachments</name></member> |
| <member><type>uint32_t</type> <name>width</name></member> |
| <member><type>uint32_t</type> <name>height</name></member> |
| <member><type>uint32_t</type> <name>layers</name></member> |
| </type> |
| <type category="struct" name="VkDrawIndirectCommand"> |
| <member><type>uint32_t</type> <name>vertexCount</name></member> |
| <member><type>uint32_t</type> <name>instanceCount</name></member> |
| <member><type>uint32_t</type> <name>firstVertex</name></member> |
| <member noautovalidity="true"><type>uint32_t</type> <name>firstInstance</name></member> |
| </type> |
| <type category="struct" name="VkDrawIndexedIndirectCommand"> |
| <member><type>uint32_t</type> <name>indexCount</name></member> |
| <member><type>uint32_t</type> <name>instanceCount</name></member> |
| <member><type>uint32_t</type> <name>firstIndex</name></member> |
| <member><type>int32_t</type> <name>vertexOffset</name></member> |
| <member noautovalidity="true"><type>uint32_t</type> <name>firstInstance</name></member> |
| </type> |
| <type category="struct" name="VkDispatchIndirectCommand"> |
| <member noautovalidity="true"><type>uint32_t</type> <name>x</name></member> |
| <member noautovalidity="true"><type>uint32_t</type> <name>y</name></member> |
| <member noautovalidity="true"><type>uint32_t</type> <name>z</name></member> |
| </type> |
| <type category="struct" name="VkMultiDrawInfoEXT"> |
| <member><type>uint32_t</type> <name>firstVertex</name></member> |
| <member><type>uint32_t</type> <name>vertexCount</name></member> |
| </type> |
| <type category="struct" name="VkMultiDrawIndexedInfoEXT"> |
| <member><type>uint32_t</type> <name>firstIndex</name></member> |
| <member><type>uint32_t</type> <name>indexCount</name></member> |
| <member><type>int32_t</type> <name>vertexOffset</name></member> |
| </type> |
| <type category="struct" name="VkSubmitInfo"> |
| <member values="VK_STRUCTURE_TYPE_SUBMIT_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>waitSemaphoreCount</name></member> |
| <member len="waitSemaphoreCount">const <type>VkSemaphore</type>* <name>pWaitSemaphores</name></member> |
| <member optional="false,true" len="waitSemaphoreCount">const <type>VkPipelineStageFlags</type>* <name>pWaitDstStageMask</name></member> |
| <member optional="true"><type>uint32_t</type> <name>commandBufferCount</name></member> |
| <member len="commandBufferCount">const <type>VkCommandBuffer</type>* <name>pCommandBuffers</name></member> |
| <member optional="true"><type>uint32_t</type> <name>signalSemaphoreCount</name></member> |
| <member len="signalSemaphoreCount">const <type>VkSemaphore</type>* <name>pSignalSemaphores</name></member> |
| </type> |
| <comment>WSI extensions</comment> |
| <type category="struct" name="VkDisplayPropertiesKHR" returnedonly="true"> |
| <member><type>VkDisplayKHR</type> <name>display</name><comment>Handle of the display object</comment></member> |
| <member len="null-terminated">const <type>char</type>* <name>displayName</name><comment>Name of the display</comment></member> |
| <member><type>VkExtent2D</type> <name>physicalDimensions</name><comment>In millimeters?</comment></member> |
| <member><type>VkExtent2D</type> <name>physicalResolution</name><comment>Max resolution for CRT?</comment></member> |
| <member optional="true"><type>VkSurfaceTransformFlagsKHR</type> <name>supportedTransforms</name><comment>one or more bits from VkSurfaceTransformFlagsKHR</comment></member> |
| <member><type>VkBool32</type> <name>planeReorderPossible</name><comment>VK_TRUE if the overlay plane's z-order can be changed on this display.</comment></member> |
| <member><type>VkBool32</type> <name>persistentContent</name><comment>VK_TRUE if this is a "smart" display that supports self-refresh/internal buffering.</comment></member> |
| </type> |
| <type category="struct" name="VkDisplayPlanePropertiesKHR" returnedonly="true"> |
| <member><type>VkDisplayKHR</type> <name>currentDisplay</name><comment>Display the plane is currently associated with. Will be VK_NULL_HANDLE if the plane is not in use.</comment></member> |
| <member><type>uint32_t</type> <name>currentStackIndex</name><comment>Current z-order of the plane.</comment></member> |
| </type> |
| <type category="struct" name="VkDisplayModeParametersKHR"> |
| <member><type>VkExtent2D</type> <name>visibleRegion</name><comment>Visible scanout region.</comment></member> |
| <member noautovalidity="true"><type>uint32_t</type> <name>refreshRate</name><comment>Number of times per second the display is updated.</comment></member> |
| </type> |
| <type category="struct" name="VkDisplayModePropertiesKHR" returnedonly="true"> |
| <member><type>VkDisplayModeKHR</type> <name>displayMode</name><comment>Handle of this display mode.</comment></member> |
| <member><type>VkDisplayModeParametersKHR</type> <name>parameters</name><comment>The parameters this mode uses.</comment></member> |
| </type> |
| <type category="struct" name="VkDisplayModeCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkDisplayModeCreateFlagsKHR</type> <name>flags</name></member> |
| <member><type>VkDisplayModeParametersKHR</type> <name>parameters</name><comment>The parameters this mode uses.</comment></member> |
| </type> |
| <type category="struct" name="VkDisplayPlaneCapabilitiesKHR" returnedonly="true"> |
| <member optional="true"><type>VkDisplayPlaneAlphaFlagsKHR</type> <name>supportedAlpha</name><comment>Types of alpha blending supported, if any.</comment></member> |
| <member><type>VkOffset2D</type> <name>minSrcPosition</name><comment>Does the plane have any position and extent restrictions?</comment></member> |
| <member><type>VkOffset2D</type> <name>maxSrcPosition</name></member> |
| <member><type>VkExtent2D</type> <name>minSrcExtent</name></member> |
| <member><type>VkExtent2D</type> <name>maxSrcExtent</name></member> |
| <member><type>VkOffset2D</type> <name>minDstPosition</name></member> |
| <member><type>VkOffset2D</type> <name>maxDstPosition</name></member> |
| <member><type>VkExtent2D</type> <name>minDstExtent</name></member> |
| <member><type>VkExtent2D</type> <name>maxDstExtent</name></member> |
| </type> |
| <type category="struct" name="VkDisplaySurfaceCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkDisplaySurfaceCreateFlagsKHR</type> <name>flags</name></member> |
| <member><type>VkDisplayModeKHR</type> <name>displayMode</name><comment>The mode to use when displaying this surface</comment></member> |
| <member><type>uint32_t</type> <name>planeIndex</name><comment>The plane on which this surface appears. Must be between 0 and the value returned by vkGetPhysicalDeviceDisplayPlanePropertiesKHR() in pPropertyCount.</comment></member> |
| <member><type>uint32_t</type> <name>planeStackIndex</name><comment>The z-order of the plane.</comment></member> |
| <member><type>VkSurfaceTransformFlagBitsKHR</type> <name>transform</name><comment>Transform to apply to the images as part of the scanout operation</comment></member> |
| <member><type>float</type> <name>globalAlpha</name><comment>Global alpha value. Must be between 0 and 1, inclusive. Ignored if alphaMode is not VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR</comment></member> |
| <member><type>VkDisplayPlaneAlphaFlagBitsKHR</type> <name>alphaMode</name><comment>The type of alpha blending to use. Must be one of the bits from VkDisplayPlaneCapabilitiesKHR::supportedAlpha for this display plane</comment></member> |
| <member><type>VkExtent2D</type> <name>imageExtent</name><comment>size of the images to use with this surface</comment></member> |
| </type> |
| <type category="struct" name="VkDisplayPresentInfoKHR" structextends="VkPresentInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkRect2D</type> <name>srcRect</name><comment>Rectangle within the presentable image to read pixel data from when presenting to the display.</comment></member> |
| <member><type>VkRect2D</type> <name>dstRect</name><comment>Rectangle within the current display mode's visible region to display srcRectangle in.</comment></member> |
| <member><type>VkBool32</type> <name>persistent</name><comment>For smart displays, use buffered mode. If the display properties member "persistentMode" is VK_FALSE, this member must always be VK_FALSE.</comment></member> |
| </type> |
| <type category="struct" name="VkSurfaceCapabilitiesKHR" returnedonly="true"> |
| <member><type>uint32_t</type> <name>minImageCount</name><comment>Supported minimum number of images for the surface</comment></member> |
| <member><type>uint32_t</type> <name>maxImageCount</name><comment>Supported maximum number of images for the surface, 0 for unlimited</comment></member> |
| <member><type>VkExtent2D</type> <name>currentExtent</name><comment>Current image width and height for the surface, (0, 0) if undefined</comment></member> |
| <member><type>VkExtent2D</type> <name>minImageExtent</name><comment>Supported minimum image width and height for the surface</comment></member> |
| <member><type>VkExtent2D</type> <name>maxImageExtent</name><comment>Supported maximum image width and height for the surface</comment></member> |
| <member><type>uint32_t</type> <name>maxImageArrayLayers</name><comment>Supported maximum number of image layers for the surface</comment></member> |
| <member><type>VkSurfaceTransformFlagsKHR</type> <name>supportedTransforms</name><comment>1 or more bits representing the transforms supported</comment></member> |
| <member><type>VkSurfaceTransformFlagBitsKHR</type> <name>currentTransform</name><comment>The surface's current transform relative to the device's natural orientation</comment></member> |
| <member><type>VkCompositeAlphaFlagsKHR</type> <name>supportedCompositeAlpha</name><comment>1 or more bits representing the alpha compositing modes supported</comment></member> |
| <member><type>VkImageUsageFlags</type> <name>supportedUsageFlags</name><comment>Supported image usage flags for the surface</comment></member> |
| </type> |
| <type category="struct" name="VkAndroidSurfaceCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkAndroidSurfaceCreateFlagsKHR</type> <name>flags</name></member> |
| <member noautovalidity="true">struct <type>ANativeWindow</type>* <name>window</name></member> |
| </type> |
| <type category="struct" name="VkViSurfaceCreateInfoNN"> |
| <member values="VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkViSurfaceCreateFlagsNN</type> <name>flags</name></member> |
| <member noautovalidity="true"><type>void</type>* <name>window</name></member> |
| </type> |
| <type category="struct" name="VkWaylandSurfaceCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkWaylandSurfaceCreateFlagsKHR</type> <name>flags</name></member> |
| <member noautovalidity="true">struct <type>wl_display</type>* <name>display</name></member> |
| <member noautovalidity="true">struct <type>wl_surface</type>* <name>surface</name></member> |
| </type> |
| <type category="struct" name="VkWin32SurfaceCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkWin32SurfaceCreateFlagsKHR</type> <name>flags</name></member> |
| <member><type>HINSTANCE</type> <name>hinstance</name></member> |
| <member><type>HWND</type> <name>hwnd</name></member> |
| </type> |
| <type category="struct" name="VkXlibSurfaceCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkXlibSurfaceCreateFlagsKHR</type> <name>flags</name></member> |
| <member noautovalidity="true"><type>Display</type>* <name>dpy</name></member> |
| <member><type>Window</type> <name>window</name></member> |
| </type> |
| <type category="struct" name="VkXcbSurfaceCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkXcbSurfaceCreateFlagsKHR</type> <name>flags</name></member> |
| <member noautovalidity="true"><type>xcb_connection_t</type>* <name>connection</name></member> |
| <member><type>xcb_window_t</type> <name>window</name></member> |
| </type> |
| <type category="struct" name="VkDirectFBSurfaceCreateInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkDirectFBSurfaceCreateFlagsEXT</type> <name>flags</name></member> |
| <member noautovalidity="true"><type>IDirectFB</type>* <name>dfb</name></member> |
| <member noautovalidity="true"><type>IDirectFBSurface</type>* <name>surface</name></member> |
| </type> |
| <type category="struct" name="VkImagePipeSurfaceCreateInfoFUCHSIA"> |
| <member values="VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkImagePipeSurfaceCreateFlagsFUCHSIA</type> <name>flags</name></member> |
| <member><type>zx_handle_t</type> <name>imagePipeHandle</name></member> |
| </type> |
| <type category="struct" name="VkStreamDescriptorSurfaceCreateInfoGGP"> |
| <member values="VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkStreamDescriptorSurfaceCreateFlagsGGP</type> <name>flags</name></member> |
| <member><type>GgpStreamDescriptor</type> <name>streamDescriptor</name></member> |
| </type> |
| <type category="struct" name="VkScreenSurfaceCreateInfoQNX"> |
| <member values="VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkScreenSurfaceCreateFlagsQNX</type> <name>flags</name></member> |
| <member noautovalidity="true">struct <type>_screen_context</type>* <name>context</name></member> |
| <member noautovalidity="true">struct <type>_screen_window</type>* <name>window</name></member> |
| </type> |
| <type category="struct" name="VkSurfaceFormatKHR" returnedonly="true"> |
| <member><type>VkFormat</type> <name>format</name><comment>Supported pair of rendering format</comment></member> |
| <member><type>VkColorSpaceKHR</type> <name>colorSpace</name><comment>and color space for the surface</comment></member> |
| </type> |
| <type category="struct" name="VkSwapchainCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkSwapchainCreateFlagsKHR</type> <name>flags</name></member> |
| <member><type>VkSurfaceKHR</type> <name>surface</name><comment>The swapchain's target surface</comment></member> |
| <member><type>uint32_t</type> <name>minImageCount</name><comment>Minimum number of presentation images the application needs</comment></member> |
| <member><type>VkFormat</type> <name>imageFormat</name><comment>Format of the presentation images</comment></member> |
| <member><type>VkColorSpaceKHR</type> <name>imageColorSpace</name><comment>Colorspace of the presentation images</comment></member> |
| <member><type>VkExtent2D</type> <name>imageExtent</name><comment>Dimensions of the presentation images</comment></member> |
| <member><type>uint32_t</type> <name>imageArrayLayers</name><comment>Determines the number of views for multiview/stereo presentation</comment></member> |
| <member><type>VkImageUsageFlags</type> <name>imageUsage</name><comment>Bits indicating how the presentation images will be used</comment></member> |
| <member><type>VkSharingMode</type> <name>imageSharingMode</name><comment>Sharing mode used for the presentation images</comment></member> |
| <member optional="true"><type>uint32_t</type> <name>queueFamilyIndexCount</name><comment>Number of queue families having access to the images in case of concurrent sharing mode</comment></member> |
| <member noautovalidity="true" len="queueFamilyIndexCount">const <type>uint32_t</type>* <name>pQueueFamilyIndices</name><comment>Array of queue family indices having access to the images in case of concurrent sharing mode</comment></member> |
| <member><type>VkSurfaceTransformFlagBitsKHR</type> <name>preTransform</name><comment>The transform, relative to the device's natural orientation, applied to the image content prior to presentation</comment></member> |
| <member><type>VkCompositeAlphaFlagBitsKHR</type> <name>compositeAlpha</name><comment>The alpha blending mode used when compositing this surface with other surfaces in the window system</comment></member> |
| <member><type>VkPresentModeKHR</type> <name>presentMode</name><comment>Which presentation mode to use for presents on this swap chain</comment></member> |
| <member><type>VkBool32</type> <name>clipped</name><comment>Specifies whether presentable images may be affected by window clip regions</comment></member> |
| <member api="vulkan" optional="true"><type>VkSwapchainKHR</type> <name>oldSwapchain</name><comment>Existing swap chain to replace, if any</comment></member> |
| <member api="vulkansc" noautovalidity="true" optional="true"><type>VkSwapchainKHR</type> <name>oldSwapchain</name><comment>Existing swap chain to replace, if any</comment></member> |
| </type> |
| <type category="struct" name="VkPresentInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_PRESENT_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>waitSemaphoreCount</name><comment>Number of semaphores to wait for before presenting</comment></member> |
| <member len="waitSemaphoreCount">const <type>VkSemaphore</type>* <name>pWaitSemaphores</name><comment>Semaphores to wait for before presenting</comment></member> |
| <member><type>uint32_t</type> <name>swapchainCount</name><comment>Number of swapchains to present in this call</comment></member> |
| <member len="swapchainCount">const <type>VkSwapchainKHR</type>* <name>pSwapchains</name><comment>Swapchains to present an image from</comment></member> |
| <member len="swapchainCount">const <type>uint32_t</type>* <name>pImageIndices</name><comment>Indices of which presentable images to present</comment></member> |
| <member optional="true" len="swapchainCount"><type>VkResult</type>* <name>pResults</name><comment>Optional (i.e. if non-NULL) VkResult for each swapchain</comment></member> |
| </type> |
| <type category="struct" name="VkDebugReportCallbackCreateInfoEXT" structextends="VkInstanceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkDebugReportFlagsEXT</type> <name>flags</name><comment>Indicates which events call this callback</comment></member> |
| <member><type>PFN_vkDebugReportCallbackEXT</type> <name>pfnCallback</name><comment>Function pointer of a callback function</comment></member> |
| <member optional="true"><type>void</type>* <name>pUserData</name><comment>Data provided to callback function</comment></member> |
| </type> |
| <type category="struct" name="VkValidationFlagsEXT" structextends="VkInstanceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT"><type>VkStructureType</type> <name>sType</name><comment>Must be VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT</comment></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>disabledValidationCheckCount</name><comment>Number of validation checks to disable</comment></member> |
| <member len="disabledValidationCheckCount">const <type>VkValidationCheckEXT</type>* <name>pDisabledValidationChecks</name><comment>Validation checks to disable</comment></member> |
| </type> |
| <type category="struct" name="VkValidationFeaturesEXT" structextends="VkInstanceCreateInfo,VkShaderModuleCreateInfo,VkShaderCreateInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name><comment>Must be VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT</comment></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>enabledValidationFeatureCount</name><comment>Number of validation features to enable</comment></member> |
| <member len="enabledValidationFeatureCount">const <type>VkValidationFeatureEnableEXT</type>* <name>pEnabledValidationFeatures</name><comment>Validation features to enable</comment></member> |
| <member optional="true"><type>uint32_t</type> <name>disabledValidationFeatureCount</name><comment>Number of validation features to disable</comment></member> |
| <member len="disabledValidationFeatureCount">const <type>VkValidationFeatureDisableEXT</type>* <name>pDisabledValidationFeatures</name><comment>Validation features to disable</comment></member> |
| </type> |
| <type category="struct" name="VkLayerSettingsCreateInfoEXT" allowduplicate="true" structextends="VkInstanceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_LAYER_SETTINGS_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name><comment>Must be VK_STRUCTURE_TYPE_LAYER_SETTINGS_CREATE_INFO_EXT</comment></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>settingCount</name><comment>Number of settings to configure</comment></member> |
| <member len="settingCount">const <type>VkLayerSettingEXT</type>* <name>pSettings</name><comment>Validation features to enable</comment></member> |
| </type> |
| <type category="struct" name="VkLayerSettingEXT"> |
| <member len="null-terminated">const <type>char</type>* <name>pLayerName</name></member> |
| <member len="null-terminated">const <type>char</type>* <name>pSettingName</name></member> |
| <member><type>VkLayerSettingTypeEXT</type> <name>type</name><comment>The type of the object</comment></member> |
| <member optional="true"><type>uint32_t</type> <name>valueCount</name><comment>Number of values of the setting</comment></member> |
| <member noautovalidity="true" len="valueCount">const <type>void</type>* <name>pValues</name><comment>Values to pass for a setting</comment></member> |
| </type> |
| <type category="struct" name="VkApplicationParametersEXT" allowduplicate="true" structextends="VkApplicationInfo,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_APPLICATION_PARAMETERS_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>vendorID</name></member> |
| <member optional="true"><type>uint32_t</type> <name>deviceID</name></member> |
| <member><type>uint32_t</type> <name>key</name></member> |
| <member><type>uint64_t</type> <name>value</name></member> |
| </type> |
| <type category="struct" name="VkPipelineRasterizationStateRasterizationOrderAMD" structextends="VkPipelineRasterizationStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkRasterizationOrderAMD</type> <name>rasterizationOrder</name><comment>Rasterization order to use for the pipeline</comment></member> |
| </type> |
| <type category="struct" name="VkDebugMarkerObjectNameInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDebugReportObjectTypeEXT</type> <name>objectType</name><comment>The type of the object</comment></member> |
| <member objecttype="objectType"><type>uint64_t</type> <name>object</name><comment>The handle of the object, cast to uint64_t</comment></member> |
| <member len="null-terminated">const <type>char</type>* <name>pObjectName</name><comment>Name to apply to the object</comment></member> |
| </type> |
| <type category="struct" name="VkDebugMarkerObjectTagInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDebugReportObjectTypeEXT</type> <name>objectType</name><comment>The type of the object</comment></member> |
| <member objecttype="objectType"><type>uint64_t</type> <name>object</name><comment>The handle of the object, cast to uint64_t</comment></member> |
| <member><type>uint64_t</type> <name>tagName</name><comment>The name of the tag to set on the object</comment></member> |
| <member><type>size_t</type> <name>tagSize</name><comment>The length in bytes of the tag data</comment></member> |
| <member len="tagSize">const <type>void</type>* <name>pTag</name><comment>Tag data to attach to the object</comment></member> |
| </type> |
| <type category="struct" name="VkDebugMarkerMarkerInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member len="null-terminated">const <type>char</type>* <name>pMarkerName</name><comment>Name of the debug marker</comment></member> |
| <member><type>float</type> <name>color</name>[4]<comment>Optional color for debug marker</comment></member> |
| </type> |
| <type category="struct" name="VkDedicatedAllocationImageCreateInfoNV" structextends="VkImageCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>dedicatedAllocation</name><comment>Whether this image uses a dedicated allocation</comment></member> |
| </type> |
| <type category="struct" name="VkDedicatedAllocationBufferCreateInfoNV" structextends="VkBufferCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>dedicatedAllocation</name><comment>Whether this buffer uses a dedicated allocation</comment></member> |
| </type> |
| <type category="struct" name="VkDedicatedAllocationMemoryAllocateInfoNV" structextends="VkMemoryAllocateInfo"> |
| <member values="VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkImage</type> <name>image</name><comment>Image that this allocation will be bound to</comment></member> |
| <member optional="true"><type>VkBuffer</type> <name>buffer</name><comment>Buffer that this allocation will be bound to</comment></member> |
| </type> |
| <type category="struct" name="VkExternalImageFormatPropertiesNV" returnedonly="true"> |
| <member><type>VkImageFormatProperties</type> <name>imageFormatProperties</name></member> |
| <member optional="true"><type>VkExternalMemoryFeatureFlagsNV</type> <name>externalMemoryFeatures</name></member> |
| <member optional="true"><type>VkExternalMemoryHandleTypeFlagsNV</type> <name>exportFromImportedHandleTypes</name></member> |
| <member optional="true"><type>VkExternalMemoryHandleTypeFlagsNV</type> <name>compatibleHandleTypes</name></member> |
| </type> |
| <type category="struct" name="VkExternalMemoryImageCreateInfoNV" structextends="VkImageCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkExternalMemoryHandleTypeFlagsNV</type> <name>handleTypes</name></member> |
| </type> |
| <type category="struct" name="VkExportMemoryAllocateInfoNV" structextends="VkMemoryAllocateInfo"> |
| <member values="VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkExternalMemoryHandleTypeFlagsNV</type> <name>handleTypes</name></member> |
| </type> |
| <type category="struct" name="VkImportMemoryWin32HandleInfoNV" structextends="VkMemoryAllocateInfo"> |
| <member values="VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkExternalMemoryHandleTypeFlagsNV</type> <name>handleType</name></member> |
| <member optional="true"><type>HANDLE</type> <name>handle</name></member> |
| </type> |
| <type category="struct" name="VkExportMemoryWin32HandleInfoNV" structextends="VkMemoryAllocateInfo"> |
| <member values="VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true">const <type>SECURITY_ATTRIBUTES</type>* <name>pAttributes</name></member> |
| <member optional="true"><type>DWORD</type> <name>dwAccess</name></member> |
| </type> |
| <type category="struct" name="VkExportMemorySciBufInfoNV" structextends="VkMemoryAllocateInfo"> |
| <member values="VK_STRUCTURE_TYPE_EXPORT_MEMORY_SCI_BUF_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>NvSciBufAttrList</type> <name>pAttributes</name></member> |
| </type> |
| <type category="struct" name="VkImportMemorySciBufInfoNV" structextends="VkMemoryAllocateInfo"> |
| <member values="VK_STRUCTURE_TYPE_IMPORT_MEMORY_SCI_BUF_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkExternalMemoryHandleTypeFlagBits</type> <name>handleType</name></member> |
| <member><type>NvSciBufObj</type> <name>handle</name></member> |
| </type> |
| <type category="struct" name="VkMemoryGetSciBufInfoNV"> |
| <member values="VK_STRUCTURE_TYPE_MEMORY_GET_SCI_BUF_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceMemory</type> <name>memory</name></member> |
| <member><type>VkExternalMemoryHandleTypeFlagBits</type> <name>handleType</name></member> |
| </type> |
| <type category="struct" name="VkMemorySciBufPropertiesNV"> |
| <member values="VK_STRUCTURE_TYPE_MEMORY_SCI_BUF_PROPERTIES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>memoryTypeBits</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceExternalMemorySciBufFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_SCI_BUF_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>sciBufImport</name></member> |
| <member><type>VkBool32</type> <name>sciBufExport</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceExternalSciBufFeaturesNV" alias="VkPhysicalDeviceExternalMemorySciBufFeaturesNV"/> |
| <type category="struct" name="VkWin32KeyedMutexAcquireReleaseInfoNV" structextends="VkSubmitInfo,VkSubmitInfo2"> |
| <member values="VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>acquireCount</name></member> |
| <member len="acquireCount">const <type>VkDeviceMemory</type>* <name>pAcquireSyncs</name></member> |
| <member len="acquireCount">const <type>uint64_t</type>* <name>pAcquireKeys</name></member> |
| <member len="acquireCount">const <type>uint32_t</type>* <name>pAcquireTimeoutMilliseconds</name></member> |
| <member optional="true"><type>uint32_t</type> <name>releaseCount</name></member> |
| <member len="releaseCount">const <type>VkDeviceMemory</type>* <name>pReleaseSyncs</name></member> |
| <member len="releaseCount">const <type>uint64_t</type>* <name>pReleaseKeys</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>deviceGeneratedCommands</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_COMPUTE_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>deviceGeneratedCompute</name></member> |
| <member><type>VkBool32</type> <name>deviceGeneratedComputePipelines</name></member> |
| <member><type>VkBool32</type> <name>deviceGeneratedComputeCaptureReplay</name></member> |
| </type> |
| <type category="struct" name="VkDevicePrivateDataCreateInfo" allowduplicate="true" structextends="VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>privateDataSlotRequestCount</name></member> |
| </type> |
| <type category="struct" name="VkDevicePrivateDataCreateInfoEXT" alias="VkDevicePrivateDataCreateInfo"/> |
| <type category="struct" name="VkPrivateDataSlotCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkPrivateDataSlotCreateFlags</type> <name>flags</name></member> |
| </type> |
| <type category="struct" name="VkPrivateDataSlotCreateInfoEXT" alias="VkPrivateDataSlotCreateInfo"/> |
| <type category="struct" name="VkPhysicalDevicePrivateDataFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>privateData</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevicePrivateDataFeaturesEXT" alias="VkPhysicalDevicePrivateDataFeatures"/> |
| <type category="struct" name="VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV" structextends="VkPhysicalDeviceProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxGraphicsShaderGroupCount</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxIndirectSequenceCount</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxIndirectCommandsTokenCount</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxIndirectCommandsStreamCount</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxIndirectCommandsTokenOffset</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxIndirectCommandsStreamStride</name></member> |
| <member limittype="min"><type>uint32_t</type> <name>minSequencesCountBufferOffsetAlignment</name></member> |
| <member limittype="min"><type>uint32_t</type> <name>minSequencesIndexBufferOffsetAlignment</name></member> |
| <member limittype="min"><type>uint32_t</type> <name>minIndirectCommandsBufferOffsetAlignment</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMultiDrawPropertiesEXT" structextends="VkPhysicalDeviceProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxMultiDrawCount</name></member> |
| </type> |
| <type category="struct" name="VkGraphicsShaderGroupCreateInfoNV"> |
| <member values="VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>stageCount</name></member> |
| <member len="stageCount">const <type>VkPipelineShaderStageCreateInfo</type>* <name>pStages</name></member> |
| <member noautovalidity="true" optional="true">const <type>VkPipelineVertexInputStateCreateInfo</type>* <name>pVertexInputState</name></member> |
| <member noautovalidity="true" optional="true">const <type>VkPipelineTessellationStateCreateInfo</type>* <name>pTessellationState</name></member> |
| </type> |
| <type category="struct" name="VkGraphicsPipelineShaderGroupsCreateInfoNV" structextends="VkGraphicsPipelineCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>groupCount</name></member> |
| <member len="groupCount">const <type>VkGraphicsShaderGroupCreateInfoNV</type>* <name>pGroups</name></member> |
| <member optional="true"><type>uint32_t</type> <name>pipelineCount</name></member> |
| <member len="pipelineCount">const <type>VkPipeline</type>* <name>pPipelines</name></member> |
| </type> |
| <type category="struct" name="VkBindShaderGroupIndirectCommandNV"> |
| <member><type>uint32_t</type> <name>groupIndex</name></member> |
| </type> |
| <type category="struct" name="VkBindIndexBufferIndirectCommandNV"> |
| <member><type>VkDeviceAddress</type> <name>bufferAddress</name></member> |
| <member><type>uint32_t</type> <name>size</name></member> |
| <member><type>VkIndexType</type> <name>indexType</name></member> |
| </type> |
| <type category="struct" name="VkBindVertexBufferIndirectCommandNV"> |
| <member><type>VkDeviceAddress</type> <name>bufferAddress</name></member> |
| <member><type>uint32_t</type> <name>size</name></member> |
| <member><type>uint32_t</type> <name>stride</name></member> |
| </type> |
| <type category="struct" name="VkSetStateFlagsIndirectCommandNV"> |
| <member><type>uint32_t</type> <name>data</name></member> |
| </type> |
| <type category="struct" name="VkIndirectCommandsStreamNV"> |
| <member><type>VkBuffer</type> <name>buffer</name></member> |
| <member><type>VkDeviceSize</type> <name>offset</name></member> |
| </type> |
| <type category="struct" name="VkIndirectCommandsLayoutTokenNV"> |
| <member values="VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkIndirectCommandsTokenTypeNV</type> <name>tokenType</name></member> |
| <member><type>uint32_t</type> <name>stream</name></member> |
| <member><type>uint32_t</type> <name>offset</name></member> |
| <member><type>uint32_t</type> <name>vertexBindingUnit</name></member> |
| <member><type>VkBool32</type> <name>vertexDynamicStride</name></member> |
| <member optional="true"><type>VkPipelineLayout</type> <name>pushconstantPipelineLayout</name></member> |
| <member optional="true"><type>VkShaderStageFlags</type> <name>pushconstantShaderStageFlags</name></member> |
| <member><type>uint32_t</type> <name>pushconstantOffset</name></member> |
| <member><type>uint32_t</type> <name>pushconstantSize</name></member> |
| <member optional="true"><type>VkIndirectStateFlagsNV</type> <name>indirectStateFlags</name></member> |
| <member optional="true"><type>uint32_t</type> <name>indexTypeCount</name></member> |
| <member len="indexTypeCount">const <type>VkIndexType</type>* <name>pIndexTypes</name></member> |
| <member len="indexTypeCount">const <type>uint32_t</type>* <name>pIndexTypeValues</name></member> |
| </type> |
| <type category="struct" name="VkIndirectCommandsLayoutCreateInfoNV"> |
| <member values="VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkIndirectCommandsLayoutUsageFlagsNV</type> <name>flags</name></member> |
| <member><type>VkPipelineBindPoint</type> <name>pipelineBindPoint</name></member> |
| <member><type>uint32_t</type> <name>tokenCount</name></member> |
| <member len="tokenCount">const <type>VkIndirectCommandsLayoutTokenNV</type>* <name>pTokens</name></member> |
| <member><type>uint32_t</type> <name>streamCount</name></member> |
| <member len="streamCount">const <type>uint32_t</type>* <name>pStreamStrides</name></member> |
| </type> |
| <type category="struct" name="VkGeneratedCommandsInfoNV"> |
| <member values="VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkPipelineBindPoint</type> <name>pipelineBindPoint</name></member> |
| <member optional="true"><type>VkPipeline</type> <name>pipeline</name></member> |
| <member><type>VkIndirectCommandsLayoutNV</type> <name>indirectCommandsLayout</name></member> |
| <member><type>uint32_t</type> <name>streamCount</name></member> |
| <member len="streamCount">const <type>VkIndirectCommandsStreamNV</type>* <name>pStreams</name></member> |
| <member><type>uint32_t</type> <name>sequencesCount</name></member> |
| <member><type>VkBuffer</type> <name>preprocessBuffer</name></member> |
| <member><type>VkDeviceSize</type> <name>preprocessOffset</name></member> |
| <member><type>VkDeviceSize</type> <name>preprocessSize</name></member> |
| <member optional="true"><type>VkBuffer</type> <name>sequencesCountBuffer</name></member> |
| <member><type>VkDeviceSize</type> <name>sequencesCountOffset</name></member> |
| <member optional="true"><type>VkBuffer</type> <name>sequencesIndexBuffer</name></member> |
| <member><type>VkDeviceSize</type> <name>sequencesIndexOffset</name></member> |
| </type> |
| <type category="struct" name="VkGeneratedCommandsMemoryRequirementsInfoNV"> |
| <member values="VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkPipelineBindPoint</type> <name>pipelineBindPoint</name></member> |
| <member optional="true"><type>VkPipeline</type> <name>pipeline</name></member> |
| <member><type>VkIndirectCommandsLayoutNV</type> <name>indirectCommandsLayout</name></member> |
| <member><type>uint32_t</type> <name>maxSequencesCount</name></member> |
| </type> |
| <type category="struct" name="VkPipelineIndirectDeviceAddressInfoNV"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_INDIRECT_DEVICE_ADDRESS_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkPipelineBindPoint</type> <name>pipelineBindPoint</name></member> |
| <member><type>VkPipeline</type> <name>pipeline</name></member> |
| </type> |
| <type category="struct" name="VkBindPipelineIndirectCommandNV"> |
| <member><type>VkDeviceAddress</type> <name>pipelineAddress</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceFeatures2" structextends="VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkPhysicalDeviceFeatures</type> <name>features</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceFeatures2KHR" alias="VkPhysicalDeviceFeatures2"/> |
| <type category="struct" name="VkPhysicalDeviceProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="struct"><type>VkPhysicalDeviceProperties</type> <name>properties</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceProperties2KHR" alias="VkPhysicalDeviceProperties2"/> |
| <type category="struct" name="VkFormatProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkFormatProperties</type> <name>formatProperties</name></member> |
| </type> |
| <type category="struct" name="VkFormatProperties2KHR" alias="VkFormatProperties2"/> |
| <type category="struct" name="VkImageFormatProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkImageFormatProperties</type> <name>imageFormatProperties</name></member> |
| </type> |
| <type category="struct" name="VkImageFormatProperties2KHR" alias="VkImageFormatProperties2"/> |
| <type category="struct" name="VkPhysicalDeviceImageFormatInfo2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkFormat</type> <name>format</name></member> |
| <member><type>VkImageType</type> <name>type</name></member> |
| <member><type>VkImageTiling</type> <name>tiling</name></member> |
| <member><type>VkImageUsageFlags</type> <name>usage</name></member> |
| <member optional="true"><type>VkImageCreateFlags</type> <name>flags</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceImageFormatInfo2KHR" alias="VkPhysicalDeviceImageFormatInfo2"/> |
| <type category="struct" name="VkQueueFamilyProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="struct"><type>VkQueueFamilyProperties</type> <name>queueFamilyProperties</name></member> |
| </type> |
| <type category="struct" name="VkQueueFamilyProperties2KHR" alias="VkQueueFamilyProperties2"/> |
| <type category="struct" name="VkPhysicalDeviceMemoryProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkPhysicalDeviceMemoryProperties</type> <name>memoryProperties</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMemoryProperties2KHR" alias="VkPhysicalDeviceMemoryProperties2"/> |
| <type category="struct" name="VkSparseImageFormatProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="struct"><type>VkSparseImageFormatProperties</type> <name>properties</name></member> |
| </type> |
| <type category="struct" name="VkSparseImageFormatProperties2KHR" alias="VkSparseImageFormatProperties2"/> |
| <type category="struct" name="VkPhysicalDeviceSparseImageFormatInfo2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkFormat</type> <name>format</name></member> |
| <member><type>VkImageType</type> <name>type</name></member> |
| <member><type>VkSampleCountFlagBits</type> <name>samples</name></member> |
| <member><type>VkImageUsageFlags</type> <name>usage</name></member> |
| <member><type>VkImageTiling</type> <name>tiling</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceSparseImageFormatInfo2KHR" alias="VkPhysicalDeviceSparseImageFormatInfo2"/> |
| <type category="struct" name="VkPhysicalDevicePushDescriptorPropertiesKHR" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPushDescriptors</name></member> |
| </type> |
| <type category="struct" name="VkConformanceVersion"> |
| <member><type>uint8_t</type> <name>major</name></member> |
| <member><type>uint8_t</type> <name>minor</name></member> |
| <member><type>uint8_t</type> <name>subminor</name></member> |
| <member><type>uint8_t</type> <name>patch</name></member> |
| </type> |
| <type category="struct" name="VkConformanceVersionKHR" alias="VkConformanceVersion"/> |
| <type category="struct" name="VkPhysicalDeviceDriverProperties" structextends="VkPhysicalDeviceProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="exact"><type>VkDriverId</type> <name>driverID</name></member> |
| <member limittype="exact" len="null-terminated"><type>char</type> <name>driverName</name>[<enum>VK_MAX_DRIVER_NAME_SIZE</enum>]</member> |
| <member limittype="exact" len="null-terminated"><type>char</type> <name>driverInfo</name>[<enum>VK_MAX_DRIVER_INFO_SIZE</enum>]</member> |
| <member limittype="exact"><type>VkConformanceVersion</type> <name>conformanceVersion</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceDriverPropertiesKHR" alias="VkPhysicalDeviceDriverProperties"/> |
| <type category="struct" name="VkPresentRegionsKHR" structextends="VkPresentInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>swapchainCount</name><comment>Copy of VkPresentInfoKHR::swapchainCount</comment></member> |
| <member len="swapchainCount" optional="true">const <type>VkPresentRegionKHR</type>* <name>pRegions</name><comment>The regions that have changed</comment></member> |
| </type> |
| <type category="struct" name="VkPresentRegionKHR"> |
| <member optional="true"><type>uint32_t</type> <name>rectangleCount</name><comment>Number of rectangles in pRectangles</comment></member> |
| <member optional="true" len="rectangleCount">const <type>VkRectLayerKHR</type>* <name>pRectangles</name><comment>Array of rectangles that have changed in a swapchain's image(s)</comment></member> |
| </type> |
| <type category="struct" name="VkRectLayerKHR"> |
| <member><type>VkOffset2D</type> <name>offset</name><comment>upper-left corner of a rectangle that has not changed, in pixels of a presentation images</comment></member> |
| <member noautovalidity="true"><type>VkExtent2D</type> <name>extent</name><comment>Dimensions of a rectangle that has not changed, in pixels of a presentation images</comment></member> |
| <member><type>uint32_t</type> <name>layer</name><comment>Layer of a swapchain's image(s), for stereoscopic-3D images</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceVariablePointersFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>variablePointersStorageBuffer</name></member> |
| <member><type>VkBool32</type> <name>variablePointers</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceVariablePointersFeaturesKHR" alias="VkPhysicalDeviceVariablePointersFeatures"/> |
| <type category="struct" name="VkPhysicalDeviceVariablePointerFeaturesKHR" alias="VkPhysicalDeviceVariablePointersFeatures"/> |
| <type category="struct" name="VkPhysicalDeviceVariablePointerFeatures" alias="VkPhysicalDeviceVariablePointersFeatures"/> |
| <type category="struct" name="VkExternalMemoryProperties" returnedonly="true"> |
| <member><type>VkExternalMemoryFeatureFlags</type> <name>externalMemoryFeatures</name></member> |
| <member optional="true"><type>VkExternalMemoryHandleTypeFlags</type> <name>exportFromImportedHandleTypes</name></member> |
| <member><type>VkExternalMemoryHandleTypeFlags</type> <name>compatibleHandleTypes</name></member> |
| </type> |
| <type category="struct" name="VkExternalMemoryPropertiesKHR" alias="VkExternalMemoryProperties"/> |
| <type category="struct" name="VkPhysicalDeviceExternalImageFormatInfo" structextends="VkPhysicalDeviceImageFormatInfo2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkExternalMemoryHandleTypeFlagBits</type> <name>handleType</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceExternalImageFormatInfoKHR" alias="VkPhysicalDeviceExternalImageFormatInfo"/> |
| <type category="struct" name="VkExternalImageFormatProperties" returnedonly="true" structextends="VkImageFormatProperties2"> |
| <member values="VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkExternalMemoryProperties</type> <name>externalMemoryProperties</name></member> |
| </type> |
| <type category="struct" name="VkExternalImageFormatPropertiesKHR" alias="VkExternalImageFormatProperties"/> |
| <type category="struct" name="VkPhysicalDeviceExternalBufferInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkBufferCreateFlags</type> <name>flags</name></member> |
| <member optional="true" noautovalidity="true"><type>VkBufferUsageFlags</type> <name>usage</name></member> |
| <member><type>VkExternalMemoryHandleTypeFlagBits</type> <name>handleType</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceExternalBufferInfoKHR" alias="VkPhysicalDeviceExternalBufferInfo"/> |
| <type category="struct" name="VkExternalBufferProperties" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkExternalMemoryProperties</type> <name>externalMemoryProperties</name></member> |
| </type> |
| <type category="struct" name="VkExternalBufferPropertiesKHR" alias="VkExternalBufferProperties"/> |
| <type category="struct" name="VkPhysicalDeviceIDProperties" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="noauto"><type>uint8_t</type> <name>deviceUUID</name>[<enum>VK_UUID_SIZE</enum>]</member> |
| <member limittype="noauto"><type>uint8_t</type> <name>driverUUID</name>[<enum>VK_UUID_SIZE</enum>]</member> |
| <member limittype="noauto"><type>uint8_t</type> <name>deviceLUID</name>[<enum>VK_LUID_SIZE</enum>]</member> |
| <member limittype="noauto"><type>uint32_t</type> <name>deviceNodeMask</name></member> |
| <member limittype="noauto"><type>VkBool32</type> <name>deviceLUIDValid</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceIDPropertiesKHR" alias="VkPhysicalDeviceIDProperties"/> |
| <type category="struct" name="VkExternalMemoryImageCreateInfo" structextends="VkImageCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkExternalMemoryHandleTypeFlags</type> <name>handleTypes</name></member> |
| </type> |
| <type category="struct" name="VkExternalMemoryImageCreateInfoKHR" alias="VkExternalMemoryImageCreateInfo"/> |
| <type category="struct" name="VkExternalMemoryBufferCreateInfo" structextends="VkBufferCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkExternalMemoryHandleTypeFlags</type> <name>handleTypes</name></member> |
| </type> |
| <type category="struct" name="VkExternalMemoryBufferCreateInfoKHR" alias="VkExternalMemoryBufferCreateInfo"/> |
| <type category="struct" name="VkExportMemoryAllocateInfo" structextends="VkMemoryAllocateInfo"> |
| <member values="VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkExternalMemoryHandleTypeFlags</type> <name>handleTypes</name></member> |
| </type> |
| <type category="struct" name="VkExportMemoryAllocateInfoKHR" alias="VkExportMemoryAllocateInfo"/> |
| <type category="struct" name="VkImportMemoryWin32HandleInfoKHR" structextends="VkMemoryAllocateInfo"> |
| <member values="VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkExternalMemoryHandleTypeFlagBits</type> <name>handleType</name></member> |
| <member optional="true"><type>HANDLE</type> <name>handle</name></member> |
| <member optional="true"><type>LPCWSTR</type> <name>name</name></member> |
| </type> |
| <type category="struct" name="VkExportMemoryWin32HandleInfoKHR" structextends="VkMemoryAllocateInfo"> |
| <member values="VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true">const <type>SECURITY_ATTRIBUTES</type>* <name>pAttributes</name></member> |
| <member><type>DWORD</type> <name>dwAccess</name></member> |
| <member><type>LPCWSTR</type> <name>name</name></member> |
| </type> |
| <type category="struct" name="VkImportMemoryZirconHandleInfoFUCHSIA" structextends="VkMemoryAllocateInfo"> |
| <member values="VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkExternalMemoryHandleTypeFlagBits</type> <name>handleType</name></member> |
| <member optional="true"><type>zx_handle_t</type> <name>handle</name></member> |
| </type> |
| <type category="struct" name="VkMemoryZirconHandlePropertiesFUCHSIA" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>memoryTypeBits</name></member> |
| </type> |
| <type category="struct" name="VkMemoryGetZirconHandleInfoFUCHSIA"> |
| <member values="VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceMemory</type> <name>memory</name></member> |
| <member><type>VkExternalMemoryHandleTypeFlagBits</type> <name>handleType</name></member> |
| </type> |
| <type category="struct" name="VkMemoryWin32HandlePropertiesKHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>memoryTypeBits</name></member> |
| </type> |
| <type category="struct" name="VkMemoryGetWin32HandleInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceMemory</type> <name>memory</name></member> |
| <member><type>VkExternalMemoryHandleTypeFlagBits</type> <name>handleType</name></member> |
| </type> |
| <type category="struct" name="VkImportMemoryFdInfoKHR" structextends="VkMemoryAllocateInfo"> |
| <member values="VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkExternalMemoryHandleTypeFlagBits</type> <name>handleType</name></member> |
| <member><type>int</type> <name>fd</name></member> |
| </type> |
| <type category="struct" name="VkMemoryFdPropertiesKHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>memoryTypeBits</name></member> |
| </type> |
| <type category="struct" name="VkMemoryGetFdInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceMemory</type> <name>memory</name></member> |
| <member><type>VkExternalMemoryHandleTypeFlagBits</type> <name>handleType</name></member> |
| </type> |
| <type category="struct" name="VkWin32KeyedMutexAcquireReleaseInfoKHR" structextends="VkSubmitInfo,VkSubmitInfo2"> |
| <member values="VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>acquireCount</name></member> |
| <member len="acquireCount">const <type>VkDeviceMemory</type>* <name>pAcquireSyncs</name></member> |
| <member len="acquireCount">const <type>uint64_t</type>* <name>pAcquireKeys</name></member> |
| <member len="acquireCount">const <type>uint32_t</type>* <name>pAcquireTimeouts</name></member> |
| <member optional="true"><type>uint32_t</type> <name>releaseCount</name></member> |
| <member len="releaseCount">const <type>VkDeviceMemory</type>* <name>pReleaseSyncs</name></member> |
| <member len="releaseCount">const <type>uint64_t</type>* <name>pReleaseKeys</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceExternalSemaphoreInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkExternalSemaphoreHandleTypeFlagBits</type> <name>handleType</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceExternalSemaphoreInfoKHR" alias="VkPhysicalDeviceExternalSemaphoreInfo"/> |
| <type category="struct" name="VkExternalSemaphoreProperties" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkExternalSemaphoreHandleTypeFlags</type> <name>exportFromImportedHandleTypes</name></member> |
| <member><type>VkExternalSemaphoreHandleTypeFlags</type> <name>compatibleHandleTypes</name></member> |
| <member optional="true"><type>VkExternalSemaphoreFeatureFlags</type> <name>externalSemaphoreFeatures</name></member> |
| </type> |
| <type category="struct" name="VkExternalSemaphorePropertiesKHR" alias="VkExternalSemaphoreProperties"/> |
| <type category="struct" name="VkExportSemaphoreCreateInfo" structextends="VkSemaphoreCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkExternalSemaphoreHandleTypeFlags</type> <name>handleTypes</name></member> |
| </type> |
| <type category="struct" name="VkExportSemaphoreCreateInfoKHR" alias="VkExportSemaphoreCreateInfo"/> |
| <type category="struct" name="VkImportSemaphoreWin32HandleInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member externsync="true"><type>VkSemaphore</type> <name>semaphore</name></member> |
| <member optional="true"><type>VkSemaphoreImportFlags</type> <name>flags</name></member> |
| <member noautovalidity="true"><type>VkExternalSemaphoreHandleTypeFlagBits</type> <name>handleType</name></member> |
| <member optional="true"><type>HANDLE</type> <name>handle</name></member> |
| <member optional="true"><type>LPCWSTR</type> <name>name</name></member> |
| </type> |
| <type category="struct" name="VkExportSemaphoreWin32HandleInfoKHR" structextends="VkSemaphoreCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true">const <type>SECURITY_ATTRIBUTES</type>* <name>pAttributes</name></member> |
| <member><type>DWORD</type> <name>dwAccess</name></member> |
| <member><type>LPCWSTR</type> <name>name</name></member> |
| </type> |
| <type category="struct" name="VkD3D12FenceSubmitInfoKHR" structextends="VkSubmitInfo"> |
| <member values="VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>waitSemaphoreValuesCount</name></member> |
| <member optional="true" len="waitSemaphoreValuesCount">const <type>uint64_t</type>* <name>pWaitSemaphoreValues</name></member> |
| <member optional="true"><type>uint32_t</type> <name>signalSemaphoreValuesCount</name></member> |
| <member optional="true" len="signalSemaphoreValuesCount">const <type>uint64_t</type>* <name>pSignalSemaphoreValues</name></member> |
| </type> |
| <type category="struct" name="VkSemaphoreGetWin32HandleInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkSemaphore</type> <name>semaphore</name></member> |
| <member><type>VkExternalSemaphoreHandleTypeFlagBits</type> <name>handleType</name></member> |
| </type> |
| <type category="struct" name="VkImportSemaphoreFdInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member externsync="true"><type>VkSemaphore</type> <name>semaphore</name></member> |
| <member optional="true"><type>VkSemaphoreImportFlags</type> <name>flags</name></member> |
| <member><type>VkExternalSemaphoreHandleTypeFlagBits</type> <name>handleType</name></member> |
| <member><type>int</type> <name>fd</name></member> |
| </type> |
| <type category="struct" name="VkSemaphoreGetFdInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkSemaphore</type> <name>semaphore</name></member> |
| <member><type>VkExternalSemaphoreHandleTypeFlagBits</type> <name>handleType</name></member> |
| </type> |
| <type category="struct" name="VkImportSemaphoreZirconHandleInfoFUCHSIA"> |
| <member values="VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member externsync="true"><type>VkSemaphore</type> <name>semaphore</name></member> |
| <member optional="true"><type>VkSemaphoreImportFlags</type> <name>flags</name></member> |
| <member><type>VkExternalSemaphoreHandleTypeFlagBits</type> <name>handleType</name></member> |
| <member><type>zx_handle_t</type> <name>zirconHandle</name></member> |
| </type> |
| <type category="struct" name="VkSemaphoreGetZirconHandleInfoFUCHSIA"> |
| <member values="VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkSemaphore</type> <name>semaphore</name></member> |
| <member><type>VkExternalSemaphoreHandleTypeFlagBits</type> <name>handleType</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceExternalFenceInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkExternalFenceHandleTypeFlagBits</type> <name>handleType</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceExternalFenceInfoKHR" alias="VkPhysicalDeviceExternalFenceInfo"/> |
| <type category="struct" name="VkExternalFenceProperties" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkExternalFenceHandleTypeFlags</type> <name>exportFromImportedHandleTypes</name></member> |
| <member><type>VkExternalFenceHandleTypeFlags</type> <name>compatibleHandleTypes</name></member> |
| <member optional="true"><type>VkExternalFenceFeatureFlags</type> <name>externalFenceFeatures</name></member> |
| </type> |
| <type category="struct" name="VkExternalFencePropertiesKHR" alias="VkExternalFenceProperties"/> |
| <type category="struct" name="VkExportFenceCreateInfo" structextends="VkFenceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkExternalFenceHandleTypeFlags</type> <name>handleTypes</name></member> |
| </type> |
| <type category="struct" name="VkExportFenceCreateInfoKHR" alias="VkExportFenceCreateInfo"/> |
| <type category="struct" name="VkImportFenceWin32HandleInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member externsync="true"><type>VkFence</type> <name>fence</name></member> |
| <member optional="true"><type>VkFenceImportFlags</type> <name>flags</name></member> |
| <member noautovalidity="true"><type>VkExternalFenceHandleTypeFlagBits</type> <name>handleType</name></member> |
| <member optional="true"><type>HANDLE</type> <name>handle</name></member> |
| <member optional="true"><type>LPCWSTR</type> <name>name</name></member> |
| </type> |
| <type category="struct" name="VkExportFenceWin32HandleInfoKHR" structextends="VkFenceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true">const <type>SECURITY_ATTRIBUTES</type>* <name>pAttributes</name></member> |
| <member><type>DWORD</type> <name>dwAccess</name></member> |
| <member><type>LPCWSTR</type> <name>name</name></member> |
| </type> |
| <type category="struct" name="VkFenceGetWin32HandleInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkFence</type> <name>fence</name></member> |
| <member><type>VkExternalFenceHandleTypeFlagBits</type> <name>handleType</name></member> |
| </type> |
| <type category="struct" name="VkImportFenceFdInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member externsync="true"><type>VkFence</type> <name>fence</name></member> |
| <member optional="true"><type>VkFenceImportFlags</type> <name>flags</name></member> |
| <member><type>VkExternalFenceHandleTypeFlagBits</type> <name>handleType</name></member> |
| <member><type>int</type> <name>fd</name></member> |
| </type> |
| <type category="struct" name="VkFenceGetFdInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkFence</type> <name>fence</name></member> |
| <member><type>VkExternalFenceHandleTypeFlagBits</type> <name>handleType</name></member> |
| </type> |
| <type category="struct" name="VkExportFenceSciSyncInfoNV" structextends="VkFenceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_EXPORT_FENCE_SCI_SYNC_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>NvSciSyncAttrList</type> <name>pAttributes</name></member> |
| </type> |
| <type category="struct" name="VkImportFenceSciSyncInfoNV"> |
| <member values="VK_STRUCTURE_TYPE_IMPORT_FENCE_SCI_SYNC_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member externsync="true"><type>VkFence</type> <name>fence</name></member> |
| <member><type>VkExternalFenceHandleTypeFlagBits</type> <name>handleType</name></member> |
| <member><type>void</type>* <name>handle</name></member> |
| </type> |
| <type category="struct" name="VkFenceGetSciSyncInfoNV"> |
| <member values="VK_STRUCTURE_TYPE_FENCE_GET_SCI_SYNC_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkFence</type> <name>fence</name></member> |
| <member><type>VkExternalFenceHandleTypeFlagBits</type> <name>handleType</name></member> |
| </type> |
| <type category="struct" name="VkExportSemaphoreSciSyncInfoNV" structextends="VkSemaphoreCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_SCI_SYNC_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>NvSciSyncAttrList</type> <name>pAttributes</name></member> |
| </type> |
| <type category="struct" name="VkImportSemaphoreSciSyncInfoNV"> |
| <member values="VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_SCI_SYNC_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member externsync="true"><type>VkSemaphore</type> <name>semaphore</name></member> |
| <member><type>VkExternalSemaphoreHandleTypeFlagBits</type> <name>handleType</name></member> |
| <member><type>void</type>* <name>handle</name></member> |
| </type> |
| <type category="struct" name="VkSemaphoreGetSciSyncInfoNV"> |
| <member values="VK_STRUCTURE_TYPE_SEMAPHORE_GET_SCI_SYNC_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkSemaphore</type> <name>semaphore</name></member> |
| <member><type>VkExternalSemaphoreHandleTypeFlagBits</type> <name>handleType</name></member> |
| </type> |
| <type category="struct" name="VkSciSyncAttributesInfoNV"> |
| <member values="VK_STRUCTURE_TYPE_SCI_SYNC_ATTRIBUTES_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkSciSyncClientTypeNV</type> <name>clientType</name></member> |
| <member><type>VkSciSyncPrimitiveTypeNV</type> <name>primitiveType</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceExternalSciSyncFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SCI_SYNC_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>sciSyncFence</name></member> |
| <member><type>VkBool32</type> <name>sciSyncSemaphore</name></member> |
| <member><type>VkBool32</type> <name>sciSyncImport</name></member> |
| <member><type>VkBool32</type> <name>sciSyncExport</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceExternalSciSync2FeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SCI_SYNC_2_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>sciSyncFence</name></member> |
| <member><type>VkBool32</type> <name>sciSyncSemaphore2</name></member> |
| <member><type>VkBool32</type> <name>sciSyncImport</name></member> |
| <member><type>VkBool32</type> <name>sciSyncExport</name></member> |
| </type> |
| <type category="struct" name="VkSemaphoreSciSyncPoolCreateInfoNV"> |
| <member values="VK_STRUCTURE_TYPE_SEMAPHORE_SCI_SYNC_POOL_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>NvSciSyncObj</type> <name>handle</name></member> |
| </type> |
| <type category="struct" name="VkSemaphoreSciSyncCreateInfoNV" structextends="VkSemaphoreCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_SEMAPHORE_SCI_SYNC_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkSemaphoreSciSyncPoolNV</type> <name>semaphorePool</name></member> |
| <member>const <type>NvSciSyncFence</type>* <name>pFence</name></member> |
| </type> |
| <type category="struct" name="VkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV" allowduplicate="true" structextends="VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_SEMAPHORE_SCI_SYNC_POOL_RESERVATION_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>semaphoreSciSyncPoolRequestCount</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMultiviewFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>multiview</name><comment>Multiple views in a render pass</comment></member> |
| <member><type>VkBool32</type> <name>multiviewGeometryShader</name><comment>Multiple views in a render pass w/ geometry shader</comment></member> |
| <member><type>VkBool32</type> <name>multiviewTessellationShader</name><comment>Multiple views in a render pass w/ tessellation shader</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMultiviewFeaturesKHR" alias="VkPhysicalDeviceMultiviewFeatures"/> |
| <type category="struct" name="VkPhysicalDeviceMultiviewProperties" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxMultiviewViewCount</name><comment>max number of views in a subpass</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxMultiviewInstanceIndex</name><comment>max instance index for a draw in a multiview subpass</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMultiviewPropertiesKHR" alias="VkPhysicalDeviceMultiviewProperties"/> |
| <type category="struct" name="VkRenderPassMultiviewCreateInfo" structextends="VkRenderPassCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>subpassCount</name></member> |
| <member len="subpassCount">const <type>uint32_t</type>* <name>pViewMasks</name></member> |
| <member optional="true"><type>uint32_t</type> <name>dependencyCount</name></member> |
| <member len="dependencyCount">const <type>int32_t</type>* <name>pViewOffsets</name></member> |
| <member optional="true"><type>uint32_t</type> <name>correlationMaskCount</name></member> |
| <member len="correlationMaskCount">const <type>uint32_t</type>* <name>pCorrelationMasks</name></member> |
| </type> |
| <type category="struct" name="VkRenderPassMultiviewCreateInfoKHR" alias="VkRenderPassMultiviewCreateInfo"/> |
| <type category="struct" name="VkSurfaceCapabilities2EXT" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>minImageCount</name><comment>Supported minimum number of images for the surface</comment></member> |
| <member><type>uint32_t</type> <name>maxImageCount</name><comment>Supported maximum number of images for the surface, 0 for unlimited</comment></member> |
| <member><type>VkExtent2D</type> <name>currentExtent</name><comment>Current image width and height for the surface, (0, 0) if undefined</comment></member> |
| <member><type>VkExtent2D</type> <name>minImageExtent</name><comment>Supported minimum image width and height for the surface</comment></member> |
| <member><type>VkExtent2D</type> <name>maxImageExtent</name><comment>Supported maximum image width and height for the surface</comment></member> |
| <member><type>uint32_t</type> <name>maxImageArrayLayers</name><comment>Supported maximum number of image layers for the surface</comment></member> |
| <member><type>VkSurfaceTransformFlagsKHR</type> <name>supportedTransforms</name><comment>1 or more bits representing the transforms supported</comment></member> |
| <member><type>VkSurfaceTransformFlagBitsKHR</type> <name>currentTransform</name><comment>The surface's current transform relative to the device's natural orientation</comment></member> |
| <member><type>VkCompositeAlphaFlagsKHR</type> <name>supportedCompositeAlpha</name><comment>1 or more bits representing the alpha compositing modes supported</comment></member> |
| <member><type>VkImageUsageFlags</type> <name>supportedUsageFlags</name><comment>Supported image usage flags for the surface</comment></member> |
| <member optional="true"><type>VkSurfaceCounterFlagsEXT</type> <name>supportedSurfaceCounters</name></member> |
| </type> |
| <type category="struct" name="VkDisplayPowerInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDisplayPowerStateEXT</type> <name>powerState</name></member> |
| </type> |
| <type category="struct" name="VkDeviceEventInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceEventTypeEXT</type> <name>deviceEvent</name></member> |
| </type> |
| <type category="struct" name="VkDisplayEventInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDisplayEventTypeEXT</type> <name>displayEvent</name></member> |
| </type> |
| <type category="struct" name="VkSwapchainCounterCreateInfoEXT" structextends="VkSwapchainCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkSurfaceCounterFlagsEXT</type> <name>surfaceCounters</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceGroupProperties" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>physicalDeviceCount</name></member> |
| <member len="physicalDeviceCount"><type>VkPhysicalDevice</type> <name>physicalDevices</name>[<enum>VK_MAX_DEVICE_GROUP_SIZE</enum>]</member> |
| <member><type>VkBool32</type> <name>subsetAllocation</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceGroupPropertiesKHR" alias="VkPhysicalDeviceGroupProperties"/> |
| <type category="struct" name="VkMemoryAllocateFlagsInfo" structextends="VkMemoryAllocateInfo"> |
| <member values="VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkMemoryAllocateFlags</type> <name>flags</name></member> |
| <member><type>uint32_t</type> <name>deviceMask</name></member> |
| </type> |
| <type category="struct" name="VkMemoryAllocateFlagsInfoKHR" alias="VkMemoryAllocateFlagsInfo"/> |
| <type category="struct" name="VkBindBufferMemoryInfo"> |
| <member values="VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBuffer</type> <name>buffer</name></member> |
| <member><type>VkDeviceMemory</type> <name>memory</name></member> |
| <member><type>VkDeviceSize</type> <name>memoryOffset</name></member> |
| </type> |
| <type category="struct" name="VkBindBufferMemoryInfoKHR" alias="VkBindBufferMemoryInfo"/> |
| <type category="struct" name="VkBindBufferMemoryDeviceGroupInfo" structextends="VkBindBufferMemoryInfo"> |
| <member values="VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>deviceIndexCount</name></member> |
| <member len="deviceIndexCount">const <type>uint32_t</type>* <name>pDeviceIndices</name></member> |
| </type> |
| <type category="struct" name="VkBindBufferMemoryDeviceGroupInfoKHR" alias="VkBindBufferMemoryDeviceGroupInfo"/> |
| <type category="struct" name="VkBindImageMemoryInfo"> |
| <member values="VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkImage</type> <name>image</name></member> |
| <member noautovalidity="true"><type>VkDeviceMemory</type> <name>memory</name></member> |
| <member><type>VkDeviceSize</type> <name>memoryOffset</name></member> |
| </type> |
| <type category="struct" name="VkBindImageMemoryInfoKHR" alias="VkBindImageMemoryInfo"/> |
| <type category="struct" name="VkBindImageMemoryDeviceGroupInfo" structextends="VkBindImageMemoryInfo"> |
| <member values="VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>deviceIndexCount</name></member> |
| <member len="deviceIndexCount">const <type>uint32_t</type>* <name>pDeviceIndices</name></member> |
| <member optional="true"><type>uint32_t</type> <name>splitInstanceBindRegionCount</name></member> |
| <member len="splitInstanceBindRegionCount">const <type>VkRect2D</type>* <name>pSplitInstanceBindRegions</name></member> |
| </type> |
| <type category="struct" name="VkBindImageMemoryDeviceGroupInfoKHR" alias="VkBindImageMemoryDeviceGroupInfo"/> |
| <type category="struct" name="VkDeviceGroupRenderPassBeginInfo" structextends="VkRenderPassBeginInfo,VkRenderingInfo"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>deviceMask</name></member> |
| <member optional="true"><type>uint32_t</type> <name>deviceRenderAreaCount</name></member> |
| <member len="deviceRenderAreaCount">const <type>VkRect2D</type>* <name>pDeviceRenderAreas</name></member> |
| </type> |
| <type category="struct" name="VkDeviceGroupRenderPassBeginInfoKHR" alias="VkDeviceGroupRenderPassBeginInfo"/> |
| <type category="struct" name="VkDeviceGroupCommandBufferBeginInfo" structextends="VkCommandBufferBeginInfo"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>deviceMask</name></member> |
| </type> |
| <type category="struct" name="VkDeviceGroupCommandBufferBeginInfoKHR" alias="VkDeviceGroupCommandBufferBeginInfo"/> |
| <type category="struct" name="VkDeviceGroupSubmitInfo" structextends="VkSubmitInfo"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>waitSemaphoreCount</name></member> |
| <member len="waitSemaphoreCount">const <type>uint32_t</type>* <name>pWaitSemaphoreDeviceIndices</name></member> |
| <member optional="true"><type>uint32_t</type> <name>commandBufferCount</name></member> |
| <member len="commandBufferCount">const <type>uint32_t</type>* <name>pCommandBufferDeviceMasks</name></member> |
| <member optional="true"><type>uint32_t</type> <name>signalSemaphoreCount</name></member> |
| <member len="signalSemaphoreCount">const <type>uint32_t</type>* <name>pSignalSemaphoreDeviceIndices</name></member> |
| </type> |
| <type category="struct" name="VkDeviceGroupSubmitInfoKHR" alias="VkDeviceGroupSubmitInfo"/> |
| <type category="struct" name="VkDeviceGroupBindSparseInfo" structextends="VkBindSparseInfo"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>resourceDeviceIndex</name></member> |
| <member><type>uint32_t</type> <name>memoryDeviceIndex</name></member> |
| </type> |
| <type category="struct" name="VkDeviceGroupBindSparseInfoKHR" alias="VkDeviceGroupBindSparseInfo"/> |
| <type category="struct" name="VkDeviceGroupPresentCapabilitiesKHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>presentMask</name>[<enum>VK_MAX_DEVICE_GROUP_SIZE</enum>]</member> |
| <member><type>VkDeviceGroupPresentModeFlagsKHR</type> <name>modes</name></member> |
| </type> |
| <type category="struct" name="VkImageSwapchainCreateInfoKHR" structextends="VkImageCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkSwapchainKHR</type> <name>swapchain</name></member> |
| </type> |
| <type category="struct" name="VkBindImageMemorySwapchainInfoKHR" structextends="VkBindImageMemoryInfo"> |
| <member values="VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member externsync="true"><type>VkSwapchainKHR</type> <name>swapchain</name></member> |
| <member><type>uint32_t</type> <name>imageIndex</name></member> |
| </type> |
| <type category="struct" name="VkAcquireNextImageInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member externsync="true"><type>VkSwapchainKHR</type> <name>swapchain</name></member> |
| <member><type>uint64_t</type> <name>timeout</name></member> |
| <member optional="true" externsync="true"><type>VkSemaphore</type> <name>semaphore</name></member> |
| <member optional="true" externsync="true"><type>VkFence</type> <name>fence</name></member> |
| <member><type>uint32_t</type> <name>deviceMask</name></member> |
| </type> |
| <type category="struct" name="VkDeviceGroupPresentInfoKHR" structextends="VkPresentInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>swapchainCount</name></member> |
| <member len="swapchainCount">const <type>uint32_t</type>* <name>pDeviceMasks</name></member> |
| <member><type>VkDeviceGroupPresentModeFlagBitsKHR</type> <name>mode</name></member> |
| </type> |
| <type category="struct" name="VkDeviceGroupDeviceCreateInfo" structextends="VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>physicalDeviceCount</name></member> |
| <member len="physicalDeviceCount">const <type>VkPhysicalDevice</type>* <name>pPhysicalDevices</name></member> |
| </type> |
| <type category="struct" name="VkDeviceGroupDeviceCreateInfoKHR" alias="VkDeviceGroupDeviceCreateInfo"/> |
| <type category="struct" name="VkDeviceGroupSwapchainCreateInfoKHR" structextends="VkSwapchainCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceGroupPresentModeFlagsKHR</type> <name>modes</name></member> |
| </type> |
| <type category="struct" name="VkDescriptorUpdateTemplateEntry"> |
| <member><type>uint32_t</type> <name>dstBinding</name><comment>Binding within the destination descriptor set to write</comment></member> |
| <member><type>uint32_t</type> <name>dstArrayElement</name><comment>Array element within the destination binding to write</comment></member> |
| <member><type>uint32_t</type> <name>descriptorCount</name><comment>Number of descriptors to write</comment></member> |
| <member><type>VkDescriptorType</type> <name>descriptorType</name><comment>Descriptor type to write</comment></member> |
| <member><type>size_t</type> <name>offset</name><comment>Offset into pData where the descriptors to update are stored</comment></member> |
| <member><type>size_t</type> <name>stride</name><comment>Stride between two descriptors in pData when writing more than one descriptor</comment></member> |
| </type> |
| <type category="struct" name="VkDescriptorUpdateTemplateEntryKHR" alias="VkDescriptorUpdateTemplateEntry"/> |
| <type category="struct" name="VkDescriptorUpdateTemplateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkDescriptorUpdateTemplateCreateFlags</type> <name>flags</name></member> |
| <member><type>uint32_t</type> <name>descriptorUpdateEntryCount</name><comment>Number of descriptor update entries to use for the update template</comment></member> |
| <member len="descriptorUpdateEntryCount">const <type>VkDescriptorUpdateTemplateEntry</type>* <name>pDescriptorUpdateEntries</name><comment>Descriptor update entries for the template</comment></member> |
| <member><type>VkDescriptorUpdateTemplateType</type> <name>templateType</name></member> |
| <member noautovalidity="true"><type>VkDescriptorSetLayout</type> <name>descriptorSetLayout</name></member> |
| <member noautovalidity="true"><type>VkPipelineBindPoint</type> <name>pipelineBindPoint</name></member> |
| <member noautovalidity="true"><type>VkPipelineLayout</type> <name>pipelineLayout</name><comment>If used for push descriptors, this is the only allowed layout</comment></member> |
| <member noautovalidity="true"><type>uint32_t</type> <name>set</name></member> |
| </type> |
| <type category="struct" name="VkDescriptorUpdateTemplateCreateInfoKHR" alias="VkDescriptorUpdateTemplateCreateInfo"/> |
| <type category="struct" name="VkXYColorEXT" comment="Chromaticity coordinate"> |
| <member><type>float</type> <name>x</name></member> |
| <member><type>float</type> <name>y</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevicePresentIdFeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>presentId</name><comment>Present ID in VkPresentInfoKHR</comment></member> |
| </type> |
| <type category="struct" name="VkPresentIdKHR" structextends="VkPresentInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_PRESENT_ID_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>swapchainCount</name><comment>Copy of VkPresentInfoKHR::swapchainCount</comment></member> |
| <member len="swapchainCount" optional="true">const <type>uint64_t</type>* <name>pPresentIds</name><comment>Present ID values for each swapchain</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevicePresentWaitFeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>presentWait</name><comment>vkWaitForPresentKHR is supported</comment></member> |
| </type> |
| <type category="struct" name="VkHdrMetadataEXT"> |
| <comment>Display primary in chromaticity coordinates</comment> |
| <member values="VK_STRUCTURE_TYPE_HDR_METADATA_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <comment> From SMPTE 2086</comment> |
| <member noautovalidity="true"><type>VkXYColorEXT</type> <name>displayPrimaryRed</name><comment>Display primary's Red</comment></member> |
| <member noautovalidity="true"><type>VkXYColorEXT</type> <name>displayPrimaryGreen</name><comment>Display primary's Green</comment></member> |
| <member noautovalidity="true"><type>VkXYColorEXT</type> <name>displayPrimaryBlue</name><comment>Display primary's Blue</comment></member> |
| <member noautovalidity="true"><type>VkXYColorEXT</type> <name>whitePoint</name><comment>Display primary's Blue</comment></member> |
| <member noautovalidity="true"><type>float</type> <name>maxLuminance</name><comment>Display maximum luminance</comment></member> |
| <member noautovalidity="true"><type>float</type> <name>minLuminance</name><comment>Display minimum luminance</comment></member> |
| <comment> From CTA 861.3</comment> |
| <member noautovalidity="true"><type>float</type> <name>maxContentLightLevel</name><comment>Content maximum luminance</comment></member> |
| <member noautovalidity="true"><type>float</type> <name>maxFrameAverageLightLevel</name></member> |
| </type> |
| <type category="struct" name="VkHdrVividDynamicMetadataHUAWEI" structextends="VkHdrMetadataEXT"> |
| <member values="VK_STRUCTURE_TYPE_HDR_VIVID_DYNAMIC_METADATA_HUAWEI"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>size_t</type> <name>dynamicMetadataSize</name><comment>Specified in bytes</comment></member> |
| <member len="dynamicMetadataSize">const <type>void</type>* <name>pDynamicMetadata</name><comment>Binary code of size dynamicMetadataSize</comment></member> |
| </type> |
| <type category="struct" name="VkDisplayNativeHdrSurfaceCapabilitiesAMD" returnedonly="true" structextends="VkSurfaceCapabilities2KHR"> |
| <member values="VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>localDimmingSupport</name></member> |
| </type> |
| <type category="struct" name="VkSwapchainDisplayNativeHdrCreateInfoAMD" structextends="VkSwapchainCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>localDimmingEnable</name></member> |
| </type> |
| <type category="struct" name="VkRefreshCycleDurationGOOGLE" returnedonly="true"> |
| <member><type>uint64_t</type> <name>refreshDuration</name><comment>Number of nanoseconds from the start of one refresh cycle to the next</comment></member> |
| </type> |
| <type category="struct" name="VkPastPresentationTimingGOOGLE" returnedonly="true"> |
| <member><type>uint32_t</type> <name>presentID</name><comment>Application-provided identifier, previously given to vkQueuePresentKHR</comment></member> |
| <member><type>uint64_t</type> <name>desiredPresentTime</name><comment>Earliest time an image should have been presented, previously given to vkQueuePresentKHR</comment></member> |
| <member><type>uint64_t</type> <name>actualPresentTime</name><comment>Time the image was actually displayed</comment></member> |
| <member><type>uint64_t</type> <name>earliestPresentTime</name><comment>Earliest time the image could have been displayed</comment></member> |
| <member><type>uint64_t</type> <name>presentMargin</name><comment>How early vkQueuePresentKHR was processed vs. how soon it needed to be and make earliestPresentTime</comment></member> |
| </type> |
| <type category="struct" name="VkPresentTimesInfoGOOGLE" structextends="VkPresentInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>swapchainCount</name><comment>Copy of VkPresentInfoKHR::swapchainCount</comment></member> |
| <member len="swapchainCount" optional="true">const <type>VkPresentTimeGOOGLE</type>* <name>pTimes</name><comment>The earliest times to present images</comment></member> |
| </type> |
| <type category="struct" name="VkPresentTimeGOOGLE"> |
| <member><type>uint32_t</type> <name>presentID</name><comment>Application-provided identifier</comment></member> |
| <member><type>uint64_t</type> <name>desiredPresentTime</name><comment>Earliest time an image should be presented</comment></member> |
| </type> |
| <type category="struct" name="VkIOSSurfaceCreateInfoMVK"> |
| <member values="VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkIOSSurfaceCreateFlagsMVK</type> <name>flags</name></member> |
| <member noautovalidity="true">const <type>void</type>* <name>pView</name></member> |
| </type> |
| <type category="struct" name="VkMacOSSurfaceCreateInfoMVK"> |
| <member values="VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkMacOSSurfaceCreateFlagsMVK</type> <name>flags</name></member> |
| <member noautovalidity="true">const <type>void</type>* <name>pView</name></member> |
| </type> |
| <type category="struct" name="VkMetalSurfaceCreateInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkMetalSurfaceCreateFlagsEXT</type> <name>flags</name></member> |
| <member noautovalidity="true">const <type>CAMetalLayer</type>* <name>pLayer</name></member> |
| </type> |
| <type category="struct" name="VkViewportWScalingNV"> |
| <member><type>float</type> <name>xcoeff</name></member> |
| <member><type>float</type> <name>ycoeff</name></member> |
| </type> |
| <type category="struct" name="VkPipelineViewportWScalingStateCreateInfoNV" structextends="VkPipelineViewportStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>viewportWScalingEnable</name></member> |
| <member><type>uint32_t</type> <name>viewportCount</name></member> |
| <member noautovalidity="true" optional="true" len="viewportCount">const <type>VkViewportWScalingNV</type>* <name>pViewportWScalings</name></member> |
| </type> |
| <type category="struct" name="VkViewportSwizzleNV"> |
| <member><type>VkViewportCoordinateSwizzleNV</type> <name>x</name></member> |
| <member><type>VkViewportCoordinateSwizzleNV</type> <name>y</name></member> |
| <member><type>VkViewportCoordinateSwizzleNV</type> <name>z</name></member> |
| <member><type>VkViewportCoordinateSwizzleNV</type> <name>w</name></member> |
| </type> |
| <type category="struct" name="VkPipelineViewportSwizzleStateCreateInfoNV" structextends="VkPipelineViewportStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPipelineViewportSwizzleStateCreateFlagsNV</type> <name>flags</name></member> |
| <member><type>uint32_t</type> <name>viewportCount</name></member> |
| <member len="viewportCount">const <type>VkViewportSwizzleNV</type>* <name>pViewportSwizzles</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceDiscardRectanglePropertiesEXT" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDiscardRectangles</name><comment>max number of active discard rectangles</comment></member> |
| </type> |
| <type category="struct" name="VkPipelineDiscardRectangleStateCreateInfoEXT" structextends="VkGraphicsPipelineCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPipelineDiscardRectangleStateCreateFlagsEXT</type> <name>flags</name></member> |
| <member><type>VkDiscardRectangleModeEXT</type> <name>discardRectangleMode</name></member> |
| <member optional="true"><type>uint32_t</type> <name>discardRectangleCount</name></member> |
| <member noautovalidity="true" len="discardRectangleCount">const <type>VkRect2D</type>* <name>pDiscardRectangles</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>perViewPositionAllComponents</name></member> |
| </type> |
| <type category="struct" name="VkInputAttachmentAspectReference"> |
| <member><type>uint32_t</type> <name>subpass</name></member> |
| <member><type>uint32_t</type> <name>inputAttachmentIndex</name></member> |
| <member><type>VkImageAspectFlags</type> <name>aspectMask</name></member> |
| </type> |
| <type category="struct" name="VkInputAttachmentAspectReferenceKHR" alias="VkInputAttachmentAspectReference"/> |
| <type category="struct" name="VkRenderPassInputAttachmentAspectCreateInfo" structextends="VkRenderPassCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>aspectReferenceCount</name></member> |
| <member len="aspectReferenceCount">const <type>VkInputAttachmentAspectReference</type>* <name>pAspectReferences</name></member> |
| </type> |
| <type category="struct" name="VkRenderPassInputAttachmentAspectCreateInfoKHR" alias="VkRenderPassInputAttachmentAspectCreateInfo"/> |
| <type category="struct" name="VkPhysicalDeviceSurfaceInfo2KHR"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member noautovalidity="true" optional="true"><type>VkSurfaceKHR</type> <name>surface</name></member> |
| </type> |
| <type category="struct" name="VkSurfaceCapabilities2KHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkSurfaceCapabilitiesKHR</type> <name>surfaceCapabilities</name></member> |
| </type> |
| <type category="struct" name="VkSurfaceFormat2KHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkSurfaceFormatKHR</type> <name>surfaceFormat</name></member> |
| </type> |
| <type category="struct" name="VkDisplayProperties2KHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkDisplayPropertiesKHR</type> <name>displayProperties</name></member> |
| </type> |
| <type category="struct" name="VkDisplayPlaneProperties2KHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkDisplayPlanePropertiesKHR</type> <name>displayPlaneProperties</name></member> |
| </type> |
| <type category="struct" name="VkDisplayModeProperties2KHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkDisplayModePropertiesKHR</type> <name>displayModeProperties</name></member> |
| </type> |
| <type category="struct" name="VkDisplayPlaneInfo2KHR"> |
| <member values="VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member externsync="true"><type>VkDisplayModeKHR</type> <name>mode</name></member> |
| <member><type>uint32_t</type> <name>planeIndex</name></member> |
| </type> |
| <type category="struct" name="VkDisplayPlaneCapabilities2KHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkDisplayPlaneCapabilitiesKHR</type> <name>capabilities</name></member> |
| </type> |
| <type category="struct" name="VkSharedPresentSurfaceCapabilitiesKHR" returnedonly="true" structextends="VkSurfaceCapabilities2KHR"> |
| <member values="VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkImageUsageFlags</type> <name>sharedPresentSupportedUsageFlags</name><comment>Supported image usage flags if swapchain created using a shared present mode</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevice16BitStorageFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>storageBuffer16BitAccess</name><comment>16-bit integer/floating-point variables supported in BufferBlock</comment></member> |
| <member><type>VkBool32</type> <name>uniformAndStorageBuffer16BitAccess</name><comment>16-bit integer/floating-point variables supported in BufferBlock and Block</comment></member> |
| <member><type>VkBool32</type> <name>storagePushConstant16</name><comment>16-bit integer/floating-point variables supported in PushConstant</comment></member> |
| <member><type>VkBool32</type> <name>storageInputOutput16</name><comment>16-bit integer/floating-point variables supported in shader inputs and outputs</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevice16BitStorageFeaturesKHR" alias="VkPhysicalDevice16BitStorageFeatures"/> |
| <type category="struct" name="VkPhysicalDeviceSubgroupProperties" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max,pot" noautovalidity="true"><type>uint32_t</type> <name>subgroupSize</name><comment>The size of a subgroup for this queue.</comment></member> |
| <member limittype="bitmask" noautovalidity="true"><type>VkShaderStageFlags</type> <name>supportedStages</name><comment>Bitfield of what shader stages support subgroup operations</comment></member> |
| <member limittype="bitmask" noautovalidity="true"><type>VkSubgroupFeatureFlags</type> <name>supportedOperations</name><comment>Bitfield of what subgroup operations are supported.</comment></member> |
| <member limittype="bitmask" noautovalidity="true"><type>VkBool32</type> <name>quadOperationsInAllStages</name><comment>Flag to specify whether quad operations are available in all stages.</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member noautovalidity="true"><type>VkBool32</type> <name>shaderSubgroupExtendedTypes</name><comment>Flag to specify whether subgroup operations with extended types are supported</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR" alias="VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures"/> |
| <type category="struct" name="VkBufferMemoryRequirementsInfo2"> |
| <member values="VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBuffer</type> <name>buffer</name></member> |
| </type> |
| <type category="struct" name="VkBufferMemoryRequirementsInfo2KHR" alias="VkBufferMemoryRequirementsInfo2"/> |
| <type category="struct" name="VkDeviceBufferMemoryRequirements"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member>const <type>VkBufferCreateInfo</type>* <name>pCreateInfo</name></member> |
| </type> |
| <type category="struct" name="VkDeviceBufferMemoryRequirementsKHR" alias="VkDeviceBufferMemoryRequirements"/> |
| <type category="struct" name="VkImageMemoryRequirementsInfo2"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkImage</type> <name>image</name></member> |
| </type> |
| <type category="struct" name="VkImageMemoryRequirementsInfo2KHR" alias="VkImageMemoryRequirementsInfo2"/> |
| <type category="struct" name="VkImageSparseMemoryRequirementsInfo2"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkImage</type> <name>image</name></member> |
| </type> |
| <type category="struct" name="VkImageSparseMemoryRequirementsInfo2KHR" alias="VkImageSparseMemoryRequirementsInfo2"/> |
| <type category="struct" name="VkDeviceImageMemoryRequirements"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member>const <type>VkImageCreateInfo</type>* <name>pCreateInfo</name></member> |
| <member optional="true"><type>VkImageAspectFlagBits</type> <name>planeAspect</name></member> |
| </type> |
| <type category="struct" name="VkDeviceImageMemoryRequirementsKHR" alias="VkDeviceImageMemoryRequirements"/> |
| <type category="struct" name="VkMemoryRequirements2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkMemoryRequirements</type> <name>memoryRequirements</name></member> |
| </type> |
| <type category="struct" name="VkMemoryRequirements2KHR" alias="VkMemoryRequirements2"/> |
| <type category="struct" name="VkSparseImageMemoryRequirements2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkSparseImageMemoryRequirements</type> <name>memoryRequirements</name></member> |
| </type> |
| <type category="struct" name="VkSparseImageMemoryRequirements2KHR" alias="VkSparseImageMemoryRequirements2"/> |
| <type category="struct" name="VkPhysicalDevicePointClippingProperties" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="exact"><type>VkPointClippingBehavior</type> <name>pointClippingBehavior</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevicePointClippingPropertiesKHR" alias="VkPhysicalDevicePointClippingProperties"/> |
| <type category="struct" name="VkMemoryDedicatedRequirements" returnedonly="true" structextends="VkMemoryRequirements2"> |
| <member values="VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>prefersDedicatedAllocation</name></member> |
| <member><type>VkBool32</type> <name>requiresDedicatedAllocation</name></member> |
| </type> |
| <type category="struct" name="VkMemoryDedicatedRequirementsKHR" alias="VkMemoryDedicatedRequirements"/> |
| <type category="struct" name="VkMemoryDedicatedAllocateInfo" structextends="VkMemoryAllocateInfo"> |
| <member values="VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkImage</type> <name>image</name><comment>Image that this allocation will be bound to</comment></member> |
| <member optional="true"><type>VkBuffer</type> <name>buffer</name><comment>Buffer that this allocation will be bound to</comment></member> |
| </type> |
| <type category="struct" name="VkMemoryDedicatedAllocateInfoKHR" alias="VkMemoryDedicatedAllocateInfo"/> |
| <type category="struct" name="VkImageViewUsageCreateInfo" structextends="VkImageViewCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkImageUsageFlags</type> <name>usage</name></member> |
| </type> |
| <type category="struct" name="VkImageViewSlicedCreateInfoEXT" structextends="VkImageViewCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_VIEW_SLICED_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>sliceOffset</name></member> |
| <member><type>uint32_t</type> <name>sliceCount</name></member> |
| </type> |
| <type category="struct" name="VkImageViewUsageCreateInfoKHR" alias="VkImageViewUsageCreateInfo"/> |
| <type category="struct" name="VkPipelineTessellationDomainOriginStateCreateInfo" structextends="VkPipelineTessellationStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkTessellationDomainOrigin</type> <name>domainOrigin</name></member> |
| </type> |
| <type category="struct" name="VkPipelineTessellationDomainOriginStateCreateInfoKHR" alias="VkPipelineTessellationDomainOriginStateCreateInfo"/> |
| <type category="struct" name="VkSamplerYcbcrConversionInfo" structextends="VkSamplerCreateInfo,VkImageViewCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkSamplerYcbcrConversion</type> <name>conversion</name></member> |
| </type> |
| <type category="struct" name="VkSamplerYcbcrConversionInfoKHR" alias="VkSamplerYcbcrConversionInfo"/> |
| <type category="struct" name="VkSamplerYcbcrConversionCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkFormat</type> <name>format</name></member> |
| <member><type>VkSamplerYcbcrModelConversion</type> <name>ycbcrModel</name></member> |
| <member><type>VkSamplerYcbcrRange</type> <name>ycbcrRange</name></member> |
| <member><type>VkComponentMapping</type> <name>components</name></member> |
| <member><type>VkChromaLocation</type> <name>xChromaOffset</name></member> |
| <member><type>VkChromaLocation</type> <name>yChromaOffset</name></member> |
| <member><type>VkFilter</type> <name>chromaFilter</name></member> |
| <member><type>VkBool32</type> <name>forceExplicitReconstruction</name></member> |
| </type> |
| <type category="struct" name="VkSamplerYcbcrConversionCreateInfoKHR" alias="VkSamplerYcbcrConversionCreateInfo"/> |
| <type category="struct" name="VkBindImagePlaneMemoryInfo" structextends="VkBindImageMemoryInfo"> |
| <member values="VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkImageAspectFlagBits</type> <name>planeAspect</name></member> |
| </type> |
| <type category="struct" name="VkBindImagePlaneMemoryInfoKHR" alias="VkBindImagePlaneMemoryInfo"/> |
| <type category="struct" name="VkImagePlaneMemoryRequirementsInfo" structextends="VkImageMemoryRequirementsInfo2"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkImageAspectFlagBits</type> <name>planeAspect</name></member> |
| </type> |
| <type category="struct" name="VkImagePlaneMemoryRequirementsInfoKHR" alias="VkImagePlaneMemoryRequirementsInfo"/> |
| <type category="struct" name="VkPhysicalDeviceSamplerYcbcrConversionFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>samplerYcbcrConversion</name><comment>Sampler color conversion supported</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR" alias="VkPhysicalDeviceSamplerYcbcrConversionFeatures"/> |
| <type category="struct" name="VkSamplerYcbcrConversionImageFormatProperties" returnedonly="true" structextends="VkImageFormatProperties2"> |
| <member values="VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>combinedImageSamplerDescriptorCount</name></member> |
| </type> |
| <type category="struct" name="VkSamplerYcbcrConversionImageFormatPropertiesKHR" alias="VkSamplerYcbcrConversionImageFormatProperties"/> |
| <type category="struct" name="VkTextureLODGatherFormatPropertiesAMD" returnedonly="true" structextends="VkImageFormatProperties2"> |
| <member values="VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>supportsTextureGatherLODBiasAMD</name></member> |
| </type> |
| <type category="struct" name="VkConditionalRenderingBeginInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBuffer</type> <name>buffer</name></member> |
| <member><type>VkDeviceSize</type> <name>offset</name></member> |
| <member optional="true"><type>VkConditionalRenderingFlagsEXT</type> <name>flags</name></member> |
| </type> |
| <type category="struct" name="VkProtectedSubmitInfo" structextends="VkSubmitInfo"> |
| <member values="VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>protectedSubmit</name><comment>Submit protected command buffers</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceProtectedMemoryFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>protectedMemory</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceProtectedMemoryProperties" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="exact"><type>VkBool32</type> <name>protectedNoFault</name></member> |
| </type> |
| <type category="struct" name="VkDeviceQueueInfo2"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkDeviceQueueCreateFlags</type> <name>flags</name></member> |
| <member><type>uint32_t</type> <name>queueFamilyIndex</name></member> |
| <member><type>uint32_t</type> <name>queueIndex</name></member> |
| </type> |
| <type category="struct" name="VkPipelineCoverageToColorStateCreateInfoNV" structextends="VkPipelineMultisampleStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPipelineCoverageToColorStateCreateFlagsNV</type> <name>flags</name></member> |
| <member><type>VkBool32</type> <name>coverageToColorEnable</name></member> |
| <member optional="true"><type>uint32_t</type> <name>coverageToColorLocation</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceSamplerFilterMinmaxProperties" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>filterMinmaxSingleComponentFormats</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>filterMinmaxImageComponentMapping</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT" alias="VkPhysicalDeviceSamplerFilterMinmaxProperties"/> |
| <type category="struct" name="VkSampleLocationEXT"> |
| <member><type>float</type> <name>x</name></member> |
| <member><type>float</type> <name>y</name></member> |
| </type> |
| <type category="struct" name="VkSampleLocationsInfoEXT" structextends="VkImageMemoryBarrier,VkImageMemoryBarrier2"> |
| <member values="VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member noautovalidity="true"><type>VkSampleCountFlagBits</type> <name>sampleLocationsPerPixel</name></member> |
| <member><type>VkExtent2D</type> <name>sampleLocationGridSize</name></member> |
| <member optional="true"><type>uint32_t</type> <name>sampleLocationsCount</name></member> |
| <member len="sampleLocationsCount">const <type>VkSampleLocationEXT</type>* <name>pSampleLocations</name></member> |
| </type> |
| <type category="struct" name="VkAttachmentSampleLocationsEXT"> |
| <member><type>uint32_t</type> <name>attachmentIndex</name></member> |
| <member><type>VkSampleLocationsInfoEXT</type> <name>sampleLocationsInfo</name></member> |
| </type> |
| <type category="struct" name="VkSubpassSampleLocationsEXT"> |
| <member><type>uint32_t</type> <name>subpassIndex</name></member> |
| <member><type>VkSampleLocationsInfoEXT</type> <name>sampleLocationsInfo</name></member> |
| </type> |
| <type category="struct" name="VkRenderPassSampleLocationsBeginInfoEXT" structextends="VkRenderPassBeginInfo"> |
| <member values="VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>attachmentInitialSampleLocationsCount</name></member> |
| <member len="attachmentInitialSampleLocationsCount">const <type>VkAttachmentSampleLocationsEXT</type>* <name>pAttachmentInitialSampleLocations</name></member> |
| <member optional="true"><type>uint32_t</type> <name>postSubpassSampleLocationsCount</name></member> |
| <member len="postSubpassSampleLocationsCount">const <type>VkSubpassSampleLocationsEXT</type>* <name>pPostSubpassSampleLocations</name></member> |
| </type> |
| <type category="struct" name="VkPipelineSampleLocationsStateCreateInfoEXT" structextends="VkPipelineMultisampleStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>sampleLocationsEnable</name></member> |
| <member><type>VkSampleLocationsInfoEXT</type> <name>sampleLocationsInfo</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceSampleLocationsPropertiesEXT" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask"><type>VkSampleCountFlags</type> <name>sampleLocationSampleCounts</name></member> |
| <member limittype="max"><type>VkExtent2D</type> <name>maxSampleLocationGridSize</name></member> |
| <member limittype="range"><type>float</type> <name>sampleLocationCoordinateRange</name>[2]</member> |
| <member limittype="bits"><type>uint32_t</type> <name>sampleLocationSubPixelBits</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>variableSampleLocations</name></member> |
| </type> |
| <type category="struct" name="VkMultisamplePropertiesEXT" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkExtent2D</type> <name>maxSampleLocationGridSize</name></member> |
| </type> |
| <type category="struct" name="VkSamplerReductionModeCreateInfo" structextends="VkSamplerCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkSamplerReductionMode</type> <name>reductionMode</name></member> |
| </type> |
| <type category="struct" name="VkSamplerReductionModeCreateInfoEXT" alias="VkSamplerReductionModeCreateInfo"/> |
| <type category="struct" name="VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>advancedBlendCoherentOperations</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMultiDrawFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>multiDraw</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>advancedBlendMaxColorAttachments</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>advancedBlendIndependentBlend</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>advancedBlendNonPremultipliedSrcColor</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>advancedBlendNonPremultipliedDstColor</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>advancedBlendCorrelatedOverlap</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>advancedBlendAllOperations</name></member> |
| </type> |
| <type category="struct" name="VkPipelineColorBlendAdvancedStateCreateInfoEXT" structextends="VkPipelineColorBlendStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>srcPremultiplied</name></member> |
| <member><type>VkBool32</type> <name>dstPremultiplied</name></member> |
| <member><type>VkBlendOverlapEXT</type> <name>blendOverlap</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceInlineUniformBlockFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>inlineUniformBlock</name></member> |
| <member><type>VkBool32</type> <name>descriptorBindingInlineUniformBlockUpdateAfterBind</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceInlineUniformBlockFeaturesEXT" alias="VkPhysicalDeviceInlineUniformBlockFeatures"/> |
| <type category="struct" name="VkPhysicalDeviceInlineUniformBlockProperties" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxInlineUniformBlockSize</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageDescriptorInlineUniformBlocks</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetInlineUniformBlocks</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindInlineUniformBlocks</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceInlineUniformBlockPropertiesEXT" alias="VkPhysicalDeviceInlineUniformBlockProperties"/> |
| <type category="struct" name="VkWriteDescriptorSetInlineUniformBlock" structextends="VkWriteDescriptorSet"> |
| <member values="VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>dataSize</name></member> |
| <member len="dataSize">const <type>void</type>* <name>pData</name></member> |
| </type> |
| <type category="struct" name="VkWriteDescriptorSetInlineUniformBlockEXT" alias="VkWriteDescriptorSetInlineUniformBlock"/> |
| <type category="struct" name="VkDescriptorPoolInlineUniformBlockCreateInfo" structextends="VkDescriptorPoolCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>maxInlineUniformBlockBindings</name></member> |
| </type> |
| <type category="struct" name="VkDescriptorPoolInlineUniformBlockCreateInfoEXT" alias="VkDescriptorPoolInlineUniformBlockCreateInfo"/> |
| <type category="struct" name="VkPipelineCoverageModulationStateCreateInfoNV" structextends="VkPipelineMultisampleStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPipelineCoverageModulationStateCreateFlagsNV</type> <name>flags</name></member> |
| <member><type>VkCoverageModulationModeNV</type> <name>coverageModulationMode</name></member> |
| <member><type>VkBool32</type> <name>coverageModulationTableEnable</name></member> |
| <member optional="true"><type>uint32_t</type> <name>coverageModulationTableCount</name></member> |
| <member noautovalidity="true" optional="true" len="coverageModulationTableCount">const <type>float</type>* <name>pCoverageModulationTable</name></member> |
| </type> |
| <type category="struct" name="VkImageFormatListCreateInfo" structextends="VkImageCreateInfo,VkSwapchainCreateInfoKHR,VkPhysicalDeviceImageFormatInfo2"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>viewFormatCount</name></member> |
| <member len="viewFormatCount">const <type>VkFormat</type>* <name>pViewFormats</name></member> |
| </type> |
| <type category="struct" name="VkImageFormatListCreateInfoKHR" alias="VkImageFormatListCreateInfo"/> |
| <type category="struct" name="VkValidationCacheCreateInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkValidationCacheCreateFlagsEXT</type> <name>flags</name></member> |
| <member optional="true"><type>size_t</type> <name>initialDataSize</name></member> |
| <member len="initialDataSize">const <type>void</type>* <name>pInitialData</name></member> |
| </type> |
| <type category="struct" name="VkShaderModuleValidationCacheCreateInfoEXT" structextends="VkShaderModuleCreateInfo,VkPipelineShaderStageCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkValidationCacheEXT</type> <name>validationCache</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMaintenance3Properties" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerSetDescriptors</name></member> |
| <member limittype="max"><type>VkDeviceSize</type> <name>maxMemoryAllocationSize</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMaintenance3PropertiesKHR" alias="VkPhysicalDeviceMaintenance3Properties"/> |
| <type category="struct" name="VkPhysicalDeviceMaintenance4Features" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>maintenance4</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMaintenance4FeaturesKHR" alias="VkPhysicalDeviceMaintenance4Features"/> |
| <type category="struct" name="VkPhysicalDeviceMaintenance4Properties" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>VkDeviceSize</type> <name>maxBufferSize</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMaintenance4PropertiesKHR" alias="VkPhysicalDeviceMaintenance4Properties"/> |
| <type category="struct" name="VkPhysicalDeviceMaintenance5FeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>maintenance5</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMaintenance5PropertiesKHR" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>earlyFragmentMultisampleCoverageAfterSampleCounting</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>earlyFragmentSampleMaskTestBeforeSampleCounting</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>depthStencilSwizzleOneSupport</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>polygonModePointSize</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>nonStrictSinglePixelWideLinesUseParallelogram</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>nonStrictWideLinesUseParallelogram</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMaintenance6FeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_6_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>maintenance6</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMaintenance6PropertiesKHR" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_6_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>blockTexelViewCompatibleMultipleLayers</name></member> |
| <member><type>uint32_t</type> <name>maxCombinedImageSamplerDescriptorCount</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>fragmentShadingRateClampCombinerInputs</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMaintenance7FeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_7_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>maintenance7</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMaintenance7PropertiesKHR" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_7_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>robustFragmentShadingRateAttachmentAccess</name></member> |
| <member><type>VkBool32</type> <name>separateDepthStencilAttachmentAccess</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetTotalUniformBuffersDynamic</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetTotalStorageBuffersDynamic</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetTotalBuffersDynamic</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindTotalUniformBuffersDynamic</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindTotalStorageBuffersDynamic</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindTotalBuffersDynamic</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceLayeredApiPropertiesListKHR" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LAYERED_API_PROPERTIES_LIST_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>layeredApiCount</name></member> |
| <member optional="true" len="layeredApiCount"><type>VkPhysicalDeviceLayeredApiPropertiesKHR</type>* <name>pLayeredApis</name><comment>Output list of layered implementations underneath the physical device</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceLayeredApiPropertiesKHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LAYERED_API_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="noauto"><type>uint32_t</type> <name>vendorID</name></member> |
| <member limittype="noauto"><type>uint32_t</type> <name>deviceID</name></member> |
| <member limittype="noauto"><type>VkPhysicalDeviceLayeredApiKHR</type> <name>layeredAPI</name></member> |
| <member limittype="noauto"><type>char</type> <name>deviceName</name>[<enum>VK_MAX_PHYSICAL_DEVICE_NAME_SIZE</enum>]</member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceLayeredApiVulkanPropertiesKHR" returnedonly="true" structextends="VkPhysicalDeviceLayeredApiPropertiesKHR"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LAYERED_API_VULKAN_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="noauto"><type>VkPhysicalDeviceProperties2</type> <name>properties</name></member> |
| </type> |
| <type category="struct" name="VkRenderingAreaInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_RENDERING_AREA_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>viewMask</name></member> |
| <member optional="true"><type>uint32_t</type> <name>colorAttachmentCount</name></member> |
| <member noautovalidity="true" len="colorAttachmentCount">const <type>VkFormat</type>* <name>pColorAttachmentFormats</name></member> |
| <member noautovalidity="true"><type>VkFormat</type> <name>depthAttachmentFormat</name></member> |
| <member noautovalidity="true"><type>VkFormat</type> <name>stencilAttachmentFormat</name></member> |
| </type> |
| <type category="struct" name="VkDescriptorSetLayoutSupport" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>supported</name></member> |
| </type> |
| <type category="struct" name="VkDescriptorSetLayoutSupportKHR" alias="VkDescriptorSetLayoutSupport"/> |
| <type category="struct" name="VkPhysicalDeviceShaderDrawParametersFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>shaderDrawParameters</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceShaderDrawParameterFeatures" alias="VkPhysicalDeviceShaderDrawParametersFeatures"/> |
| <type category="struct" name="VkPhysicalDeviceShaderFloat16Int8Features" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>shaderFloat16</name><comment>16-bit floats (halfs) in shaders</comment></member> |
| <member><type>VkBool32</type> <name>shaderInt8</name><comment>8-bit integers in shaders</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceShaderFloat16Int8FeaturesKHR" alias="VkPhysicalDeviceShaderFloat16Int8Features"/> |
| <type category="struct" name="VkPhysicalDeviceFloat16Int8FeaturesKHR" alias="VkPhysicalDeviceShaderFloat16Int8Features"/> |
| <type category="struct" name="VkPhysicalDeviceFloatControlsProperties" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="exact"><type>VkShaderFloatControlsIndependence</type> <name>denormBehaviorIndependence</name></member> |
| <member limittype="exact"><type>VkShaderFloatControlsIndependence</type> <name>roundingModeIndependence</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderSignedZeroInfNanPreserveFloat16</name><comment>An implementation can preserve signed zero, nan, inf</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderSignedZeroInfNanPreserveFloat32</name><comment>An implementation can preserve signed zero, nan, inf</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderSignedZeroInfNanPreserveFloat64</name><comment>An implementation can preserve signed zero, nan, inf</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderDenormPreserveFloat16</name><comment>An implementation can preserve denormals</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderDenormPreserveFloat32</name><comment>An implementation can preserve denormals</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderDenormPreserveFloat64</name><comment>An implementation can preserve denormals</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderDenormFlushToZeroFloat16</name><comment>An implementation can flush to zero denormals</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderDenormFlushToZeroFloat32</name><comment>An implementation can flush to zero denormals</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderDenormFlushToZeroFloat64</name><comment>An implementation can flush to zero denormals</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderRoundingModeRTEFloat16</name><comment>An implementation can support RTE</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderRoundingModeRTEFloat32</name><comment>An implementation can support RTE</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderRoundingModeRTEFloat64</name><comment>An implementation can support RTE</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderRoundingModeRTZFloat16</name><comment>An implementation can support RTZ</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderRoundingModeRTZFloat32</name><comment>An implementation can support RTZ</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderRoundingModeRTZFloat64</name><comment>An implementation can support RTZ</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceFloatControlsPropertiesKHR" alias="VkPhysicalDeviceFloatControlsProperties"/> |
| <type category="struct" name="VkPhysicalDeviceHostQueryResetFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>hostQueryReset</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceHostQueryResetFeaturesEXT" alias="VkPhysicalDeviceHostQueryResetFeatures"/> |
| <type category="struct" name="VkNativeBufferUsage2ANDROID"> |
| <member><type>uint64_t</type> <name>consumer</name></member> |
| <member><type>uint64_t</type> <name>producer</name></member> |
| </type> |
| <type category="struct" name="VkNativeBufferANDROID"> |
| <member values="VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member>const <type>void</type>* <name>handle</name></member> |
| <member><type>int</type> <name>stride</name></member> |
| <member><type>int</type> <name>format</name></member> |
| <member><type>int</type> <name>usage</name></member> |
| <member><type>VkNativeBufferUsage2ANDROID</type> <name>usage2</name></member> |
| </type> |
| <type category="struct" name="VkSwapchainImageCreateInfoANDROID"> |
| <member values="VK_STRUCTURE_TYPE_SWAPCHAIN_IMAGE_CREATE_INFO_ANDROID"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkSwapchainImageUsageFlagsANDROID</type> <name>usage</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevicePresentationPropertiesANDROID"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENTATION_PROPERTIES_ANDROID"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>sharedImage</name></member> |
| </type> |
| <type category="struct" name="VkShaderResourceUsageAMD" returnedonly="true"> |
| <member><type>uint32_t</type> <name>numUsedVgprs</name></member> |
| <member><type>uint32_t</type> <name>numUsedSgprs</name></member> |
| <member><type>uint32_t</type> <name>ldsSizePerLocalWorkGroup</name></member> |
| <member><type>size_t</type> <name>ldsUsageSizeInBytes</name></member> |
| <member><type>size_t</type> <name>scratchMemUsageInBytes</name></member> |
| </type> |
| <type category="struct" name="VkShaderStatisticsInfoAMD" returnedonly="true"> |
| <member><type>VkShaderStageFlags</type> <name>shaderStageMask</name></member> |
| <member><type>VkShaderResourceUsageAMD</type> <name>resourceUsage</name></member> |
| <member><type>uint32_t</type> <name>numPhysicalVgprs</name></member> |
| <member><type>uint32_t</type> <name>numPhysicalSgprs</name></member> |
| <member><type>uint32_t</type> <name>numAvailableVgprs</name></member> |
| <member><type>uint32_t</type> <name>numAvailableSgprs</name></member> |
| <member><type>uint32_t</type> <name>computeWorkGroupSize</name>[3]</member> |
| </type> |
| <type category="struct" name="VkDeviceQueueGlobalPriorityCreateInfoKHR" structextends="VkDeviceQueueCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkQueueGlobalPriorityKHR</type> <name>globalPriority</name></member> |
| </type> |
| <type category="struct" name="VkDeviceQueueGlobalPriorityCreateInfoEXT" alias="VkDeviceQueueGlobalPriorityCreateInfoKHR"/> |
| <type category="struct" name="VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>globalPriorityQuery</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT" alias="VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR"/> |
| <type category="struct" name="VkQueueFamilyGlobalPriorityPropertiesKHR" structextends="VkQueueFamilyProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>priorityCount</name></member> |
| <member limittype="bitmask" len="priorityCount"><type>VkQueueGlobalPriorityKHR</type> <name>priorities</name>[<enum>VK_MAX_GLOBAL_PRIORITY_SIZE_KHR</enum>]</member> |
| </type> |
| <type category="struct" name="VkQueueFamilyGlobalPriorityPropertiesEXT" alias="VkQueueFamilyGlobalPriorityPropertiesKHR"/> |
| <type category="struct" name="VkDebugUtilsObjectNameInfoEXT" structextends="VkPipelineShaderStageCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkObjectType</type> <name>objectType</name></member> |
| <member objecttype="objectType"><type>uint64_t</type> <name>objectHandle</name></member> |
| <member optional="true" len="null-terminated">const <type>char</type>* <name>pObjectName</name></member> |
| </type> |
| <type category="struct" name="VkDebugUtilsObjectTagInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkObjectType</type> <name>objectType</name></member> |
| <member objecttype="objectType"><type>uint64_t</type> <name>objectHandle</name></member> |
| <member><type>uint64_t</type> <name>tagName</name></member> |
| <member><type>size_t</type> <name>tagSize</name></member> |
| <member len="tagSize">const <type>void</type>* <name>pTag</name></member> |
| </type> |
| <type category="struct" name="VkDebugUtilsLabelEXT"> |
| <member values="VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member len="null-terminated">const <type>char</type>* <name>pLabelName</name></member> |
| <member><type>float</type> <name>color</name>[4]</member> |
| </type> |
| <type category="struct" name="VkDebugUtilsMessengerCreateInfoEXT" allowduplicate="true" structextends="VkInstanceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkDebugUtilsMessengerCreateFlagsEXT</type> <name>flags</name></member> |
| <member><type>VkDebugUtilsMessageSeverityFlagsEXT</type> <name>messageSeverity</name></member> |
| <member><type>VkDebugUtilsMessageTypeFlagsEXT</type> <name>messageType</name></member> |
| <member><type>PFN_vkDebugUtilsMessengerCallbackEXT</type> <name>pfnUserCallback</name></member> |
| <member optional="true"><type>void</type>* <name>pUserData</name></member> |
| </type> |
| <type category="struct" name="VkDebugUtilsMessengerCallbackDataEXT"> |
| <member values="VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkDebugUtilsMessengerCallbackDataFlagsEXT</type> <name>flags</name></member> |
| <member optional="true" len="null-terminated">const <type>char</type>* <name>pMessageIdName</name></member> |
| <member><type>int32_t</type> <name>messageIdNumber</name></member> |
| <member optional="true" len="null-terminated">const <type>char</type>* <name>pMessage</name></member> |
| <member optional="true"><type>uint32_t</type> <name>queueLabelCount</name></member> |
| <member len="queueLabelCount">const <type>VkDebugUtilsLabelEXT</type>* <name>pQueueLabels</name></member> |
| <member optional="true"><type>uint32_t</type> <name>cmdBufLabelCount</name></member> |
| <member len="cmdBufLabelCount">const <type>VkDebugUtilsLabelEXT</type>* <name>pCmdBufLabels</name></member> |
| <member optional="true"><type>uint32_t</type> <name>objectCount</name></member> |
| <member len="objectCount">const <type>VkDebugUtilsObjectNameInfoEXT</type>* <name>pObjects</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceDeviceMemoryReportFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>deviceMemoryReport</name></member> |
| </type> |
| <type category="struct" name="VkDeviceDeviceMemoryReportCreateInfoEXT" allowduplicate="true" structextends="VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceMemoryReportFlagsEXT</type> <name>flags</name></member> |
| <member><type>PFN_vkDeviceMemoryReportCallbackEXT</type> <name>pfnUserCallback</name></member> |
| <member><type>void</type>* <name>pUserData</name></member> |
| </type> |
| <type category="struct" name="VkDeviceMemoryReportCallbackDataEXT" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceMemoryReportFlagsEXT</type> <name>flags</name></member> |
| <member><type>VkDeviceMemoryReportEventTypeEXT</type> <name>type</name></member> |
| <member><type>uint64_t</type> <name>memoryObjectId</name></member> |
| <member><type>VkDeviceSize</type> <name>size</name></member> |
| <member><type>VkObjectType</type> <name>objectType</name></member> |
| <member objecttype="objectType"><type>uint64_t</type> <name>objectHandle</name></member> |
| <member><type>uint32_t</type> <name>heapIndex</name></member> |
| </type> |
| <type category="struct" name="VkImportMemoryHostPointerInfoEXT" structextends="VkMemoryAllocateInfo"> |
| <member values="VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkExternalMemoryHandleTypeFlagBits</type> <name>handleType</name></member> |
| <member><type>void</type>* <name>pHostPointer</name></member> |
| </type> |
| <type category="struct" name="VkMemoryHostPointerPropertiesEXT" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>memoryTypeBits</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceExternalMemoryHostPropertiesEXT" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="min,pot"><type>VkDeviceSize</type> <name>minImportedHostPointerAlignment</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceConservativeRasterizationPropertiesEXT" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="exact"><type>float</type> <name>primitiveOverestimationSize</name><comment>The size in pixels the primitive is enlarged at each edge during conservative rasterization</comment></member> |
| <member limittype="max"><type>float</type> <name>maxExtraPrimitiveOverestimationSize</name><comment>The maximum additional overestimation the client can specify in the pipeline state</comment></member> |
| <member limittype="min,mul"><type>float</type> <name>extraPrimitiveOverestimationSizeGranularity</name><comment>The granularity of extra overestimation sizes the implementations supports between 0 and maxExtraOverestimationSize</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>primitiveUnderestimation</name><comment>true if the implementation supports conservative rasterization underestimation mode</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>conservativePointAndLineRasterization</name><comment>true if conservative rasterization also applies to points and lines</comment></member> |
| <member limittype="exact"><type>VkBool32</type> <name>degenerateTrianglesRasterized</name><comment>true if degenerate triangles (those with zero area after snap) are rasterized</comment></member> |
| <member limittype="exact"><type>VkBool32</type> <name>degenerateLinesRasterized</name><comment>true if degenerate lines (those with zero length after snap) are rasterized</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>fullyCoveredFragmentShaderInputVariable</name><comment>true if the implementation supports the FullyCoveredEXT SPIR-V builtin fragment shader input variable</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>conservativeRasterizationPostDepthCoverage</name><comment>true if the implementation supports both conservative rasterization and post depth coverage sample coverage mask</comment></member> |
| </type> |
| <type category="struct" name="VkCalibratedTimestampInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkTimeDomainKHR</type> <name>timeDomain</name></member> |
| </type> |
| <type category="struct" name="VkCalibratedTimestampInfoEXT" alias="VkCalibratedTimestampInfoKHR"/> |
| <type category="struct" name="VkPhysicalDeviceShaderCorePropertiesAMD" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="exact"><type>uint32_t</type> <name>shaderEngineCount</name><comment>number of shader engines</comment></member> |
| <member limittype="exact"><type>uint32_t</type> <name>shaderArraysPerEngineCount</name><comment>number of shader arrays</comment></member> |
| <member limittype="exact"><type>uint32_t</type> <name>computeUnitsPerShaderArray</name><comment>number of physical CUs per shader array</comment></member> |
| <member limittype="exact"><type>uint32_t</type> <name>simdPerComputeUnit</name><comment>number of SIMDs per compute unit</comment></member> |
| <member limittype="exact"><type>uint32_t</type> <name>wavefrontsPerSimd</name><comment>number of wavefront slots in each SIMD</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>wavefrontSize</name><comment>maximum number of threads per wavefront</comment></member> |
| <member limittype="exact"><type>uint32_t</type> <name>sgprsPerSimd</name><comment>number of physical SGPRs per SIMD</comment></member> |
| <member limittype="min"><type>uint32_t</type> <name>minSgprAllocation</name><comment>minimum number of SGPRs that can be allocated by a wave</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxSgprAllocation</name><comment>number of available SGPRs</comment></member> |
| <member limittype="min,mul"><type>uint32_t</type> <name>sgprAllocationGranularity</name><comment>SGPRs are allocated in groups of this size</comment></member> |
| <member limittype="exact"><type>uint32_t</type> <name>vgprsPerSimd</name><comment>number of physical VGPRs per SIMD</comment></member> |
| <member limittype="min"><type>uint32_t</type> <name>minVgprAllocation</name><comment>minimum number of VGPRs that can be allocated by a wave</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxVgprAllocation</name><comment>number of available VGPRs</comment></member> |
| <member limittype="min,mul"><type>uint32_t</type> <name>vgprAllocationGranularity</name><comment>VGPRs are allocated in groups of this size</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceShaderCoreProperties2AMD" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name><comment>Pointer to next structure</comment></member> |
| <member limittype="bitmask"><type>VkShaderCorePropertiesFlagsAMD</type> <name>shaderCoreFeatures</name><comment>features supported by the shader core</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>activeComputeUnitCount</name><comment>number of active compute units across all shader engines/arrays</comment></member> |
| </type> |
| <type category="struct" name="VkPipelineRasterizationConservativeStateCreateInfoEXT" structextends="VkPipelineRasterizationStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPipelineRasterizationConservativeStateCreateFlagsEXT</type> <name>flags</name><comment>Reserved</comment></member> |
| <member><type>VkConservativeRasterizationModeEXT</type> <name>conservativeRasterizationMode</name><comment>Conservative rasterization mode</comment></member> |
| <member><type>float</type> <name>extraPrimitiveOverestimationSize</name><comment>Extra overestimation to add to the primitive</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceDescriptorIndexingFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>shaderInputAttachmentArrayDynamicIndexing</name></member> |
| <member><type>VkBool32</type> <name>shaderUniformTexelBufferArrayDynamicIndexing</name></member> |
| <member><type>VkBool32</type> <name>shaderStorageTexelBufferArrayDynamicIndexing</name></member> |
| <member><type>VkBool32</type> <name>shaderUniformBufferArrayNonUniformIndexing</name></member> |
| <member><type>VkBool32</type> <name>shaderSampledImageArrayNonUniformIndexing</name></member> |
| <member><type>VkBool32</type> <name>shaderStorageBufferArrayNonUniformIndexing</name></member> |
| <member><type>VkBool32</type> <name>shaderStorageImageArrayNonUniformIndexing</name></member> |
| <member><type>VkBool32</type> <name>shaderInputAttachmentArrayNonUniformIndexing</name></member> |
| <member><type>VkBool32</type> <name>shaderUniformTexelBufferArrayNonUniformIndexing</name></member> |
| <member><type>VkBool32</type> <name>shaderStorageTexelBufferArrayNonUniformIndexing</name></member> |
| <member><type>VkBool32</type> <name>descriptorBindingUniformBufferUpdateAfterBind</name></member> |
| <member><type>VkBool32</type> <name>descriptorBindingSampledImageUpdateAfterBind</name></member> |
| <member><type>VkBool32</type> <name>descriptorBindingStorageImageUpdateAfterBind</name></member> |
| <member><type>VkBool32</type> <name>descriptorBindingStorageBufferUpdateAfterBind</name></member> |
| <member><type>VkBool32</type> <name>descriptorBindingUniformTexelBufferUpdateAfterBind</name></member> |
| <member><type>VkBool32</type> <name>descriptorBindingStorageTexelBufferUpdateAfterBind</name></member> |
| <member><type>VkBool32</type> <name>descriptorBindingUpdateUnusedWhilePending</name></member> |
| <member><type>VkBool32</type> <name>descriptorBindingPartiallyBound</name></member> |
| <member><type>VkBool32</type> <name>descriptorBindingVariableDescriptorCount</name></member> |
| <member><type>VkBool32</type> <name>runtimeDescriptorArray</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceDescriptorIndexingFeaturesEXT" alias="VkPhysicalDeviceDescriptorIndexingFeatures"/> |
| <type category="struct" name="VkPhysicalDeviceDescriptorIndexingProperties" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxUpdateAfterBindDescriptorsInAllPools</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderUniformBufferArrayNonUniformIndexingNative</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderSampledImageArrayNonUniformIndexingNative</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderStorageBufferArrayNonUniformIndexingNative</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderStorageImageArrayNonUniformIndexingNative</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderInputAttachmentArrayNonUniformIndexingNative</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>robustBufferAccessUpdateAfterBind</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>quadDivergentImplicitLod</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageDescriptorUpdateAfterBindSamplers</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageDescriptorUpdateAfterBindUniformBuffers</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageDescriptorUpdateAfterBindStorageBuffers</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageDescriptorUpdateAfterBindSampledImages</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageDescriptorUpdateAfterBindStorageImages</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageDescriptorUpdateAfterBindInputAttachments</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageUpdateAfterBindResources</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindSamplers</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindUniformBuffers</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindUniformBuffersDynamic</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindStorageBuffers</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindStorageBuffersDynamic</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindSampledImages</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindStorageImages</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindInputAttachments</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceDescriptorIndexingPropertiesEXT" alias="VkPhysicalDeviceDescriptorIndexingProperties"/> |
| <type category="struct" name="VkDescriptorSetLayoutBindingFlagsCreateInfo" structextends="VkDescriptorSetLayoutCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>bindingCount</name></member> |
| <member len="bindingCount" optional="false,true">const <type>VkDescriptorBindingFlags</type>* <name>pBindingFlags</name></member> |
| </type> |
| <type category="struct" name="VkDescriptorSetLayoutBindingFlagsCreateInfoEXT" alias="VkDescriptorSetLayoutBindingFlagsCreateInfo"/> |
| <type category="struct" name="VkDescriptorSetVariableDescriptorCountAllocateInfo" structextends="VkDescriptorSetAllocateInfo"> |
| <member values="VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>descriptorSetCount</name></member> |
| <member len="descriptorSetCount">const <type>uint32_t</type>* <name>pDescriptorCounts</name></member> |
| </type> |
| <type category="struct" name="VkDescriptorSetVariableDescriptorCountAllocateInfoEXT" alias="VkDescriptorSetVariableDescriptorCountAllocateInfo"/> |
| <type category="struct" name="VkDescriptorSetVariableDescriptorCountLayoutSupport" structextends="VkDescriptorSetLayoutSupport" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>maxVariableDescriptorCount</name></member> |
| </type> |
| <type category="struct" name="VkDescriptorSetVariableDescriptorCountLayoutSupportEXT" alias="VkDescriptorSetVariableDescriptorCountLayoutSupport"/> |
| <type category="struct" name="VkAttachmentDescription2"> |
| <member values="VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkAttachmentDescriptionFlags</type> <name>flags</name></member> |
| <member><type>VkFormat</type> <name>format</name></member> |
| <member><type>VkSampleCountFlagBits</type> <name>samples</name></member> |
| <member><type>VkAttachmentLoadOp</type> <name>loadOp</name><comment>Load operation for color or depth data</comment></member> |
| <member><type>VkAttachmentStoreOp</type> <name>storeOp</name><comment>Store operation for color or depth data</comment></member> |
| <member><type>VkAttachmentLoadOp</type> <name>stencilLoadOp</name><comment>Load operation for stencil data</comment></member> |
| <member><type>VkAttachmentStoreOp</type> <name>stencilStoreOp</name><comment>Store operation for stencil data</comment></member> |
| <member><type>VkImageLayout</type> <name>initialLayout</name></member> |
| <member><type>VkImageLayout</type> <name>finalLayout</name></member> |
| </type> |
| <type category="struct" name="VkAttachmentDescription2KHR" alias="VkAttachmentDescription2"/> |
| <type category="struct" name="VkAttachmentReference2"> |
| <member values="VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>attachment</name></member> |
| <member><type>VkImageLayout</type> <name>layout</name></member> |
| <member noautovalidity="true"><type>VkImageAspectFlags</type> <name>aspectMask</name></member> |
| </type> |
| <type category="struct" name="VkAttachmentReference2KHR" alias="VkAttachmentReference2"/> |
| <type category="struct" name="VkSubpassDescription2"> |
| <member values="VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkSubpassDescriptionFlags</type> <name>flags</name></member> |
| <member><type>VkPipelineBindPoint</type> <name>pipelineBindPoint</name></member> |
| <member><type>uint32_t</type> <name>viewMask</name></member> |
| <member optional="true"><type>uint32_t</type> <name>inputAttachmentCount</name></member> |
| <member len="inputAttachmentCount">const <type>VkAttachmentReference2</type>* <name>pInputAttachments</name></member> |
| <member optional="true"><type>uint32_t</type> <name>colorAttachmentCount</name></member> |
| <member len="colorAttachmentCount">const <type>VkAttachmentReference2</type>* <name>pColorAttachments</name></member> |
| <member optional="true" len="colorAttachmentCount">const <type>VkAttachmentReference2</type>* <name>pResolveAttachments</name></member> |
| <member optional="true">const <type>VkAttachmentReference2</type>* <name>pDepthStencilAttachment</name></member> |
| <member optional="true"><type>uint32_t</type> <name>preserveAttachmentCount</name></member> |
| <member len="preserveAttachmentCount">const <type>uint32_t</type>* <name>pPreserveAttachments</name></member> |
| </type> |
| <type category="struct" name="VkSubpassDescription2KHR" alias="VkSubpassDescription2"/> |
| <type category="struct" name="VkSubpassDependency2"> |
| <member values="VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>srcSubpass</name></member> |
| <member><type>uint32_t</type> <name>dstSubpass</name></member> |
| <member optional="true"><type>VkPipelineStageFlags</type> <name>srcStageMask</name></member> |
| <member optional="true"><type>VkPipelineStageFlags</type> <name>dstStageMask</name></member> |
| <member optional="true"><type>VkAccessFlags</type> <name>srcAccessMask</name></member> |
| <member optional="true"><type>VkAccessFlags</type> <name>dstAccessMask</name></member> |
| <member optional="true"><type>VkDependencyFlags</type> <name>dependencyFlags</name></member> |
| <member><type>int32_t</type> <name>viewOffset</name></member> |
| </type> |
| <type category="struct" name="VkSubpassDependency2KHR" alias="VkSubpassDependency2"/> |
| <type category="struct" name="VkRenderPassCreateInfo2"> |
| <member values="VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkRenderPassCreateFlags</type> <name>flags</name></member> |
| <member optional="true"><type>uint32_t</type> <name>attachmentCount</name></member> |
| <member len="attachmentCount">const <type>VkAttachmentDescription2</type>* <name>pAttachments</name></member> |
| <member><type>uint32_t</type> <name>subpassCount</name></member> |
| <member len="subpassCount">const <type>VkSubpassDescription2</type>* <name>pSubpasses</name></member> |
| <member optional="true"><type>uint32_t</type> <name>dependencyCount</name></member> |
| <member len="dependencyCount">const <type>VkSubpassDependency2</type>* <name>pDependencies</name></member> |
| <member optional="true"><type>uint32_t</type> <name>correlatedViewMaskCount</name></member> |
| <member len="correlatedViewMaskCount">const <type>uint32_t</type>* <name>pCorrelatedViewMasks</name></member> |
| </type> |
| <type category="struct" name="VkRenderPassCreateInfo2KHR" alias="VkRenderPassCreateInfo2"/> |
| <type category="struct" name="VkSubpassBeginInfo"> |
| <member values="VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkSubpassContents</type> <name>contents</name></member> |
| </type> |
| <type category="struct" name="VkSubpassBeginInfoKHR" alias="VkSubpassBeginInfo"/> |
| <type category="struct" name="VkSubpassEndInfo"> |
| <member values="VK_STRUCTURE_TYPE_SUBPASS_END_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| </type> |
| <type category="struct" name="VkSubpassEndInfoKHR" alias="VkSubpassEndInfo"/> |
| <type category="struct" name="VkPhysicalDeviceTimelineSemaphoreFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>timelineSemaphore</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceTimelineSemaphoreFeaturesKHR" alias="VkPhysicalDeviceTimelineSemaphoreFeatures"/> |
| <type category="struct" name="VkPhysicalDeviceTimelineSemaphoreProperties" structextends="VkPhysicalDeviceProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>uint64_t</type> <name>maxTimelineSemaphoreValueDifference</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceTimelineSemaphorePropertiesKHR" alias="VkPhysicalDeviceTimelineSemaphoreProperties"/> |
| <type category="struct" name="VkSemaphoreTypeCreateInfo" structextends="VkSemaphoreCreateInfo,VkPhysicalDeviceExternalSemaphoreInfo"> |
| <member values="VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkSemaphoreType</type> <name>semaphoreType</name></member> |
| <member><type>uint64_t</type> <name>initialValue</name></member> |
| </type> |
| <type category="struct" name="VkSemaphoreTypeCreateInfoKHR" alias="VkSemaphoreTypeCreateInfo"/> |
| <type category="struct" name="VkTimelineSemaphoreSubmitInfo" structextends="VkSubmitInfo,VkBindSparseInfo"> |
| <member values="VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>waitSemaphoreValueCount</name></member> |
| <member optional="true" len="waitSemaphoreValueCount">const <type>uint64_t</type>* <name>pWaitSemaphoreValues</name></member> |
| <member optional="true"><type>uint32_t</type> <name>signalSemaphoreValueCount</name></member> |
| <member optional="true" len="signalSemaphoreValueCount">const <type>uint64_t</type>* <name>pSignalSemaphoreValues</name></member> |
| </type> |
| <type category="struct" name="VkTimelineSemaphoreSubmitInfoKHR" alias="VkTimelineSemaphoreSubmitInfo"/> |
| <type category="struct" name="VkSemaphoreWaitInfo"> |
| <member values="VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkSemaphoreWaitFlags</type> <name>flags</name></member> |
| <member><type>uint32_t</type> <name>semaphoreCount</name></member> |
| <member len="semaphoreCount">const <type>VkSemaphore</type>* <name>pSemaphores</name></member> |
| <member len="semaphoreCount">const <type>uint64_t</type>* <name>pValues</name></member> |
| </type> |
| <type category="struct" name="VkSemaphoreWaitInfoKHR" alias="VkSemaphoreWaitInfo"/> |
| <type category="struct" name="VkSemaphoreSignalInfo"> |
| <member values="VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkSemaphore</type> <name>semaphore</name></member> |
| <member><type>uint64_t</type> <name>value</name></member> |
| </type> |
| <type category="struct" name="VkSemaphoreSignalInfoKHR" alias="VkSemaphoreSignalInfo"/> |
| <type category="struct" name="VkVertexInputBindingDivisorDescriptionKHR"> |
| <member><type>uint32_t</type> <name>binding</name></member> |
| <member><type>uint32_t</type> <name>divisor</name></member> |
| </type> |
| <type category="struct" name="VkVertexInputBindingDivisorDescriptionEXT" alias="VkVertexInputBindingDivisorDescriptionKHR"/> |
| <type category="struct" name="VkPipelineVertexInputDivisorStateCreateInfoKHR" structextends="VkPipelineVertexInputStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>vertexBindingDivisorCount</name></member> |
| <member len="vertexBindingDivisorCount">const <type>VkVertexInputBindingDivisorDescriptionKHR</type>* <name>pVertexBindingDivisors</name></member> |
| </type> |
| <type category="struct" name="VkPipelineVertexInputDivisorStateCreateInfoEXT" alias="VkPipelineVertexInputDivisorStateCreateInfoKHR"/> |
| <type category="struct" name="VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxVertexAttribDivisor</name><comment>max value of vertex attribute divisor</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceVertexAttributeDivisorPropertiesKHR" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxVertexAttribDivisor</name><comment>max value of vertex attribute divisor</comment></member> |
| <member limittype="max"><type>VkBool32</type> <name>supportsNonZeroFirstInstance</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevicePCIBusInfoPropertiesEXT" structextends="VkPhysicalDeviceProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="noauto"><type>uint32_t</type> <name>pciDomain</name></member> |
| <member limittype="noauto"><type>uint32_t</type> <name>pciBus</name></member> |
| <member limittype="noauto"><type>uint32_t</type> <name>pciDevice</name></member> |
| <member limittype="noauto"><type>uint32_t</type> <name>pciFunction</name></member> |
| </type> |
| <type category="struct" name="VkImportAndroidHardwareBufferInfoANDROID" structextends="VkMemoryAllocateInfo"> |
| <member values="VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member>struct <type>AHardwareBuffer</type>* <name>buffer</name></member> |
| </type> |
| <type category="struct" name="VkAndroidHardwareBufferUsageANDROID" structextends="VkImageFormatProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>uint64_t</type> <name>androidHardwareBufferUsage</name></member> |
| </type> |
| <type category="struct" name="VkAndroidHardwareBufferPropertiesANDROID" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceSize</type> <name>allocationSize</name></member> |
| <member><type>uint32_t</type> <name>memoryTypeBits</name></member> |
| </type> |
| <type category="struct" name="VkMemoryGetAndroidHardwareBufferInfoANDROID"> |
| <member values="VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceMemory</type> <name>memory</name></member> |
| </type> |
| <type category="struct" name="VkAndroidHardwareBufferFormatPropertiesANDROID" structextends="VkAndroidHardwareBufferPropertiesANDROID" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkFormat</type> <name>format</name></member> |
| <member><type>uint64_t</type> <name>externalFormat</name></member> |
| <member><type>VkFormatFeatureFlags</type> <name>formatFeatures</name></member> |
| <member><type>VkComponentMapping</type> <name>samplerYcbcrConversionComponents</name></member> |
| <member><type>VkSamplerYcbcrModelConversion</type> <name>suggestedYcbcrModel</name></member> |
| <member><type>VkSamplerYcbcrRange</type> <name>suggestedYcbcrRange</name></member> |
| <member><type>VkChromaLocation</type> <name>suggestedXChromaOffset</name></member> |
| <member><type>VkChromaLocation</type> <name>suggestedYChromaOffset</name></member> |
| </type> |
| <type category="struct" name="VkCommandBufferInheritanceConditionalRenderingInfoEXT" structextends="VkCommandBufferInheritanceInfo"> |
| <member values="VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>conditionalRenderingEnable</name><comment>Whether this secondary command buffer may be executed during an active conditional rendering</comment></member> |
| </type> |
| <type category="struct" name="VkExternalFormatANDROID" structextends="VkImageCreateInfo,VkSamplerYcbcrConversionCreateInfo,VkAttachmentDescription2,VkGraphicsPipelineCreateInfo,VkCommandBufferInheritanceInfo"> |
| <member values="VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>uint64_t</type> <name>externalFormat</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevice8BitStorageFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>storageBuffer8BitAccess</name><comment>8-bit integer variables supported in StorageBuffer</comment></member> |
| <member><type>VkBool32</type> <name>uniformAndStorageBuffer8BitAccess</name><comment>8-bit integer variables supported in StorageBuffer and Uniform</comment></member> |
| <member><type>VkBool32</type> <name>storagePushConstant8</name><comment>8-bit integer variables supported in PushConstant</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevice8BitStorageFeaturesKHR" alias="VkPhysicalDevice8BitStorageFeatures"/> |
| <type category="struct" name="VkPhysicalDeviceConditionalRenderingFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>conditionalRendering</name></member> |
| <member><type>VkBool32</type> <name>inheritedConditionalRendering</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceVulkanMemoryModelFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>vulkanMemoryModel</name></member> |
| <member><type>VkBool32</type> <name>vulkanMemoryModelDeviceScope</name></member> |
| <member><type>VkBool32</type> <name>vulkanMemoryModelAvailabilityVisibilityChains</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceVulkanMemoryModelFeaturesKHR" alias="VkPhysicalDeviceVulkanMemoryModelFeatures"/> |
| <type category="struct" name="VkPhysicalDeviceShaderAtomicInt64Features" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>shaderBufferInt64Atomics</name></member> |
| <member><type>VkBool32</type> <name>shaderSharedInt64Atomics</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceShaderAtomicInt64FeaturesKHR" alias="VkPhysicalDeviceShaderAtomicInt64Features"/> |
| <type category="struct" name="VkPhysicalDeviceShaderAtomicFloatFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>shaderBufferFloat32Atomics</name></member> |
| <member><type>VkBool32</type> <name>shaderBufferFloat32AtomicAdd</name></member> |
| <member><type>VkBool32</type> <name>shaderBufferFloat64Atomics</name></member> |
| <member><type>VkBool32</type> <name>shaderBufferFloat64AtomicAdd</name></member> |
| <member><type>VkBool32</type> <name>shaderSharedFloat32Atomics</name></member> |
| <member><type>VkBool32</type> <name>shaderSharedFloat32AtomicAdd</name></member> |
| <member><type>VkBool32</type> <name>shaderSharedFloat64Atomics</name></member> |
| <member><type>VkBool32</type> <name>shaderSharedFloat64AtomicAdd</name></member> |
| <member><type>VkBool32</type> <name>shaderImageFloat32Atomics</name></member> |
| <member><type>VkBool32</type> <name>shaderImageFloat32AtomicAdd</name></member> |
| <member><type>VkBool32</type> <name>sparseImageFloat32Atomics</name></member> |
| <member><type>VkBool32</type> <name>sparseImageFloat32AtomicAdd</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>shaderBufferFloat16Atomics</name></member> |
| <member><type>VkBool32</type> <name>shaderBufferFloat16AtomicAdd</name></member> |
| <member><type>VkBool32</type> <name>shaderBufferFloat16AtomicMinMax</name></member> |
| <member><type>VkBool32</type> <name>shaderBufferFloat32AtomicMinMax</name></member> |
| <member><type>VkBool32</type> <name>shaderBufferFloat64AtomicMinMax</name></member> |
| <member><type>VkBool32</type> <name>shaderSharedFloat16Atomics</name></member> |
| <member><type>VkBool32</type> <name>shaderSharedFloat16AtomicAdd</name></member> |
| <member><type>VkBool32</type> <name>shaderSharedFloat16AtomicMinMax</name></member> |
| <member><type>VkBool32</type> <name>shaderSharedFloat32AtomicMinMax</name></member> |
| <member><type>VkBool32</type> <name>shaderSharedFloat64AtomicMinMax</name></member> |
| <member><type>VkBool32</type> <name>shaderImageFloat32AtomicMinMax</name></member> |
| <member><type>VkBool32</type> <name>sparseImageFloat32AtomicMinMax</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceVertexAttributeDivisorFeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>vertexAttributeInstanceRateDivisor</name></member> |
| <member><type>VkBool32</type> <name>vertexAttributeInstanceRateZeroDivisor</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT" alias="VkPhysicalDeviceVertexAttributeDivisorFeaturesKHR"/> |
| <type category="struct" name="VkQueueFamilyCheckpointPropertiesNV" structextends="VkQueueFamilyProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask"><type>VkPipelineStageFlags</type> <name>checkpointExecutionStageMask</name></member> |
| </type> |
| <type category="struct" name="VkCheckpointDataNV" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkPipelineStageFlagBits</type> <name>stage</name></member> |
| <member noautovalidity="true"><type>void</type>* <name>pCheckpointMarker</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceDepthStencilResolveProperties" structextends="VkPhysicalDeviceProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask"><type>VkResolveModeFlags</type> <name>supportedDepthResolveModes</name><comment>supported depth resolve modes</comment></member> |
| <member limittype="bitmask"><type>VkResolveModeFlags</type> <name>supportedStencilResolveModes</name><comment>supported stencil resolve modes</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>independentResolveNone</name><comment>depth and stencil resolve modes can be set independently if one of them is none</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>independentResolve</name><comment>depth and stencil resolve modes can be set independently</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceDepthStencilResolvePropertiesKHR" alias="VkPhysicalDeviceDepthStencilResolveProperties"/> |
| <type category="struct" name="VkSubpassDescriptionDepthStencilResolve" structextends="VkSubpassDescription2"> |
| <member values="VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member noautovalidity="true"><type>VkResolveModeFlagBits</type> <name>depthResolveMode</name><comment>depth resolve mode</comment></member> |
| <member noautovalidity="true"><type>VkResolveModeFlagBits</type> <name>stencilResolveMode</name><comment>stencil resolve mode</comment></member> |
| <member optional="true">const <type>VkAttachmentReference2</type>* <name>pDepthStencilResolveAttachment</name><comment>depth/stencil resolve attachment</comment></member> |
| </type> |
| <type category="struct" name="VkSubpassDescriptionDepthStencilResolveKHR" alias="VkSubpassDescriptionDepthStencilResolve"/> |
| <type category="struct" name="VkImageViewASTCDecodeModeEXT" structextends="VkImageViewCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkFormat</type> <name>decodeMode</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceASTCDecodeFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>decodeModeSharedExponent</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceTransformFeedbackFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>transformFeedback</name></member> |
| <member><type>VkBool32</type> <name>geometryStreams</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceTransformFeedbackPropertiesEXT" structextends="VkPhysicalDeviceProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTransformFeedbackStreams</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTransformFeedbackBuffers</name></member> |
| <member limittype="max"><type>VkDeviceSize</type> <name>maxTransformFeedbackBufferSize</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTransformFeedbackStreamDataSize</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTransformFeedbackBufferDataSize</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTransformFeedbackBufferDataStride</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>transformFeedbackQueries</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>transformFeedbackStreamsLinesTriangles</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>transformFeedbackRasterizationStreamSelect</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>transformFeedbackDraw</name></member> |
| </type> |
| <type category="struct" name="VkPipelineRasterizationStateStreamCreateInfoEXT" structextends="VkPipelineRasterizationStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPipelineRasterizationStateStreamCreateFlagsEXT</type> <name>flags</name></member> |
| <member><type>uint32_t</type> <name>rasterizationStream</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>representativeFragmentTest</name></member> |
| </type> |
| <type category="struct" name="VkPipelineRepresentativeFragmentTestStateCreateInfoNV" structextends="VkGraphicsPipelineCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>representativeFragmentTestEnable</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceExclusiveScissorFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>exclusiveScissor</name></member> |
| </type> |
| <type category="struct" name="VkPipelineViewportExclusiveScissorStateCreateInfoNV" structextends="VkPipelineViewportStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>exclusiveScissorCount</name></member> |
| <member noautovalidity="true" len="exclusiveScissorCount">const <type>VkRect2D</type>* <name>pExclusiveScissors</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceCornerSampledImageFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>cornerSampledImage</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>computeDerivativeGroupQuads</name></member> |
| <member><type>VkBool32</type> <name>computeDerivativeGroupLinear</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceComputeShaderDerivativesFeaturesNV" alias="VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR"/> |
| <type category="struct" name="VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>meshAndTaskShaderDerivatives</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV" alias="VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR"/> |
| <type category="struct" name="VkPhysicalDeviceShaderImageFootprintFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>imageFootprint</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>dedicatedAllocationImageAliasing</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceCopyMemoryIndirectFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>indirectCopy</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceCopyMemoryIndirectPropertiesNV" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_PROPERTIES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask" noautovalidity="true"><type>VkQueueFlags</type> <name>supportedQueues</name><comment>Bitfield of which queues are supported for indirect copy</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMemoryDecompressionFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>memoryDecompression</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMemoryDecompressionPropertiesNV" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_PROPERTIES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask"><type>VkMemoryDecompressionMethodFlagsNV</type> <name>decompressionMethods</name></member> |
| <member limittype="max"><type>uint64_t</type> <name>maxDecompressionIndirectCount</name></member> |
| </type> |
| <type category="struct" name="VkShadingRatePaletteNV"> |
| <member><type>uint32_t</type> <name>shadingRatePaletteEntryCount</name></member> |
| <member len="shadingRatePaletteEntryCount">const <type>VkShadingRatePaletteEntryNV</type>* <name>pShadingRatePaletteEntries</name></member> |
| </type> |
| <type category="struct" name="VkPipelineViewportShadingRateImageStateCreateInfoNV" structextends="VkPipelineViewportStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>shadingRateImageEnable</name></member> |
| <member optional="true"><type>uint32_t</type> <name>viewportCount</name></member> |
| <member noautovalidity="true" len="viewportCount">const <type>VkShadingRatePaletteNV</type>* <name>pShadingRatePalettes</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceShadingRateImageFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>shadingRateImage</name></member> |
| <member><type>VkBool32</type> <name>shadingRateCoarseSampleOrder</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceShadingRateImagePropertiesNV" structextends="VkPhysicalDeviceProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="exact"><type>VkExtent2D</type> <name>shadingRateTexelSize</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>shadingRatePaletteSize</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>shadingRateMaxCoarseSamples</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceInvocationMaskFeaturesHUAWEI" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>invocationMask</name></member> |
| </type> |
| <type category="struct" name="VkCoarseSampleLocationNV"> |
| <member><type>uint32_t</type> <name>pixelX</name></member> |
| <member><type>uint32_t</type> <name>pixelY</name></member> |
| <member><type>uint32_t</type> <name>sample</name></member> |
| </type> |
| <type category="struct" name="VkCoarseSampleOrderCustomNV"> |
| <member><type>VkShadingRatePaletteEntryNV</type> <name>shadingRate</name></member> |
| <member><type>uint32_t</type> <name>sampleCount</name></member> |
| <member><type>uint32_t</type> <name>sampleLocationCount</name></member> |
| <member len="sampleLocationCount">const <type>VkCoarseSampleLocationNV</type>* <name>pSampleLocations</name></member> |
| </type> |
| <type category="struct" name="VkPipelineViewportCoarseSampleOrderStateCreateInfoNV" structextends="VkPipelineViewportStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkCoarseSampleOrderTypeNV</type> <name>sampleOrderType</name></member> |
| <member optional="true"><type>uint32_t</type> <name>customSampleOrderCount</name></member> |
| <member len="customSampleOrderCount">const <type>VkCoarseSampleOrderCustomNV</type>* <name>pCustomSampleOrders</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMeshShaderFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>taskShader</name></member> |
| <member><type>VkBool32</type> <name>meshShader</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMeshShaderPropertiesNV" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDrawMeshTasksCount</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTaskWorkGroupInvocations</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTaskWorkGroupSize</name>[3]</member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTaskTotalMemorySize</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTaskOutputCount</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxMeshWorkGroupInvocations</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxMeshWorkGroupSize</name>[3]</member> |
| <member limittype="max"><type>uint32_t</type> <name>maxMeshTotalMemorySize</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxMeshOutputVertices</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxMeshOutputPrimitives</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxMeshMultiviewViewCount</name></member> |
| <member limittype="min,mul"><type>uint32_t</type> <name>meshOutputPerVertexGranularity</name></member> |
| <member limittype="min,mul"><type>uint32_t</type> <name>meshOutputPerPrimitiveGranularity</name></member> |
| </type> |
| <type category="struct" name="VkDrawMeshTasksIndirectCommandNV"> |
| <member><type>uint32_t</type> <name>taskCount</name></member> |
| <member><type>uint32_t</type> <name>firstTask</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMeshShaderFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>taskShader</name></member> |
| <member><type>VkBool32</type> <name>meshShader</name></member> |
| <member><type>VkBool32</type> <name>multiviewMeshShader</name></member> |
| <member><type>VkBool32</type> <name>primitiveFragmentShadingRateMeshShader</name></member> |
| <member><type>VkBool32</type> <name>meshShaderQueries</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMeshShaderPropertiesEXT" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTaskWorkGroupTotalCount</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTaskWorkGroupCount</name>[3]</member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTaskWorkGroupInvocations</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTaskWorkGroupSize</name>[3]</member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTaskPayloadSize</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTaskSharedMemorySize</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTaskPayloadAndSharedMemorySize</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxMeshWorkGroupTotalCount</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxMeshWorkGroupCount</name>[3]</member> |
| <member limittype="max"><type>uint32_t</type> <name>maxMeshWorkGroupInvocations</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxMeshWorkGroupSize</name>[3]</member> |
| <member limittype="max"><type>uint32_t</type> <name>maxMeshSharedMemorySize</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxMeshPayloadAndSharedMemorySize</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxMeshOutputMemorySize</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxMeshPayloadAndOutputMemorySize</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxMeshOutputComponents</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxMeshOutputVertices</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxMeshOutputPrimitives</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxMeshOutputLayers</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxMeshMultiviewViewCount</name></member> |
| <member limittype="noauto"><type>uint32_t</type> <name>meshOutputPerVertexGranularity</name></member> |
| <member limittype="noauto"><type>uint32_t</type> <name>meshOutputPerPrimitiveGranularity</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPreferredTaskWorkGroupInvocations</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPreferredMeshWorkGroupInvocations</name></member> |
| <member limittype="noauto"><type>VkBool32</type> <name>prefersLocalInvocationVertexOutput</name></member> |
| <member limittype="noauto"><type>VkBool32</type> <name>prefersLocalInvocationPrimitiveOutput</name></member> |
| <member limittype="noauto"><type>VkBool32</type> <name>prefersCompactVertexOutput</name></member> |
| <member limittype="noauto"><type>VkBool32</type> <name>prefersCompactPrimitiveOutput</name></member> |
| </type> |
| <type category="struct" name="VkDrawMeshTasksIndirectCommandEXT"> |
| <member noautovalidity="true"><type>uint32_t</type> <name>groupCountX</name></member> |
| <member noautovalidity="true"><type>uint32_t</type> <name>groupCountY</name></member> |
| <member noautovalidity="true"><type>uint32_t</type> <name>groupCountZ</name></member> |
| </type> |
| <type category="struct" name="VkRayTracingShaderGroupCreateInfoNV"> |
| <member values="VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkRayTracingShaderGroupTypeKHR</type> <name>type</name></member> |
| <member><type>uint32_t</type> <name>generalShader</name></member> |
| <member><type>uint32_t</type> <name>closestHitShader</name></member> |
| <member><type>uint32_t</type> <name>anyHitShader</name></member> |
| <member><type>uint32_t</type> <name>intersectionShader</name></member> |
| </type> |
| <type category="struct" name="VkRayTracingShaderGroupCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkRayTracingShaderGroupTypeKHR</type> <name>type</name></member> |
| <member><type>uint32_t</type> <name>generalShader</name></member> |
| <member><type>uint32_t</type> <name>closestHitShader</name></member> |
| <member><type>uint32_t</type> <name>anyHitShader</name></member> |
| <member><type>uint32_t</type> <name>intersectionShader</name></member> |
| <member optional="true">const <type>void</type>* <name>pShaderGroupCaptureReplayHandle</name></member> |
| </type> |
| <type category="struct" name="VkRayTracingPipelineCreateInfoNV"> |
| <member values="VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member noautovalidity="true" optional="true"><type>VkPipelineCreateFlags</type> <name>flags</name><comment>Pipeline creation flags</comment></member> |
| <member><type>uint32_t</type> <name>stageCount</name></member> |
| <member len="stageCount">const <type>VkPipelineShaderStageCreateInfo</type>* <name>pStages</name><comment>One entry for each active shader stage</comment></member> |
| <member><type>uint32_t</type> <name>groupCount</name></member> |
| <member len="groupCount">const <type>VkRayTracingShaderGroupCreateInfoNV</type>* <name>pGroups</name></member> |
| <member><type>uint32_t</type> <name>maxRecursionDepth</name></member> |
| <member><type>VkPipelineLayout</type> <name>layout</name><comment>Interface layout of the pipeline</comment></member> |
| <member noautovalidity="true" optional="true"><type>VkPipeline</type> <name>basePipelineHandle</name><comment>If 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</comment></member> |
| <member><type>int32_t</type> <name>basePipelineIndex</name><comment>If 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</comment></member> |
| </type> |
| <type category="struct" name="VkRayTracingPipelineCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member noautovalidity="true" optional="true"><type>VkPipelineCreateFlags</type> <name>flags</name><comment>Pipeline creation flags</comment></member> |
| <member optional="true"><type>uint32_t</type> <name>stageCount</name></member> |
| <member len="stageCount">const <type>VkPipelineShaderStageCreateInfo</type>* <name>pStages</name><comment>One entry for each active shader stage</comment></member> |
| <member optional="true"><type>uint32_t</type> <name>groupCount</name></member> |
| <member len="groupCount">const <type>VkRayTracingShaderGroupCreateInfoKHR</type>* <name>pGroups</name></member> |
| <member><type>uint32_t</type> <name>maxPipelineRayRecursionDepth</name></member> |
| <member optional="true">const <type>VkPipelineLibraryCreateInfoKHR</type>* <name>pLibraryInfo</name></member> |
| <member optional="true">const <type>VkRayTracingPipelineInterfaceCreateInfoKHR</type>* <name>pLibraryInterface</name></member> |
| <member optional="true">const <type>VkPipelineDynamicStateCreateInfo</type>* <name>pDynamicState</name></member> |
| <member><type>VkPipelineLayout</type> <name>layout</name><comment>Interface layout of the pipeline</comment></member> |
| <member noautovalidity="true" optional="true"><type>VkPipeline</type> <name>basePipelineHandle</name><comment>If 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</comment></member> |
| <member><type>int32_t</type> <name>basePipelineIndex</name><comment>If 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</comment></member> |
| </type> |
| <type category="struct" name="VkGeometryTrianglesNV"> |
| <member values="VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkBuffer</type> <name>vertexData</name></member> |
| <member><type>VkDeviceSize</type> <name>vertexOffset</name></member> |
| <member><type>uint32_t</type> <name>vertexCount</name></member> |
| <member><type>VkDeviceSize</type> <name>vertexStride</name></member> |
| <member><type>VkFormat</type> <name>vertexFormat</name></member> |
| <member optional="true"><type>VkBuffer</type> <name>indexData</name></member> |
| <member><type>VkDeviceSize</type> <name>indexOffset</name></member> |
| <member><type>uint32_t</type> <name>indexCount</name></member> |
| <member><type>VkIndexType</type> <name>indexType</name></member> |
| <member optional="true"><type>VkBuffer</type> <name>transformData</name><comment>Optional reference to array of floats representing a 3x4 row major affine transformation matrix.</comment></member> |
| <member><type>VkDeviceSize</type> <name>transformOffset</name></member> |
| </type> |
| <type category="struct" name="VkGeometryAABBNV"> |
| <member values="VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkBuffer</type> <name>aabbData</name></member> |
| <member><type>uint32_t</type> <name>numAABBs</name></member> |
| <member><type>uint32_t</type> <name>stride</name><comment>Stride in bytes between AABBs</comment></member> |
| <member><type>VkDeviceSize</type> <name>offset</name><comment>Offset in bytes of the first AABB in aabbData</comment></member> |
| </type> |
| <type category="struct" name="VkGeometryDataNV"> |
| <member><type>VkGeometryTrianglesNV</type> <name>triangles</name></member> |
| <member><type>VkGeometryAABBNV</type> <name>aabbs</name></member> |
| </type> |
| <type category="struct" name="VkGeometryNV"> |
| <member values="VK_STRUCTURE_TYPE_GEOMETRY_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkGeometryTypeKHR</type> <name>geometryType</name></member> |
| <member><type>VkGeometryDataNV</type> <name>geometry</name></member> |
| <member optional="true"><type>VkGeometryFlagsKHR</type> <name>flags</name></member> |
| </type> |
| <type category="struct" name="VkAccelerationStructureInfoNV"> |
| <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkAccelerationStructureTypeNV</type> <name>type</name></member> |
| <member optional="true"><type>VkBuildAccelerationStructureFlagsNV</type> <name>flags</name></member> |
| <member optional="true"><type>uint32_t</type> <name>instanceCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>geometryCount</name></member> |
| <member len="geometryCount">const <type>VkGeometryNV</type>* <name>pGeometries</name></member> |
| </type> |
| <type category="struct" name="VkAccelerationStructureCreateInfoNV"> |
| <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceSize</type> <name>compactedSize</name></member> |
| <member><type>VkAccelerationStructureInfoNV</type> <name>info</name></member> |
| </type> |
| <type category="struct" name="VkBindAccelerationStructureMemoryInfoNV"> |
| <member values="VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkAccelerationStructureNV</type> <name>accelerationStructure</name></member> |
| <member><type>VkDeviceMemory</type> <name>memory</name></member> |
| <member><type>VkDeviceSize</type> <name>memoryOffset</name></member> |
| <member optional="true"><type>uint32_t</type> <name>deviceIndexCount</name></member> |
| <member len="deviceIndexCount">const <type>uint32_t</type>* <name>pDeviceIndices</name></member> |
| </type> |
| <type category="struct" name="VkWriteDescriptorSetAccelerationStructureKHR" structextends="VkWriteDescriptorSet"> |
| <member values="VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>accelerationStructureCount</name></member> |
| <member optional="false,true" len="accelerationStructureCount">const <type>VkAccelerationStructureKHR</type>* <name>pAccelerationStructures</name></member> |
| </type> |
| <type category="struct" name="VkWriteDescriptorSetAccelerationStructureNV" structextends="VkWriteDescriptorSet"> |
| <member values="VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>accelerationStructureCount</name></member> |
| <member optional="false,true" len="accelerationStructureCount">const <type>VkAccelerationStructureNV</type>* <name>pAccelerationStructures</name></member> |
| </type> |
| <type category="struct" name="VkAccelerationStructureMemoryRequirementsInfoNV"> |
| <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkAccelerationStructureMemoryRequirementsTypeNV</type> <name>type</name></member> |
| <member><type>VkAccelerationStructureNV</type> <name>accelerationStructure</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceAccelerationStructureFeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>accelerationStructure</name></member> |
| <member><type>VkBool32</type> <name>accelerationStructureCaptureReplay</name></member> |
| <member><type>VkBool32</type> <name>accelerationStructureIndirectBuild</name></member> |
| <member><type>VkBool32</type> <name>accelerationStructureHostCommands</name></member> |
| <member><type>VkBool32</type> <name>descriptorBindingAccelerationStructureUpdateAfterBind</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceRayTracingPipelineFeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>rayTracingPipeline</name></member> |
| <member><type>VkBool32</type> <name>rayTracingPipelineShaderGroupHandleCaptureReplay</name></member> |
| <member><type>VkBool32</type> <name>rayTracingPipelineShaderGroupHandleCaptureReplayMixed</name></member> |
| <member><type>VkBool32</type> <name>rayTracingPipelineTraceRaysIndirect</name></member> |
| <member><type>VkBool32</type> <name>rayTraversalPrimitiveCulling</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceRayQueryFeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>rayQuery</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceAccelerationStructurePropertiesKHR" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>uint64_t</type> <name>maxGeometryCount</name></member> |
| <member limittype="max"><type>uint64_t</type> <name>maxInstanceCount</name></member> |
| <member limittype="max"><type>uint64_t</type> <name>maxPrimitiveCount</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageDescriptorAccelerationStructures</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageDescriptorUpdateAfterBindAccelerationStructures</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetAccelerationStructures</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindAccelerationStructures</name></member> |
| <member limittype="min"><type>uint32_t</type> <name>minAccelerationStructureScratchOffsetAlignment</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceRayTracingPipelinePropertiesKHR" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="exact"><type>uint32_t</type> <name>shaderGroupHandleSize</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxRayRecursionDepth</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxShaderGroupStride</name></member> |
| <member limittype="exact"><type>uint32_t</type> <name>shaderGroupBaseAlignment</name></member> |
| <member limittype="exact"><type>uint32_t</type> <name>shaderGroupHandleCaptureReplaySize</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxRayDispatchInvocationCount</name></member> |
| <member limittype="min,pot"><type>uint32_t</type> <name>shaderGroupHandleAlignment</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxRayHitAttributeSize</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceRayTracingPropertiesNV" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="exact"><type>uint32_t</type> <name>shaderGroupHandleSize</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxRecursionDepth</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxShaderGroupStride</name></member> |
| <member limittype="exact"><type>uint32_t</type> <name>shaderGroupBaseAlignment</name></member> |
| <member limittype="max"><type>uint64_t</type> <name>maxGeometryCount</name></member> |
| <member limittype="max"><type>uint64_t</type> <name>maxInstanceCount</name></member> |
| <member limittype="max"><type>uint64_t</type> <name>maxTriangleCount</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetAccelerationStructures</name></member> |
| </type> |
| <type category="struct" name="VkStridedDeviceAddressRegionKHR"> |
| <member optional="true"><type>VkDeviceAddress</type> <name>deviceAddress</name></member> |
| <member><type>VkDeviceSize</type> <name>stride</name></member> |
| <member><type>VkDeviceSize</type> <name>size</name></member> |
| </type> |
| <type category="struct" name="VkTraceRaysIndirectCommandKHR"> |
| <member><type>uint32_t</type> <name>width</name></member> |
| <member><type>uint32_t</type> <name>height</name></member> |
| <member><type>uint32_t</type> <name>depth</name></member> |
| </type> |
| <type category="struct" name="VkTraceRaysIndirectCommand2KHR"> |
| <member><type>VkDeviceAddress</type> <name>raygenShaderRecordAddress</name></member> |
| <member><type>VkDeviceSize</type> <name>raygenShaderRecordSize</name></member> |
| <member><type>VkDeviceAddress</type> <name>missShaderBindingTableAddress</name></member> |
| <member><type>VkDeviceSize</type> <name>missShaderBindingTableSize</name></member> |
| <member><type>VkDeviceSize</type> <name>missShaderBindingTableStride</name></member> |
| <member><type>VkDeviceAddress</type> <name>hitShaderBindingTableAddress</name></member> |
| <member><type>VkDeviceSize</type> <name>hitShaderBindingTableSize</name></member> |
| <member><type>VkDeviceSize</type> <name>hitShaderBindingTableStride</name></member> |
| <member><type>VkDeviceAddress</type> <name>callableShaderBindingTableAddress</name></member> |
| <member><type>VkDeviceSize</type> <name>callableShaderBindingTableSize</name></member> |
| <member><type>VkDeviceSize</type> <name>callableShaderBindingTableStride</name></member> |
| <member><type>uint32_t</type> <name>width</name></member> |
| <member><type>uint32_t</type> <name>height</name></member> |
| <member><type>uint32_t</type> <name>depth</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>rayTracingMaintenance1</name></member> |
| <member><type>VkBool32</type> <name>rayTracingPipelineTraceRaysIndirect2</name></member> |
| </type> |
| <type category="struct" name="VkDrmFormatModifierPropertiesListEXT" returnedonly="true" structextends="VkFormatProperties2"> |
| <member values="VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>drmFormatModifierCount</name></member> |
| <member optional="true" len="drmFormatModifierCount"><type>VkDrmFormatModifierPropertiesEXT</type>* <name>pDrmFormatModifierProperties</name></member> |
| </type> |
| <type category="struct" name="VkDrmFormatModifierPropertiesEXT" returnedonly="true"> |
| <member><type>uint64_t</type> <name>drmFormatModifier</name></member> |
| <member><type>uint32_t</type> <name>drmFormatModifierPlaneCount</name></member> |
| <member><type>VkFormatFeatureFlags</type> <name>drmFormatModifierTilingFeatures</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceImageDrmFormatModifierInfoEXT" structextends="VkPhysicalDeviceImageFormatInfo2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint64_t</type> <name>drmFormatModifier</name></member> |
| <member><type>VkSharingMode</type> <name>sharingMode</name></member> |
| <member optional="true"><type>uint32_t</type> <name>queueFamilyIndexCount</name></member> |
| <member noautovalidity="true" len="queueFamilyIndexCount">const <type>uint32_t</type>* <name>pQueueFamilyIndices</name></member> |
| </type> |
| <type category="struct" name="VkImageDrmFormatModifierListCreateInfoEXT" structextends="VkImageCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>drmFormatModifierCount</name></member> |
| <member len="drmFormatModifierCount">const <type>uint64_t</type>* <name>pDrmFormatModifiers</name></member> |
| </type> |
| <type category="struct" name="VkImageDrmFormatModifierExplicitCreateInfoEXT" structextends="VkImageCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint64_t</type> <name>drmFormatModifier</name></member> |
| <member><type>uint32_t</type> <name>drmFormatModifierPlaneCount</name></member> |
| <member len="drmFormatModifierPlaneCount">const <type>VkSubresourceLayout</type>* <name>pPlaneLayouts</name></member> |
| </type> |
| <type category="struct" name="VkImageDrmFormatModifierPropertiesEXT" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>uint64_t</type> <name>drmFormatModifier</name></member> |
| </type> |
| <type category="struct" name="VkImageStencilUsageCreateInfo" structextends="VkImageCreateInfo,VkPhysicalDeviceImageFormatInfo2"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkImageUsageFlags</type> <name>stencilUsage</name></member> |
| </type> |
| <type category="struct" name="VkImageStencilUsageCreateInfoEXT" alias="VkImageStencilUsageCreateInfo"/> |
| <type category="struct" name="VkDeviceMemoryOverallocationCreateInfoAMD" structextends="VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkMemoryOverallocationBehaviorAMD</type> <name>overallocationBehavior</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceFragmentDensityMapFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>fragmentDensityMap</name></member> |
| <member><type>VkBool32</type> <name>fragmentDensityMapDynamic</name></member> |
| <member><type>VkBool32</type> <name>fragmentDensityMapNonSubsampledImages</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceFragmentDensityMap2FeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>fragmentDensityMapDeferred</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>fragmentDensityMapOffset</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceFragmentDensityMapPropertiesEXT" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="min"><type>VkExtent2D</type> <name>minFragmentDensityTexelSize</name></member> |
| <member limittype="max"><type>VkExtent2D</type> <name>maxFragmentDensityTexelSize</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>fragmentDensityInvocations</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceFragmentDensityMap2PropertiesEXT" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="exact"><type>VkBool32</type> <name>subsampledLoads</name></member> |
| <member limittype="exact"><type>VkBool32</type> <name>subsampledCoarseReconstructionEarlyAccess</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxSubsampledArrayLayers</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetSubsampledSamplers</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="min,mul"><type>VkExtent2D</type> <name>fragmentDensityOffsetGranularity</name></member> |
| </type> |
| <type category="struct" name="VkRenderPassFragmentDensityMapCreateInfoEXT" structextends="VkRenderPassCreateInfo,VkRenderPassCreateInfo2"> |
| <member values="VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkAttachmentReference</type> <name>fragmentDensityMapAttachment</name></member> |
| </type> |
| <type category="struct" name="VkSubpassFragmentDensityMapOffsetEndInfoQCOM" structextends="VkSubpassEndInfo"> |
| <member values="VK_STRUCTURE_TYPE_SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>fragmentDensityOffsetCount</name></member> |
| <member len="fragmentDensityOffsetCount">const <type>VkOffset2D</type>* <name>pFragmentDensityOffsets</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceScalarBlockLayoutFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>scalarBlockLayout</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceScalarBlockLayoutFeaturesEXT" alias="VkPhysicalDeviceScalarBlockLayoutFeatures"/> |
| <type category="struct" name="VkSurfaceProtectedCapabilitiesKHR" structextends="VkSurfaceCapabilities2KHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>supportsProtected</name><comment>Represents if surface can be protected</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceUniformBufferStandardLayoutFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>uniformBufferStandardLayout</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR" alias="VkPhysicalDeviceUniformBufferStandardLayoutFeatures"/> |
| <type category="struct" name="VkPhysicalDeviceDepthClipEnableFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>depthClipEnable</name></member> |
| </type> |
| <type category="struct" name="VkPipelineRasterizationDepthClipStateCreateInfoEXT" structextends="VkPipelineRasterizationStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPipelineRasterizationDepthClipStateCreateFlagsEXT</type> <name>flags</name><comment>Reserved</comment></member> |
| <member><type>VkBool32</type> <name>depthClipEnable</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMemoryBudgetPropertiesEXT" structextends="VkPhysicalDeviceMemoryProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceSize</type> <name>heapBudget</name>[<enum>VK_MAX_MEMORY_HEAPS</enum>]</member> |
| <member><type>VkDeviceSize</type> <name>heapUsage</name>[<enum>VK_MAX_MEMORY_HEAPS</enum>]</member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMemoryPriorityFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>memoryPriority</name></member> |
| </type> |
| <type category="struct" name="VkMemoryPriorityAllocateInfoEXT" structextends="VkMemoryAllocateInfo"> |
| <member values="VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>float</type> <name>priority</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>pageableDeviceLocalMemory</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceBufferDeviceAddressFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>bufferDeviceAddress</name></member> |
| <member><type>VkBool32</type> <name>bufferDeviceAddressCaptureReplay</name></member> |
| <member><type>VkBool32</type> <name>bufferDeviceAddressMultiDevice</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceBufferDeviceAddressFeaturesKHR" alias="VkPhysicalDeviceBufferDeviceAddressFeatures"/> |
| <type category="struct" name="VkPhysicalDeviceBufferDeviceAddressFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>bufferDeviceAddress</name></member> |
| <member><type>VkBool32</type> <name>bufferDeviceAddressCaptureReplay</name></member> |
| <member><type>VkBool32</type> <name>bufferDeviceAddressMultiDevice</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceBufferAddressFeaturesEXT" alias="VkPhysicalDeviceBufferDeviceAddressFeaturesEXT"/> |
| <type category="struct" name="VkBufferDeviceAddressInfo"> |
| <member values="VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBuffer</type> <name>buffer</name></member> |
| </type> |
| <type category="struct" name="VkBufferDeviceAddressInfoKHR" alias="VkBufferDeviceAddressInfo"/> |
| <type category="struct" name="VkBufferDeviceAddressInfoEXT" alias="VkBufferDeviceAddressInfo"/> |
| <type category="struct" name="VkBufferOpaqueCaptureAddressCreateInfo" structextends="VkBufferCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint64_t</type> <name>opaqueCaptureAddress</name></member> |
| </type> |
| <type category="struct" name="VkBufferOpaqueCaptureAddressCreateInfoKHR" alias="VkBufferOpaqueCaptureAddressCreateInfo"/> |
| <type category="struct" name="VkBufferDeviceAddressCreateInfoEXT" structextends="VkBufferCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceAddress</type> <name>deviceAddress</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceImageViewImageFormatInfoEXT" structextends="VkPhysicalDeviceImageFormatInfo2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkImageViewType</type> <name>imageViewType</name></member> |
| </type> |
| <type category="struct" name="VkFilterCubicImageViewImageFormatPropertiesEXT" returnedonly="true" structextends="VkImageFormatProperties2"> |
| <member values="VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>filterCubic</name><comment>The combinations of format, image type (and image view type if provided) can be filtered with VK_FILTER_CUBIC_EXT</comment></member> |
| <member><type>VkBool32</type> <name>filterCubicMinmax</name><comment>The combination of format, image type (and image view type if provided) can be filtered with VK_FILTER_CUBIC_EXT and ReductionMode of Min or Max</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceImagelessFramebufferFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>imagelessFramebuffer</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceImagelessFramebufferFeaturesKHR" alias="VkPhysicalDeviceImagelessFramebufferFeatures"/> |
| <type category="struct" name="VkFramebufferAttachmentsCreateInfo" structextends="VkFramebufferCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>attachmentImageInfoCount</name></member> |
| <member len="attachmentImageInfoCount">const <type>VkFramebufferAttachmentImageInfo</type>* <name>pAttachmentImageInfos</name></member> |
| </type> |
| <type category="struct" name="VkFramebufferAttachmentsCreateInfoKHR" alias="VkFramebufferAttachmentsCreateInfo"/> |
| <type category="struct" name="VkFramebufferAttachmentImageInfo"> |
| <member values="VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkImageCreateFlags</type> <name>flags</name><comment>Image creation flags</comment></member> |
| <member><type>VkImageUsageFlags</type> <name>usage</name><comment>Image usage flags</comment></member> |
| <member><type>uint32_t</type> <name>width</name></member> |
| <member><type>uint32_t</type> <name>height</name></member> |
| <member><type>uint32_t</type> <name>layerCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>viewFormatCount</name></member> |
| <member len="viewFormatCount">const <type>VkFormat</type>* <name>pViewFormats</name></member> |
| </type> |
| <type category="struct" name="VkFramebufferAttachmentImageInfoKHR" alias="VkFramebufferAttachmentImageInfo"/> |
| <type category="struct" name="VkRenderPassAttachmentBeginInfo" structextends="VkRenderPassBeginInfo"> |
| <member values="VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>attachmentCount</name></member> |
| <member len="attachmentCount">const <type>VkImageView</type>* <name>pAttachments</name></member> |
| </type> |
| <type category="struct" name="VkRenderPassAttachmentBeginInfoKHR" alias="VkRenderPassAttachmentBeginInfo"/> |
| <type category="struct" name="VkPhysicalDeviceTextureCompressionASTCHDRFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>textureCompressionASTC_HDR</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT" alias="VkPhysicalDeviceTextureCompressionASTCHDRFeatures"/> |
| <type category="struct" name="VkPhysicalDeviceCooperativeMatrixFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>cooperativeMatrix</name></member> |
| <member><type>VkBool32</type> <name>cooperativeMatrixRobustBufferAccess</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceCooperativeMatrixPropertiesNV" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask"><type>VkShaderStageFlags</type> <name>cooperativeMatrixSupportedStages</name></member> |
| </type> |
| <type category="struct" name="VkCooperativeMatrixPropertiesNV" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>MSize</name></member> |
| <member><type>uint32_t</type> <name>NSize</name></member> |
| <member><type>uint32_t</type> <name>KSize</name></member> |
| <member><type>VkComponentTypeNV</type> <name>AType</name></member> |
| <member><type>VkComponentTypeNV</type> <name>BType</name></member> |
| <member><type>VkComponentTypeNV</type> <name>CType</name></member> |
| <member><type>VkComponentTypeNV</type> <name>DType</name></member> |
| <member><type>VkScopeNV</type> <name>scope</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceYcbcrImageArraysFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>ycbcrImageArrays</name></member> |
| </type> |
| <type category="struct" name="VkImageViewHandleInfoNVX"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkImageView</type> <name>imageView</name></member> |
| <member><type>VkDescriptorType</type> <name>descriptorType</name></member> |
| <member optional="true"><type>VkSampler</type> <name>sampler</name></member> |
| </type> |
| <type category="struct" name="VkImageViewAddressPropertiesNVX" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceAddress</type> <name>deviceAddress</name></member> |
| <member><type>VkDeviceSize</type> <name>size</name></member> |
| </type> |
| <type category="struct" name="VkPresentFrameTokenGGP" structextends="VkPresentInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>GgpFrameToken</type> <name>frameToken</name></member> |
| </type> |
| <type category="struct" name="VkPipelineCreationFeedback" returnedonly="true"> |
| <member><type>VkPipelineCreationFeedbackFlags</type> <name>flags</name></member> |
| <member><type>uint64_t</type> <name>duration</name></member> |
| </type> |
| <type category="struct" name="VkPipelineCreationFeedbackEXT" alias="VkPipelineCreationFeedback"/> |
| <type category="struct" name="VkPipelineCreationFeedbackCreateInfo" structextends="VkGraphicsPipelineCreateInfo,VkComputePipelineCreateInfo,VkRayTracingPipelineCreateInfoNV,VkRayTracingPipelineCreateInfoKHR,VkExecutionGraphPipelineCreateInfoAMDX"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkPipelineCreationFeedback</type>* <name>pPipelineCreationFeedback</name><comment>Output pipeline creation feedback.</comment></member> |
| <member optional="true"><type>uint32_t</type> <name>pipelineStageCreationFeedbackCount</name></member> |
| <member len="pipelineStageCreationFeedbackCount"><type>VkPipelineCreationFeedback</type>* <name>pPipelineStageCreationFeedbacks</name><comment>One entry for each shader stage specified in the parent Vk*PipelineCreateInfo struct</comment></member> |
| </type> |
| <type category="struct" name="VkPipelineCreationFeedbackCreateInfoEXT" alias="VkPipelineCreationFeedbackCreateInfo"/> |
| <type category="struct" name="VkSurfaceFullScreenExclusiveInfoEXT" structextends="VkPhysicalDeviceSurfaceInfo2KHR,VkSwapchainCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkFullScreenExclusiveEXT</type> <name>fullScreenExclusive</name></member> |
| </type> |
| <type category="struct" name="VkSurfaceFullScreenExclusiveWin32InfoEXT" structextends="VkPhysicalDeviceSurfaceInfo2KHR,VkSwapchainCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>HMONITOR</type> <name>hmonitor</name></member> |
| </type> |
| <type category="struct" name="VkSurfaceCapabilitiesFullScreenExclusiveEXT" structextends="VkSurfaceCapabilities2KHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>fullScreenExclusiveSupported</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevicePresentBarrierFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_BARRIER_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>presentBarrier</name></member> |
| </type> |
| <type category="struct" name="VkSurfaceCapabilitiesPresentBarrierNV" structextends="VkSurfaceCapabilities2KHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_PRESENT_BARRIER_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>presentBarrierSupported</name></member> |
| </type> |
| <type category="struct" name="VkSwapchainPresentBarrierCreateInfoNV" structextends="VkSwapchainCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_BARRIER_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>presentBarrierEnable</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevicePerformanceQueryFeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>performanceCounterQueryPools</name><comment>performance counters supported in query pools</comment></member> |
| <member><type>VkBool32</type> <name>performanceCounterMultipleQueryPools</name><comment>performance counters from multiple query pools can be accessed in the same primary command buffer</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevicePerformanceQueryPropertiesKHR" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask" noautovalidity="true"><type>VkBool32</type> <name>allowCommandBufferQueryCopies</name><comment>Flag to specify whether performance queries are allowed to be used in vkCmdCopyQueryPoolResults</comment></member> |
| </type> |
| <type category="struct" name="VkPerformanceCounterKHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkPerformanceCounterUnitKHR</type> <name>unit</name></member> |
| <member><type>VkPerformanceCounterScopeKHR</type> <name>scope</name></member> |
| <member><type>VkPerformanceCounterStorageKHR</type> <name>storage</name></member> |
| <member><type>uint8_t</type> <name>uuid</name>[<enum>VK_UUID_SIZE</enum>]</member> |
| </type> |
| <type category="struct" name="VkPerformanceCounterDescriptionKHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPerformanceCounterDescriptionFlagsKHR</type> <name>flags</name></member> |
| <member len="null-terminated"><type>char</type> <name>name</name>[<enum>VK_MAX_DESCRIPTION_SIZE</enum>]</member> |
| <member len="null-terminated"><type>char</type> <name>category</name>[<enum>VK_MAX_DESCRIPTION_SIZE</enum>]</member> |
| <member len="null-terminated"><type>char</type> <name>description</name>[<enum>VK_MAX_DESCRIPTION_SIZE</enum>]</member> |
| </type> |
| <type category="struct" name="VkQueryPoolPerformanceCreateInfoKHR" structextends="VkQueryPoolCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>queueFamilyIndex</name></member> |
| <member><type>uint32_t</type> <name>counterIndexCount</name></member> |
| <member len="counterIndexCount">const <type>uint32_t</type>* <name>pCounterIndices</name></member> |
| </type> |
| <type category="union" name="VkPerformanceCounterResultKHR" comment="// Union of all the possible return types a counter result could return"> |
| <member><type>int32_t</type> <name>int32</name></member> |
| <member><type>int64_t</type> <name>int64</name></member> |
| <member><type>uint32_t</type> <name>uint32</name></member> |
| <member><type>uint64_t</type> <name>uint64</name></member> |
| <member><type>float</type> <name>float32</name></member> |
| <member><type>double</type> <name>float64</name></member> |
| </type> |
| <type category="struct" name="VkAcquireProfilingLockInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkAcquireProfilingLockFlagsKHR</type> <name>flags</name><comment>Acquire profiling lock flags</comment></member> |
| <member><type>uint64_t</type> <name>timeout</name></member> |
| </type> |
| <type category="struct" name="VkPerformanceQuerySubmitInfoKHR" structextends="VkSubmitInfo,VkSubmitInfo2"> |
| <member values="VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>counterPassIndex</name><comment>Index for which counter pass to submit</comment></member> |
| </type> |
| <type category="struct" name="VkPerformanceQueryReservationInfoKHR" allowduplicate="true" structextends="VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_RESERVATION_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>maxPerformanceQueriesPerPool</name><comment>Maximum number of VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR queries in a query pool</comment></member> |
| </type> |
| <type category="struct" name="VkHeadlessSurfaceCreateInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkHeadlessSurfaceCreateFlagsEXT</type> <name>flags</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceCoverageReductionModeFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>coverageReductionMode</name></member> |
| </type> |
| <type category="struct" name="VkPipelineCoverageReductionStateCreateInfoNV" structextends="VkPipelineMultisampleStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPipelineCoverageReductionStateCreateFlagsNV</type> <name>flags</name></member> |
| <member><type>VkCoverageReductionModeNV</type> <name>coverageReductionMode</name></member> |
| </type> |
| <type category="struct" name="VkFramebufferMixedSamplesCombinationNV" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkCoverageReductionModeNV</type> <name>coverageReductionMode</name></member> |
| <member><type>VkSampleCountFlagBits</type> <name>rasterizationSamples</name></member> |
| <member><type>VkSampleCountFlags</type> <name>depthStencilSamples</name></member> |
| <member><type>VkSampleCountFlags</type> <name>colorSamples</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>shaderIntegerFunctions2</name></member> |
| </type> |
| <type category="union" name="VkPerformanceValueDataINTEL"> |
| <member selection="VK_PERFORMANCE_VALUE_TYPE_UINT32_INTEL"><type>uint32_t</type> <name>value32</name></member> |
| <member selection="VK_PERFORMANCE_VALUE_TYPE_UINT64_INTEL"><type>uint64_t</type> <name>value64</name></member> |
| <member selection="VK_PERFORMANCE_VALUE_TYPE_FLOAT_INTEL"><type>float</type> <name>valueFloat</name></member> |
| <member selection="VK_PERFORMANCE_VALUE_TYPE_BOOL_INTEL"><type>VkBool32</type> <name>valueBool</name></member> |
| <member selection="VK_PERFORMANCE_VALUE_TYPE_STRING_INTEL" len="null-terminated">const <type>char</type>* <name>valueString</name></member> |
| </type> |
| <type category="struct" name="VkPerformanceValueINTEL" returnedonly="true"> |
| <member><type>VkPerformanceValueTypeINTEL</type> <name>type</name></member> |
| <member selector="type" noautovalidity="true"><type>VkPerformanceValueDataINTEL</type> <name>data</name></member> |
| </type> |
| <type category="struct" name="VkInitializePerformanceApiInfoINTEL" > |
| <member values="VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>void</type>* <name>pUserData</name></member> |
| </type> |
| <type category="struct" name="VkQueryPoolPerformanceQueryCreateInfoINTEL" structextends="VkQueryPoolCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkQueryPoolSamplingModeINTEL</type> <name>performanceCountersSampling</name></member> |
| </type> |
| <type category="struct" name="VkQueryPoolCreateInfoINTEL" alias="VkQueryPoolPerformanceQueryCreateInfoINTEL"/> |
| <type category="struct" name="VkPerformanceMarkerInfoINTEL"> |
| <member values="VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint64_t</type> <name>marker</name></member> |
| </type> |
| <type category="struct" name="VkPerformanceStreamMarkerInfoINTEL"> |
| <member values="VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>marker</name></member> |
| </type> |
| <type category="struct" name="VkPerformanceOverrideInfoINTEL"> |
| <member values="VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkPerformanceOverrideTypeINTEL</type> <name>type</name></member> |
| <member><type>VkBool32</type> <name>enable</name></member> |
| <member><type>uint64_t</type> <name>parameter</name></member> |
| </type> |
| <type category="struct" name="VkPerformanceConfigurationAcquireInfoINTEL"> |
| <member values="VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkPerformanceConfigurationTypeINTEL</type> <name>type</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceShaderClockFeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>shaderSubgroupClock</name></member> |
| <member><type>VkBool32</type> <name>shaderDeviceClock</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceIndexTypeUint8FeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>indexTypeUint8</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceIndexTypeUint8FeaturesEXT" alias="VkPhysicalDeviceIndexTypeUint8FeaturesKHR"/> |
| <type category="struct" name="VkPhysicalDeviceShaderSMBuiltinsPropertiesNV" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>shaderSMCount</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>shaderWarpsPerSM</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceShaderSMBuiltinsFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>shaderSMBuiltins</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name><comment>Pointer to next structure</comment></member> |
| <member><type>VkBool32</type> <name>fragmentShaderSampleInterlock</name></member> |
| <member><type>VkBool32</type> <name>fragmentShaderPixelInterlock</name></member> |
| <member><type>VkBool32</type> <name>fragmentShaderShadingRateInterlock</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>separateDepthStencilLayouts</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR" alias="VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures"/> |
| <type category="struct" name="VkAttachmentReferenceStencilLayout" structextends="VkAttachmentReference2"> |
| <member values="VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkImageLayout</type> <name>stencilLayout</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>primitiveTopologyListRestart</name></member> |
| <member><type>VkBool32</type> <name>primitiveTopologyPatchListRestart</name></member> |
| </type> |
| <type category="struct" name="VkAttachmentReferenceStencilLayoutKHR" alias="VkAttachmentReferenceStencilLayout"/> |
| <type category="struct" name="VkAttachmentDescriptionStencilLayout" structextends="VkAttachmentDescription2"> |
| <member values="VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkImageLayout</type> <name>stencilInitialLayout</name></member> |
| <member><type>VkImageLayout</type> <name>stencilFinalLayout</name></member> |
| </type> |
| <type category="struct" name="VkAttachmentDescriptionStencilLayoutKHR" alias="VkAttachmentDescriptionStencilLayout"/> |
| <type category="struct" name="VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>pipelineExecutableInfo</name></member> |
| </type> |
| <type category="struct" name="VkPipelineInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkPipeline</type> <name>pipeline</name></member> |
| </type> |
| <type category="struct" name="VkPipelineInfoEXT" alias="VkPipelineInfoKHR"/> |
| <type category="struct" name="VkPipelineExecutablePropertiesKHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkShaderStageFlags</type> <name>stages</name></member> |
| <member len="null-terminated"><type>char</type> <name>name</name>[<enum>VK_MAX_DESCRIPTION_SIZE</enum>]</member> |
| <member len="null-terminated"><type>char</type> <name>description</name>[<enum>VK_MAX_DESCRIPTION_SIZE</enum>]</member> |
| <member><type>uint32_t</type> <name>subgroupSize</name></member> |
| </type> |
| <type category="struct" name="VkPipelineExecutableInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkPipeline</type> <name>pipeline</name></member> |
| <member><type>uint32_t</type> <name>executableIndex</name></member> |
| </type> |
| <type category="union" name="VkPipelineExecutableStatisticValueKHR" returnedonly="true"> |
| <member selection="VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BOOL32_KHR"><type>VkBool32</type> <name>b32</name></member> |
| <member selection="VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_INT64_KHR"><type>int64_t</type> <name>i64</name></member> |
| <member selection="VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_UINT64_KHR"><type>uint64_t</type> <name>u64</name></member> |
| <member selection="VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_FLOAT64_KHR"><type>double</type> <name>f64</name></member> |
| </type> |
| <type category="struct" name="VkPipelineExecutableStatisticKHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member len="null-terminated"><type>char</type> <name>name</name>[<enum>VK_MAX_DESCRIPTION_SIZE</enum>]</member> |
| <member len="null-terminated"><type>char</type> <name>description</name>[<enum>VK_MAX_DESCRIPTION_SIZE</enum>]</member> |
| <member><type>VkPipelineExecutableStatisticFormatKHR</type> <name>format</name></member> |
| <member selector="format" noautovalidity="true"><type>VkPipelineExecutableStatisticValueKHR</type> <name>value</name></member> |
| </type> |
| <type category="struct" name="VkPipelineExecutableInternalRepresentationKHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member len="null-terminated"><type>char</type> <name>name</name>[<enum>VK_MAX_DESCRIPTION_SIZE</enum>]</member> |
| <member len="null-terminated"><type>char</type> <name>description</name>[<enum>VK_MAX_DESCRIPTION_SIZE</enum>]</member> |
| <member><type>VkBool32</type> <name>isText</name></member> |
| <member><type>size_t</type> <name>dataSize</name></member> |
| <member optional="true" len="dataSize"><type>void</type>* <name>pData</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>shaderDemoteToHelperInvocation</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT" alias="VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures"/> |
| <type category="struct" name="VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>texelBufferAlignment</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceTexelBufferAlignmentProperties" structextends="VkPhysicalDeviceProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="min,pot"><type>VkDeviceSize</type> <name>storageTexelBufferOffsetAlignmentBytes</name></member> |
| <member limittype="exact"><type>VkBool32</type> <name>storageTexelBufferOffsetSingleTexelAlignment</name></member> |
| <member limittype="min,pot"><type>VkDeviceSize</type> <name>uniformTexelBufferOffsetAlignmentBytes</name></member> |
| <member limittype="exact"><type>VkBool32</type> <name>uniformTexelBufferOffsetSingleTexelAlignment</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT" alias="VkPhysicalDeviceTexelBufferAlignmentProperties"/> |
| <type category="struct" name="VkPhysicalDeviceSubgroupSizeControlFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>subgroupSizeControl</name></member> |
| <member><type>VkBool32</type> <name>computeFullSubgroups</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceSubgroupSizeControlFeaturesEXT" alias="VkPhysicalDeviceSubgroupSizeControlFeatures"/> |
| <type category="struct" name="VkPhysicalDeviceSubgroupSizeControlProperties" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="min,pot" noautovalidity="true"><type>uint32_t</type> <name>minSubgroupSize</name><comment>The minimum subgroup size supported by this device</comment></member> |
| <member limittype="max,pot" noautovalidity="true"><type>uint32_t</type> <name>maxSubgroupSize</name><comment>The maximum subgroup size supported by this device</comment></member> |
| <member limittype="max" noautovalidity="true"><type>uint32_t</type> <name>maxComputeWorkgroupSubgroups</name><comment>The maximum number of subgroups supported in a workgroup</comment></member> |
| <member limittype="bitmask"><type>VkShaderStageFlags</type> <name>requiredSubgroupSizeStages</name><comment>The shader stages that support specifying a subgroup size</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceSubgroupSizeControlPropertiesEXT" alias="VkPhysicalDeviceSubgroupSizeControlProperties"/> |
| <type category="struct" name="VkPipelineShaderStageRequiredSubgroupSizeCreateInfo" returnedonly="true" structextends="VkPipelineShaderStageCreateInfo,VkShaderCreateInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>requiredSubgroupSize</name></member> |
| </type> |
| <type category="struct" name="VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT" alias="VkPipelineShaderStageRequiredSubgroupSizeCreateInfo"/> |
| <type category="struct" name="VkShaderRequiredSubgroupSizeCreateInfoEXT" alias="VkPipelineShaderStageRequiredSubgroupSizeCreateInfo"/> |
| <type category="struct" name="VkSubpassShadingPipelineCreateInfoHUAWEI" structextends="VkComputePipelineCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkRenderPass</type> <name>renderPass</name></member> |
| <member><type>uint32_t</type> <name>subpass</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceSubpassShadingPropertiesHUAWEI" structextends="VkPhysicalDeviceProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max,pot"><type>uint32_t</type> <name>maxSubpassShadingWorkgroupSizeAspectRatio</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI" structextends="VkPhysicalDeviceProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_PROPERTIES_HUAWEI"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max,pot"><type>uint32_t</type> <name>maxWorkGroupCount</name>[3]</member> |
| <member limittype="max,pot"><type>uint32_t</type> <name>maxWorkGroupSize</name>[3]</member> |
| <member limittype="max"><type>uint32_t</type> <name>maxOutputClusterCount</name></member> |
| <member limittype="exact"><type>VkDeviceSize</type> <name>indirectBufferOffsetAlignment</name></member> |
| </type> |
| <type category="struct" name="VkMemoryOpaqueCaptureAddressAllocateInfo" structextends="VkMemoryAllocateInfo"> |
| <member values="VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint64_t</type> <name>opaqueCaptureAddress</name></member> |
| </type> |
| <type category="struct" name="VkMemoryOpaqueCaptureAddressAllocateInfoKHR" alias="VkMemoryOpaqueCaptureAddressAllocateInfo"/> |
| <type category="struct" name="VkDeviceMemoryOpaqueCaptureAddressInfo"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceMemory</type> <name>memory</name></member> |
| </type> |
| <type category="struct" name="VkDeviceMemoryOpaqueCaptureAddressInfoKHR" alias="VkDeviceMemoryOpaqueCaptureAddressInfo"/> |
| <type category="struct" name="VkPhysicalDeviceLineRasterizationFeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>rectangularLines</name></member> |
| <member><type>VkBool32</type> <name>bresenhamLines</name></member> |
| <member><type>VkBool32</type> <name>smoothLines</name></member> |
| <member><type>VkBool32</type> <name>stippledRectangularLines</name></member> |
| <member><type>VkBool32</type> <name>stippledBresenhamLines</name></member> |
| <member><type>VkBool32</type> <name>stippledSmoothLines</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceLineRasterizationFeaturesEXT" alias="VkPhysicalDeviceLineRasterizationFeaturesKHR"/> |
| <type category="struct" name="VkPhysicalDeviceLineRasterizationPropertiesKHR" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bits"><type>uint32_t</type> <name>lineSubPixelPrecisionBits</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceLineRasterizationPropertiesEXT" alias="VkPhysicalDeviceLineRasterizationPropertiesKHR"/> |
| <type category="struct" name="VkPipelineRasterizationLineStateCreateInfoKHR" structextends="VkPipelineRasterizationStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkLineRasterizationModeKHR</type> <name>lineRasterizationMode</name></member> |
| <member><type>VkBool32</type> <name>stippledLineEnable</name></member> |
| <member><type>uint32_t</type> <name>lineStippleFactor</name></member> |
| <member><type>uint16_t</type> <name>lineStipplePattern</name></member> |
| </type> |
| <type category="struct" name="VkPipelineRasterizationLineStateCreateInfoEXT" alias="VkPipelineRasterizationLineStateCreateInfoKHR"/> |
| <type category="struct" name="VkPhysicalDevicePipelineCreationCacheControlFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>pipelineCreationCacheControl</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT" alias="VkPhysicalDevicePipelineCreationCacheControlFeatures"/> |
| <type category="struct" name="VkPhysicalDeviceVulkan11Features" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>storageBuffer16BitAccess</name><comment>16-bit integer/floating-point variables supported in BufferBlock</comment></member> |
| <member><type>VkBool32</type> <name>uniformAndStorageBuffer16BitAccess</name><comment>16-bit integer/floating-point variables supported in BufferBlock and Block</comment></member> |
| <member><type>VkBool32</type> <name>storagePushConstant16</name><comment>16-bit integer/floating-point variables supported in PushConstant</comment></member> |
| <member><type>VkBool32</type> <name>storageInputOutput16</name><comment>16-bit integer/floating-point variables supported in shader inputs and outputs</comment></member> |
| <member><type>VkBool32</type> <name>multiview</name><comment>Multiple views in a render pass</comment></member> |
| <member><type>VkBool32</type> <name>multiviewGeometryShader</name><comment>Multiple views in a render pass w/ geometry shader</comment></member> |
| <member><type>VkBool32</type> <name>multiviewTessellationShader</name><comment>Multiple views in a render pass w/ tessellation shader</comment></member> |
| <member><type>VkBool32</type> <name>variablePointersStorageBuffer</name></member> |
| <member><type>VkBool32</type> <name>variablePointers</name></member> |
| <member><type>VkBool32</type> <name>protectedMemory</name></member> |
| <member><type>VkBool32</type> <name>samplerYcbcrConversion</name><comment>Sampler color conversion supported</comment></member> |
| <member><type>VkBool32</type> <name>shaderDrawParameters</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceVulkan11Properties" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="exact"><type>uint8_t</type> <name>deviceUUID</name>[<enum>VK_UUID_SIZE</enum>]</member> |
| <member limittype="exact"><type>uint8_t</type> <name>driverUUID</name>[<enum>VK_UUID_SIZE</enum>]</member> |
| <member limittype="exact"><type>uint8_t</type> <name>deviceLUID</name>[<enum>VK_LUID_SIZE</enum>]</member> |
| <member limittype="exact"><type>uint32_t</type> <name>deviceNodeMask</name></member> |
| <member limittype="exact"><type>VkBool32</type> <name>deviceLUIDValid</name></member> |
| <member limittype="max,pot" noautovalidity="true"><type>uint32_t</type> <name>subgroupSize</name><comment>The size of a subgroup for this queue.</comment></member> |
| <member limittype="bitmask" noautovalidity="true"><type>VkShaderStageFlags</type> <name>subgroupSupportedStages</name><comment>Bitfield of what shader stages support subgroup operations</comment></member> |
| <member limittype="bitmask" noautovalidity="true"><type>VkSubgroupFeatureFlags</type> <name>subgroupSupportedOperations</name><comment>Bitfield of what subgroup operations are supported.</comment></member> |
| <member limittype="bitmask" noautovalidity="true"><type>VkBool32</type> <name>subgroupQuadOperationsInAllStages</name><comment>Flag to specify whether quad operations are available in all stages.</comment></member> |
| <member limittype="exact"><type>VkPointClippingBehavior</type> <name>pointClippingBehavior</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxMultiviewViewCount</name><comment>max number of views in a subpass</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxMultiviewInstanceIndex</name><comment>max instance index for a draw in a multiview subpass</comment></member> |
| <member limittype="exact"><type>VkBool32</type> <name>protectedNoFault</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerSetDescriptors</name></member> |
| <member limittype="max"><type>VkDeviceSize</type> <name>maxMemoryAllocationSize</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceVulkan12Features" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>samplerMirrorClampToEdge</name></member> |
| <member><type>VkBool32</type> <name>drawIndirectCount</name></member> |
| <member><type>VkBool32</type> <name>storageBuffer8BitAccess</name><comment>8-bit integer variables supported in StorageBuffer</comment></member> |
| <member><type>VkBool32</type> <name>uniformAndStorageBuffer8BitAccess</name><comment>8-bit integer variables supported in StorageBuffer and Uniform</comment></member> |
| <member><type>VkBool32</type> <name>storagePushConstant8</name><comment>8-bit integer variables supported in PushConstant</comment></member> |
| <member><type>VkBool32</type> <name>shaderBufferInt64Atomics</name></member> |
| <member><type>VkBool32</type> <name>shaderSharedInt64Atomics</name></member> |
| <member><type>VkBool32</type> <name>shaderFloat16</name><comment>16-bit floats (halfs) in shaders</comment></member> |
| <member><type>VkBool32</type> <name>shaderInt8</name><comment>8-bit integers in shaders</comment></member> |
| <member><type>VkBool32</type> <name>descriptorIndexing</name></member> |
| <member><type>VkBool32</type> <name>shaderInputAttachmentArrayDynamicIndexing</name></member> |
| <member><type>VkBool32</type> <name>shaderUniformTexelBufferArrayDynamicIndexing</name></member> |
| <member><type>VkBool32</type> <name>shaderStorageTexelBufferArrayDynamicIndexing</name></member> |
| <member><type>VkBool32</type> <name>shaderUniformBufferArrayNonUniformIndexing</name></member> |
| <member><type>VkBool32</type> <name>shaderSampledImageArrayNonUniformIndexing</name></member> |
| <member><type>VkBool32</type> <name>shaderStorageBufferArrayNonUniformIndexing</name></member> |
| <member><type>VkBool32</type> <name>shaderStorageImageArrayNonUniformIndexing</name></member> |
| <member><type>VkBool32</type> <name>shaderInputAttachmentArrayNonUniformIndexing</name></member> |
| <member><type>VkBool32</type> <name>shaderUniformTexelBufferArrayNonUniformIndexing</name></member> |
| <member><type>VkBool32</type> <name>shaderStorageTexelBufferArrayNonUniformIndexing</name></member> |
| <member><type>VkBool32</type> <name>descriptorBindingUniformBufferUpdateAfterBind</name></member> |
| <member><type>VkBool32</type> <name>descriptorBindingSampledImageUpdateAfterBind</name></member> |
| <member><type>VkBool32</type> <name>descriptorBindingStorageImageUpdateAfterBind</name></member> |
| <member><type>VkBool32</type> <name>descriptorBindingStorageBufferUpdateAfterBind</name></member> |
| <member><type>VkBool32</type> <name>descriptorBindingUniformTexelBufferUpdateAfterBind</name></member> |
| <member><type>VkBool32</type> <name>descriptorBindingStorageTexelBufferUpdateAfterBind</name></member> |
| <member><type>VkBool32</type> <name>descriptorBindingUpdateUnusedWhilePending</name></member> |
| <member><type>VkBool32</type> <name>descriptorBindingPartiallyBound</name></member> |
| <member><type>VkBool32</type> <name>descriptorBindingVariableDescriptorCount</name></member> |
| <member><type>VkBool32</type> <name>runtimeDescriptorArray</name></member> |
| <member><type>VkBool32</type> <name>samplerFilterMinmax</name></member> |
| <member><type>VkBool32</type> <name>scalarBlockLayout</name></member> |
| <member><type>VkBool32</type> <name>imagelessFramebuffer</name></member> |
| <member><type>VkBool32</type> <name>uniformBufferStandardLayout</name></member> |
| <member><type>VkBool32</type> <name>shaderSubgroupExtendedTypes</name></member> |
| <member><type>VkBool32</type> <name>separateDepthStencilLayouts</name></member> |
| <member><type>VkBool32</type> <name>hostQueryReset</name></member> |
| <member><type>VkBool32</type> <name>timelineSemaphore</name></member> |
| <member><type>VkBool32</type> <name>bufferDeviceAddress</name></member> |
| <member><type>VkBool32</type> <name>bufferDeviceAddressCaptureReplay</name></member> |
| <member><type>VkBool32</type> <name>bufferDeviceAddressMultiDevice</name></member> |
| <member><type>VkBool32</type> <name>vulkanMemoryModel</name></member> |
| <member><type>VkBool32</type> <name>vulkanMemoryModelDeviceScope</name></member> |
| <member><type>VkBool32</type> <name>vulkanMemoryModelAvailabilityVisibilityChains</name></member> |
| <member><type>VkBool32</type> <name>shaderOutputViewportIndex</name></member> |
| <member><type>VkBool32</type> <name>shaderOutputLayer</name></member> |
| <member><type>VkBool32</type> <name>subgroupBroadcastDynamicId</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceVulkan12Properties" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="noauto"><type>VkDriverId</type> <name>driverID</name></member> |
| <member limittype="noauto" len="null-terminated"><type>char</type> <name>driverName</name>[<enum>VK_MAX_DRIVER_NAME_SIZE</enum>]</member> |
| <member limittype="noauto" len="null-terminated"><type>char</type> <name>driverInfo</name>[<enum>VK_MAX_DRIVER_INFO_SIZE</enum>]</member> |
| <member limittype="noauto"><type>VkConformanceVersion</type> <name>conformanceVersion</name></member> |
| <member limittype="exact"><type>VkShaderFloatControlsIndependence</type> <name>denormBehaviorIndependence</name></member> |
| <member limittype="exact"><type>VkShaderFloatControlsIndependence</type> <name>roundingModeIndependence</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderSignedZeroInfNanPreserveFloat16</name><comment>An implementation can preserve signed zero, nan, inf</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderSignedZeroInfNanPreserveFloat32</name><comment>An implementation can preserve signed zero, nan, inf</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderSignedZeroInfNanPreserveFloat64</name><comment>An implementation can preserve signed zero, nan, inf</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderDenormPreserveFloat16</name><comment>An implementation can preserve denormals</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderDenormPreserveFloat32</name><comment>An implementation can preserve denormals</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderDenormPreserveFloat64</name><comment>An implementation can preserve denormals</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderDenormFlushToZeroFloat16</name><comment>An implementation can flush to zero denormals</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderDenormFlushToZeroFloat32</name><comment>An implementation can flush to zero denormals</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderDenormFlushToZeroFloat64</name><comment>An implementation can flush to zero denormals</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderRoundingModeRTEFloat16</name><comment>An implementation can support RTE</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderRoundingModeRTEFloat32</name><comment>An implementation can support RTE</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderRoundingModeRTEFloat64</name><comment>An implementation can support RTE</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderRoundingModeRTZFloat16</name><comment>An implementation can support RTZ</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderRoundingModeRTZFloat32</name><comment>An implementation can support RTZ</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderRoundingModeRTZFloat64</name><comment>An implementation can support RTZ</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxUpdateAfterBindDescriptorsInAllPools</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderUniformBufferArrayNonUniformIndexingNative</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderSampledImageArrayNonUniformIndexingNative</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderStorageBufferArrayNonUniformIndexingNative</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderStorageImageArrayNonUniformIndexingNative</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>shaderInputAttachmentArrayNonUniformIndexingNative</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>robustBufferAccessUpdateAfterBind</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>quadDivergentImplicitLod</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageDescriptorUpdateAfterBindSamplers</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageDescriptorUpdateAfterBindUniformBuffers</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageDescriptorUpdateAfterBindStorageBuffers</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageDescriptorUpdateAfterBindSampledImages</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageDescriptorUpdateAfterBindStorageImages</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageDescriptorUpdateAfterBindInputAttachments</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageUpdateAfterBindResources</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindSamplers</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindUniformBuffers</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindUniformBuffersDynamic</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindStorageBuffers</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindStorageBuffersDynamic</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindSampledImages</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindStorageImages</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindInputAttachments</name></member> |
| <member limittype="bitmask"><type>VkResolveModeFlags</type> <name>supportedDepthResolveModes</name><comment>supported depth resolve modes</comment></member> |
| <member limittype="bitmask"><type>VkResolveModeFlags</type> <name>supportedStencilResolveModes</name><comment>supported stencil resolve modes</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>independentResolveNone</name><comment>depth and stencil resolve modes can be set independently if one of them is none</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>independentResolve</name><comment>depth and stencil resolve modes can be set independently</comment></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>filterMinmaxSingleComponentFormats</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>filterMinmaxImageComponentMapping</name></member> |
| <member limittype="max"><type>uint64_t</type> <name>maxTimelineSemaphoreValueDifference</name></member> |
| <member limittype="bitmask" optional="true"><type>VkSampleCountFlags</type> <name>framebufferIntegerColorSampleCounts</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceVulkan13Features" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>robustImageAccess</name></member> |
| <member><type>VkBool32</type> <name>inlineUniformBlock</name></member> |
| <member><type>VkBool32</type> <name>descriptorBindingInlineUniformBlockUpdateAfterBind</name></member> |
| <member><type>VkBool32</type> <name>pipelineCreationCacheControl</name></member> |
| <member><type>VkBool32</type> <name>privateData</name></member> |
| <member><type>VkBool32</type> <name>shaderDemoteToHelperInvocation</name></member> |
| <member><type>VkBool32</type> <name>shaderTerminateInvocation</name></member> |
| <member><type>VkBool32</type> <name>subgroupSizeControl</name></member> |
| <member><type>VkBool32</type> <name>computeFullSubgroups</name></member> |
| <member><type>VkBool32</type> <name>synchronization2</name></member> |
| <member><type>VkBool32</type> <name>textureCompressionASTC_HDR</name></member> |
| <member><type>VkBool32</type> <name>shaderZeroInitializeWorkgroupMemory</name></member> |
| <member><type>VkBool32</type> <name>dynamicRendering</name></member> |
| <member><type>VkBool32</type> <name>shaderIntegerDotProduct</name></member> |
| <member><type>VkBool32</type> <name>maintenance4</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceVulkan13Properties" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="min,pot" noautovalidity="true"><type>uint32_t</type> <name>minSubgroupSize</name><comment>The minimum subgroup size supported by this device</comment></member> |
| <member limittype="max,pot" noautovalidity="true"><type>uint32_t</type> <name>maxSubgroupSize</name><comment>The maximum subgroup size supported by this device</comment></member> |
| <member limittype="max" noautovalidity="true"><type>uint32_t</type> <name>maxComputeWorkgroupSubgroups</name><comment>The maximum number of subgroups supported in a workgroup</comment></member> |
| <member limittype="bitmask"><type>VkShaderStageFlags</type> <name>requiredSubgroupSizeStages</name><comment>The shader stages that support specifying a subgroup size</comment></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxInlineUniformBlockSize</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageDescriptorInlineUniformBlocks</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetInlineUniformBlocks</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetUpdateAfterBindInlineUniformBlocks</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxInlineUniformTotalSize</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct8BitUnsignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct8BitSignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct8BitMixedSignednessAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct4x8BitPackedUnsignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct4x8BitPackedSignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct4x8BitPackedMixedSignednessAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct16BitUnsignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct16BitSignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct16BitMixedSignednessAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct32BitUnsignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct32BitSignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct32BitMixedSignednessAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct64BitUnsignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct64BitSignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct64BitMixedSignednessAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating8BitUnsignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating8BitSignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating16BitUnsignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating16BitSignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating32BitUnsignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating32BitSignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating64BitUnsignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating64BitSignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated</name></member> |
| <member limittype="min,pot"><type>VkDeviceSize</type> <name>storageTexelBufferOffsetAlignmentBytes</name></member> |
| <member limittype="exact"><type>VkBool32</type> <name>storageTexelBufferOffsetSingleTexelAlignment</name></member> |
| <member limittype="min,pot"><type>VkDeviceSize</type> <name>uniformTexelBufferOffsetAlignmentBytes</name></member> |
| <member limittype="exact"><type>VkBool32</type> <name>uniformTexelBufferOffsetSingleTexelAlignment</name></member> |
| <member limittype="max"><type>VkDeviceSize</type> <name>maxBufferSize</name></member> |
| </type> |
| <type category="struct" name="VkPipelineCompilerControlCreateInfoAMD" structextends="VkGraphicsPipelineCreateInfo,VkComputePipelineCreateInfo,VkExecutionGraphPipelineCreateInfoAMDX"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPipelineCompilerControlFlagsAMD</type> <name>compilerControlFlags</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceCoherentMemoryFeaturesAMD" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>deviceCoherentMemory</name></member> |
| </type> |
| <type category="struct" name="VkFaultData" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_FAULT_DATA"><type>VkStructureType</type> <name>sType</name></member> |
| <member noautovalidity="true" optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkFaultLevel</type> <name>faultLevel</name></member> |
| <member><type>VkFaultType</type> <name>faultType</name></member> |
| </type> |
| <type category="struct" name="VkFaultCallbackInfo" structextends="VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_FAULT_CALLBACK_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>faultCount</name></member> |
| <member optional="true" len="faultCount"><type>VkFaultData</type>*<name>pFaults</name></member> |
| <member><type>PFN_vkFaultCallbackFunction</type> <name>pfnFaultCallback</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceToolProperties" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member len="null-terminated"><type>char</type> <name>name</name>[<enum>VK_MAX_EXTENSION_NAME_SIZE</enum>]</member> |
| <member len="null-terminated"><type>char</type> <name>version</name>[<enum>VK_MAX_EXTENSION_NAME_SIZE</enum>]</member> |
| <member><type>VkToolPurposeFlags</type> <name>purposes</name></member> |
| <member len="null-terminated"><type>char</type> <name>description</name>[<enum>VK_MAX_DESCRIPTION_SIZE</enum>]</member> |
| <member len="null-terminated"><type>char</type> <name>layer</name>[<enum>VK_MAX_EXTENSION_NAME_SIZE</enum>]</member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceToolPropertiesEXT" alias="VkPhysicalDeviceToolProperties"/> |
| <type category="struct" name="VkSamplerCustomBorderColorCreateInfoEXT" structextends="VkSamplerCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member noautovalidity="true"><type>VkClearColorValue</type> <name>customBorderColor</name></member> |
| <member><type>VkFormat</type> <name>format</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceCustomBorderColorPropertiesEXT" structextends="VkPhysicalDeviceProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxCustomBorderColorSamplers</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceCustomBorderColorFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>customBorderColors</name></member> |
| <member><type>VkBool32</type> <name>customBorderColorWithoutFormat</name></member> |
| </type> |
| <type category="struct" name="VkSamplerBorderColorComponentMappingCreateInfoEXT" structextends="VkSamplerCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkComponentMapping</type> <name>components</name></member> |
| <member><type>VkBool32</type> <name>srgb</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceBorderColorSwizzleFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>borderColorSwizzle</name></member> |
| <member><type>VkBool32</type> <name>borderColorSwizzleFromImage</name></member> |
| </type> |
| <type category="union" name="VkDeviceOrHostAddressKHR"> |
| <member noautovalidity="true"><type>VkDeviceAddress</type> <name>deviceAddress</name></member> |
| <member noautovalidity="true"><type>void</type>* <name>hostAddress</name></member> |
| </type> |
| <type category="union" name="VkDeviceOrHostAddressConstKHR"> |
| <member noautovalidity="true"><type>VkDeviceAddress</type> <name>deviceAddress</name></member> |
| <member noautovalidity="true">const <type>void</type>* <name>hostAddress</name></member> |
| </type> |
| <type category="union" name="VkDeviceOrHostAddressConstAMDX"> |
| <member noautovalidity="true"><type>VkDeviceAddress</type> <name>deviceAddress</name></member> |
| <member noautovalidity="true">const <type>void</type>* <name>hostAddress</name></member> |
| </type> |
| <type category="struct" name="VkAccelerationStructureGeometryTrianglesDataKHR"> |
| <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkFormat</type> <name>vertexFormat</name></member> |
| <member noautovalidity="true"><type>VkDeviceOrHostAddressConstKHR</type> <name>vertexData</name></member> |
| <member><type>VkDeviceSize</type> <name>vertexStride</name></member> |
| <member><type>uint32_t</type> <name>maxVertex</name></member> |
| <member><type>VkIndexType</type> <name>indexType</name></member> |
| <member noautovalidity="true"><type>VkDeviceOrHostAddressConstKHR</type> <name>indexData</name></member> |
| <member noautovalidity="true"><type>VkDeviceOrHostAddressConstKHR</type> <name>transformData</name></member> |
| </type> |
| <type category="struct" name="VkAccelerationStructureGeometryAabbsDataKHR"> |
| <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member noautovalidity="true"><type>VkDeviceOrHostAddressConstKHR</type> <name>data</name></member> |
| <member><type>VkDeviceSize</type> <name>stride</name></member> |
| </type> |
| <type category="struct" name="VkAccelerationStructureGeometryInstancesDataKHR"> |
| <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>arrayOfPointers</name></member> |
| <member noautovalidity="true"><type>VkDeviceOrHostAddressConstKHR</type> <name>data</name></member> |
| </type> |
| <type category="union" name="VkAccelerationStructureGeometryDataKHR"> |
| <member selection="VK_GEOMETRY_TYPE_TRIANGLES_KHR"><type>VkAccelerationStructureGeometryTrianglesDataKHR</type> <name>triangles</name></member> |
| <member selection="VK_GEOMETRY_TYPE_AABBS_KHR"><type>VkAccelerationStructureGeometryAabbsDataKHR</type> <name>aabbs</name></member> |
| <member selection="VK_GEOMETRY_TYPE_INSTANCES_KHR"><type>VkAccelerationStructureGeometryInstancesDataKHR</type> <name>instances</name></member> |
| </type> |
| <type category="struct" name="VkAccelerationStructureGeometryKHR"> |
| <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkGeometryTypeKHR</type> <name>geometryType</name></member> |
| <member selector="geometryType"><type>VkAccelerationStructureGeometryDataKHR</type> <name>geometry</name></member> |
| <member optional="true"><type>VkGeometryFlagsKHR</type> <name>flags</name></member> |
| </type> |
| <type category="struct" name="VkAccelerationStructureBuildGeometryInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkAccelerationStructureTypeKHR</type> <name>type</name></member> |
| <member optional="true"><type>VkBuildAccelerationStructureFlagsKHR</type> <name>flags</name></member> |
| <member noautovalidity="true"><type>VkBuildAccelerationStructureModeKHR</type> <name>mode</name></member> |
| <member optional="true" noautovalidity="true"><type>VkAccelerationStructureKHR</type> <name>srcAccelerationStructure</name></member> |
| <member optional="true" noautovalidity="true"><type>VkAccelerationStructureKHR</type> <name>dstAccelerationStructure</name></member> |
| <member optional="true"><type>uint32_t</type> <name>geometryCount</name></member> |
| <member len="geometryCount" optional="true">const <type>VkAccelerationStructureGeometryKHR</type>* <name>pGeometries</name></member> |
| <member len="geometryCount,1" optional="true,false">const <type>VkAccelerationStructureGeometryKHR</type>* const* <name>ppGeometries</name></member> |
| <member noautovalidity="true"><type>VkDeviceOrHostAddressKHR</type> <name>scratchData</name></member> |
| </type> |
| <type category="struct" name="VkAccelerationStructureBuildRangeInfoKHR"> |
| <member><type>uint32_t</type> <name>primitiveCount</name></member> |
| <member><type>uint32_t</type> <name>primitiveOffset</name></member> |
| <member><type>uint32_t</type> <name>firstVertex</name></member> |
| <member><type>uint32_t</type> <name>transformOffset</name></member> |
| </type> |
| <type category="struct" name="VkAccelerationStructureCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkAccelerationStructureCreateFlagsKHR</type> <name>createFlags</name></member> |
| <member><type>VkBuffer</type> <name>buffer</name></member> |
| <member><type>VkDeviceSize</type> <name>offset</name><comment>Specified in bytes</comment></member> |
| <member><type>VkDeviceSize</type> <name>size</name></member> |
| <member><type>VkAccelerationStructureTypeKHR</type> <name>type</name></member> |
| <member optional="true"><type>VkDeviceAddress</type> <name>deviceAddress</name></member> |
| </type> |
| <type category="struct" name="VkAabbPositionsKHR"> |
| <member><type>float</type> <name>minX</name></member> |
| <member><type>float</type> <name>minY</name></member> |
| <member><type>float</type> <name>minZ</name></member> |
| <member><type>float</type> <name>maxX</name></member> |
| <member><type>float</type> <name>maxY</name></member> |
| <member><type>float</type> <name>maxZ</name></member> |
| </type> |
| <type category="struct" name="VkAabbPositionsNV" alias="VkAabbPositionsKHR"/> |
| <type category="struct" name="VkTransformMatrixKHR"> |
| <member><type>float</type> <name>matrix</name>[3][4]</member> |
| </type> |
| <type category="struct" name="VkTransformMatrixNV" alias="VkTransformMatrixKHR"/> |
| <type category="struct" name="VkAccelerationStructureInstanceKHR"> |
| <comment>The bitfields in this structure are non-normative since bitfield ordering is implementation-defined in C. The specification defines the normative layout.</comment> |
| <member><type>VkTransformMatrixKHR</type> <name>transform</name></member> |
| <member><type>uint32_t</type> <name>instanceCustomIndex</name>:24</member> |
| <member><type>uint32_t</type> <name>mask</name>:8</member> |
| <member><type>uint32_t</type> <name>instanceShaderBindingTableRecordOffset</name>:24</member> |
| <member optional="true"><type>VkGeometryInstanceFlagsKHR</type> <name>flags</name>:8</member> |
| <member><type>uint64_t</type> <name>accelerationStructureReference</name></member> |
| </type> |
| <type category="struct" name="VkAccelerationStructureInstanceNV" alias="VkAccelerationStructureInstanceKHR"/> |
| <type category="struct" name="VkAccelerationStructureDeviceAddressInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkAccelerationStructureKHR</type> <name>accelerationStructure</name></member> |
| </type> |
| <type category="struct" name="VkAccelerationStructureVersionInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member len="latexmath:[2 \times \mathtt{VK\_UUID\_SIZE}]" altlen="2*VK_UUID_SIZE">const <type>uint8_t</type>* <name>pVersionData</name></member> |
| </type> |
| <type category="struct" name="VkCopyAccelerationStructureInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkAccelerationStructureKHR</type> <name>src</name></member> |
| <member><type>VkAccelerationStructureKHR</type> <name>dst</name></member> |
| <member><type>VkCopyAccelerationStructureModeKHR</type> <name>mode</name></member> |
| </type> |
| <type category="struct" name="VkCopyAccelerationStructureToMemoryInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkAccelerationStructureKHR</type> <name>src</name></member> |
| <member noautovalidity="true"><type>VkDeviceOrHostAddressKHR</type> <name>dst</name></member> |
| <member><type>VkCopyAccelerationStructureModeKHR</type> <name>mode</name></member> |
| </type> |
| <type category="struct" name="VkCopyMemoryToAccelerationStructureInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member noautovalidity="true"><type>VkDeviceOrHostAddressConstKHR</type> <name>src</name></member> |
| <member><type>VkAccelerationStructureKHR</type> <name>dst</name></member> |
| <member><type>VkCopyAccelerationStructureModeKHR</type> <name>mode</name></member> |
| </type> |
| <type category="struct" name="VkRayTracingPipelineInterfaceCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>maxPipelineRayPayloadSize</name></member> |
| <member><type>uint32_t</type> <name>maxPipelineRayHitAttributeSize</name></member> |
| </type> |
| <type category="struct" name="VkPipelineLibraryCreateInfoKHR" structextends="VkGraphicsPipelineCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>libraryCount</name></member> |
| <member len="libraryCount">const <type>VkPipeline</type>* <name>pLibraries</name></member> |
| </type> |
| <type category="struct" name="VkRefreshObjectKHR"> |
| <member><type>VkObjectType</type> <name>objectType</name></member> |
| <member objecttype="objectType" externsync="true"><type>uint64_t</type> <name>objectHandle</name></member> |
| <member optional="true"><type>VkRefreshObjectFlagsKHR</type> <name>flags</name></member> |
| </type> |
| <type category="struct" name="VkRefreshObjectListKHR"> |
| <member values="VK_STRUCTURE_TYPE_REFRESH_OBJECT_LIST_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>objectCount</name></member> |
| <member len="objectCount">const <type>VkRefreshObjectKHR</type>* <name>pObjects</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceExtendedDynamicStateFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceExtendedDynamicState2FeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState2</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState2LogicOp</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState2PatchControlPoints</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceExtendedDynamicState3FeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3TessellationDomainOrigin</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3DepthClampEnable</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3PolygonMode</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3RasterizationSamples</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3SampleMask</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3AlphaToCoverageEnable</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3AlphaToOneEnable</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3LogicOpEnable</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3ColorBlendEnable</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3ColorBlendEquation</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3ColorWriteMask</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3RasterizationStream</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3ConservativeRasterizationMode</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3ExtraPrimitiveOverestimationSize</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3DepthClipEnable</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3SampleLocationsEnable</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3ColorBlendAdvanced</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3ProvokingVertexMode</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3LineRasterizationMode</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3LineStippleEnable</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3DepthClipNegativeOneToOne</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3ViewportWScalingEnable</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3ViewportSwizzle</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3CoverageToColorEnable</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3CoverageToColorLocation</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3CoverageModulationMode</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3CoverageModulationTableEnable</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3CoverageModulationTable</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3CoverageReductionMode</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3RepresentativeFragmentTestEnable</name></member> |
| <member><type>VkBool32</type> <name>extendedDynamicState3ShadingRateImageEnable</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceExtendedDynamicState3PropertiesEXT" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>dynamicPrimitiveTopologyUnrestricted</name></member> |
| </type> |
| <type category="struct" name="VkColorBlendEquationEXT"> |
| <member><type>VkBlendFactor</type> <name>srcColorBlendFactor</name></member> |
| <member><type>VkBlendFactor</type> <name>dstColorBlendFactor</name></member> |
| <member><type>VkBlendOp</type> <name>colorBlendOp</name></member> |
| <member><type>VkBlendFactor</type> <name>srcAlphaBlendFactor</name></member> |
| <member><type>VkBlendFactor</type> <name>dstAlphaBlendFactor</name></member> |
| <member><type>VkBlendOp</type> <name>alphaBlendOp</name></member> |
| </type> |
| <type category="struct" name="VkColorBlendAdvancedEXT"> |
| <member><type>VkBlendOp</type> <name>advancedBlendOp</name></member> |
| <member><type>VkBool32</type> <name>srcPremultiplied</name></member> |
| <member><type>VkBool32</type> <name>dstPremultiplied</name></member> |
| <member><type>VkBlendOverlapEXT</type> <name>blendOverlap</name></member> |
| <member><type>VkBool32</type> <name>clampResults</name></member> |
| </type> |
| <type category="struct" name="VkRenderPassTransformBeginInfoQCOM" structextends="VkRenderPassBeginInfo"> |
| <member values="VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name><comment>Pointer to next structure</comment></member> |
| <member noautovalidity="true"><type>VkSurfaceTransformFlagBitsKHR</type> <name>transform</name></member> |
| </type> |
| <type category="struct" name="VkCopyCommandTransformInfoQCOM" structextends="VkBufferImageCopy2,VkImageBlit2"> |
| <member values="VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true">const <type>void</type>* <name>pNext</name></member> |
| <member noautovalidity="true"><type>VkSurfaceTransformFlagBitsKHR</type> <name>transform</name></member> |
| </type> |
| <type category="struct" name="VkCommandBufferInheritanceRenderPassTransformInfoQCOM" structextends="VkCommandBufferInheritanceInfo"> |
| <member values="VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name><comment>Pointer to next structure</comment></member> |
| <member noautovalidity="true"><type>VkSurfaceTransformFlagBitsKHR</type> <name>transform</name></member> |
| <member><type>VkRect2D</type> <name>renderArea</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceDiagnosticsConfigFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>diagnosticsConfig</name></member> |
| </type> |
| <type category="struct" name="VkDeviceDiagnosticsConfigCreateInfoNV" structextends="VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkDeviceDiagnosticsConfigFlagsNV</type> <name>flags</name></member> |
| </type> |
| <type category="struct" name="VkPipelineOfflineCreateInfo" structextends="VkGraphicsPipelineCreateInfo,VkComputePipelineCreateInfo,VkRayTracingPipelineCreateInfoKHR,VkRayTracingPipelineCreateInfoNV"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_OFFLINE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint8_t</type> <name>pipelineIdentifier</name>[<enum>VK_UUID_SIZE</enum>]</member> |
| <member><type>VkPipelineMatchControl</type> <name>matchControl</name></member> |
| <member><type>VkDeviceSize</type> <name>poolEntrySize</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>shaderZeroInitializeWorkgroupMemory</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR" alias="VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures"/> |
| <type category="struct" name="VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>shaderSubgroupUniformControlFlow</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceRobustness2FeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>robustBufferAccess2</name></member> |
| <member><type>VkBool32</type> <name>robustImageAccess2</name></member> |
| <member><type>VkBool32</type> <name>nullDescriptor</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceRobustness2PropertiesEXT" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="min,pot"><type>VkDeviceSize</type> <name>robustStorageBufferAccessSizeAlignment</name></member> |
| <member limittype="min,pot"><type>VkDeviceSize</type> <name>robustUniformBufferAccessSizeAlignment</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceImageRobustnessFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>robustImageAccess</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceImageRobustnessFeaturesEXT" alias="VkPhysicalDeviceImageRobustnessFeatures"/> |
| <type category="struct" name="VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>workgroupMemoryExplicitLayout</name></member> |
| <member><type>VkBool32</type> <name>workgroupMemoryExplicitLayoutScalarBlockLayout</name></member> |
| <member><type>VkBool32</type> <name>workgroupMemoryExplicitLayout8BitAccess</name></member> |
| <member><type>VkBool32</type> <name>workgroupMemoryExplicitLayout16BitAccess</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevicePortabilitySubsetFeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>constantAlphaColorBlendFactors</name></member> |
| <member><type>VkBool32</type> <name>events</name></member> |
| <member><type>VkBool32</type> <name>imageViewFormatReinterpretation</name></member> |
| <member><type>VkBool32</type> <name>imageViewFormatSwizzle</name></member> |
| <member><type>VkBool32</type> <name>imageView2DOn3DImage</name></member> |
| <member><type>VkBool32</type> <name>multisampleArrayImage</name></member> |
| <member><type>VkBool32</type> <name>mutableComparisonSamplers</name></member> |
| <member><type>VkBool32</type> <name>pointPolygons</name></member> |
| <member><type>VkBool32</type> <name>samplerMipLodBias</name></member> |
| <member><type>VkBool32</type> <name>separateStencilMaskRef</name></member> |
| <member><type>VkBool32</type> <name>shaderSampleRateInterpolationFunctions</name></member> |
| <member><type>VkBool32</type> <name>tessellationIsolines</name></member> |
| <member><type>VkBool32</type> <name>tessellationPointMode</name></member> |
| <member><type>VkBool32</type> <name>triangleFans</name></member> |
| <member><type>VkBool32</type> <name>vertexAttributeAccessBeyondStride</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevicePortabilitySubsetPropertiesKHR" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="min,pot"><type>uint32_t</type> <name>minVertexInputBindingStrideAlignment</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevice4444FormatsFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>formatA4R4G4B4</name></member> |
| <member><type>VkBool32</type> <name>formatA4B4G4R4</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceSubpassShadingFeaturesHUAWEI" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>subpassShading</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_FEATURES_HUAWEI"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>*<name>pNext</name></member> |
| <member><type>VkBool32</type> <name>clustercullingShader</name></member> |
| <member><type>VkBool32</type> <name>multiviewClusterCullingShader</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI" structextends="VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_VRS_FEATURES_HUAWEI"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>*<name>pNext</name></member> |
| <member><type>VkBool32</type> <name>clusterShadingRate</name></member> |
| </type> |
| <type category="struct" name="VkBufferCopy2"> |
| <member values="VK_STRUCTURE_TYPE_BUFFER_COPY_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceSize</type> <name>srcOffset</name><comment>Specified in bytes</comment></member> |
| <member><type>VkDeviceSize</type> <name>dstOffset</name><comment>Specified in bytes</comment></member> |
| <member noautovalidity="true"><type>VkDeviceSize</type> <name>size</name><comment>Specified in bytes</comment></member> |
| </type> |
| <type category="struct" name="VkBufferCopy2KHR" alias="VkBufferCopy2"/> |
| <type category="struct" name="VkImageCopy2"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_COPY_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkImageSubresourceLayers</type> <name>srcSubresource</name></member> |
| <member><type>VkOffset3D</type> <name>srcOffset</name><comment>Specified in pixels for both compressed and uncompressed images</comment></member> |
| <member><type>VkImageSubresourceLayers</type> <name>dstSubresource</name></member> |
| <member><type>VkOffset3D</type> <name>dstOffset</name><comment>Specified in pixels for both compressed and uncompressed images</comment></member> |
| <member><type>VkExtent3D</type> <name>extent</name><comment>Specified in pixels for both compressed and uncompressed images</comment></member> |
| </type> |
| <type category="struct" name="VkImageCopy2KHR" alias="VkImageCopy2"/> |
| <type category="struct" name="VkImageBlit2"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_BLIT_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkImageSubresourceLayers</type> <name>srcSubresource</name></member> |
| <member><type>VkOffset3D</type> <name>srcOffsets</name>[2]<comment>Specified in pixels for both compressed and uncompressed images</comment></member> |
| <member><type>VkImageSubresourceLayers</type> <name>dstSubresource</name></member> |
| <member><type>VkOffset3D</type> <name>dstOffsets</name>[2]<comment>Specified in pixels for both compressed and uncompressed images</comment></member> |
| </type> |
| <type category="struct" name="VkImageBlit2KHR" alias="VkImageBlit2"/> |
| <type category="struct" name="VkBufferImageCopy2"> |
| <member values="VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceSize</type> <name>bufferOffset</name><comment>Specified in bytes</comment></member> |
| <member><type>uint32_t</type> <name>bufferRowLength</name><comment>Specified in texels</comment></member> |
| <member><type>uint32_t</type> <name>bufferImageHeight</name></member> |
| <member><type>VkImageSubresourceLayers</type> <name>imageSubresource</name></member> |
| <member><type>VkOffset3D</type> <name>imageOffset</name><comment>Specified in pixels for both compressed and uncompressed images</comment></member> |
| <member><type>VkExtent3D</type> <name>imageExtent</name><comment>Specified in pixels for both compressed and uncompressed images</comment></member> |
| </type> |
| <type category="struct" name="VkBufferImageCopy2KHR" alias="VkBufferImageCopy2"/> |
| <type category="struct" name="VkImageResolve2"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkImageSubresourceLayers</type> <name>srcSubresource</name></member> |
| <member><type>VkOffset3D</type> <name>srcOffset</name></member> |
| <member><type>VkImageSubresourceLayers</type> <name>dstSubresource</name></member> |
| <member><type>VkOffset3D</type> <name>dstOffset</name></member> |
| <member><type>VkExtent3D</type> <name>extent</name></member> |
| </type> |
| <type category="struct" name="VkImageResolve2KHR" alias="VkImageResolve2"/> |
| <type category="struct" name="VkCopyBufferInfo2"> |
| <member values="VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBuffer</type> <name>srcBuffer</name></member> |
| <member><type>VkBuffer</type> <name>dstBuffer</name></member> |
| <member><type>uint32_t</type> <name>regionCount</name></member> |
| <member len="regionCount">const <type>VkBufferCopy2</type>* <name>pRegions</name></member> |
| </type> |
| <type category="struct" name="VkCopyBufferInfo2KHR" alias="VkCopyBufferInfo2"/> |
| <type category="struct" name="VkCopyImageInfo2"> |
| <member values="VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkImage</type> <name>srcImage</name></member> |
| <member><type>VkImageLayout</type> <name>srcImageLayout</name></member> |
| <member><type>VkImage</type> <name>dstImage</name></member> |
| <member><type>VkImageLayout</type> <name>dstImageLayout</name></member> |
| <member><type>uint32_t</type> <name>regionCount</name></member> |
| <member len="regionCount">const <type>VkImageCopy2</type>* <name>pRegions</name></member> |
| </type> |
| <type category="struct" name="VkCopyImageInfo2KHR" alias="VkCopyImageInfo2"/> |
| <type category="struct" name="VkBlitImageInfo2"> |
| <member values="VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkImage</type> <name>srcImage</name></member> |
| <member><type>VkImageLayout</type> <name>srcImageLayout</name></member> |
| <member><type>VkImage</type> <name>dstImage</name></member> |
| <member><type>VkImageLayout</type> <name>dstImageLayout</name></member> |
| <member><type>uint32_t</type> <name>regionCount</name></member> |
| <member len="regionCount">const <type>VkImageBlit2</type>* <name>pRegions</name></member> |
| <member><type>VkFilter</type> <name>filter</name></member> |
| </type> |
| <type category="struct" name="VkBlitImageInfo2KHR" alias="VkBlitImageInfo2"/> |
| <type category="struct" name="VkCopyBufferToImageInfo2"> |
| <member values="VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBuffer</type> <name>srcBuffer</name></member> |
| <member><type>VkImage</type> <name>dstImage</name></member> |
| <member><type>VkImageLayout</type> <name>dstImageLayout</name></member> |
| <member><type>uint32_t</type> <name>regionCount</name></member> |
| <member len="regionCount">const <type>VkBufferImageCopy2</type>* <name>pRegions</name></member> |
| </type> |
| <type category="struct" name="VkCopyBufferToImageInfo2KHR" alias="VkCopyBufferToImageInfo2"/> |
| <type category="struct" name="VkCopyImageToBufferInfo2"> |
| <member values="VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkImage</type> <name>srcImage</name></member> |
| <member><type>VkImageLayout</type> <name>srcImageLayout</name></member> |
| <member><type>VkBuffer</type> <name>dstBuffer</name></member> |
| <member><type>uint32_t</type> <name>regionCount</name></member> |
| <member len="regionCount">const <type>VkBufferImageCopy2</type>* <name>pRegions</name></member> |
| </type> |
| <type category="struct" name="VkCopyImageToBufferInfo2KHR" alias="VkCopyImageToBufferInfo2"/> |
| <type category="struct" name="VkResolveImageInfo2"> |
| <member values="VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkImage</type> <name>srcImage</name></member> |
| <member><type>VkImageLayout</type> <name>srcImageLayout</name></member> |
| <member><type>VkImage</type> <name>dstImage</name></member> |
| <member><type>VkImageLayout</type> <name>dstImageLayout</name></member> |
| <member><type>uint32_t</type> <name>regionCount</name></member> |
| <member len="regionCount">const <type>VkImageResolve2</type>* <name>pRegions</name></member> |
| </type> |
| <type category="struct" name="VkResolveImageInfo2KHR" alias="VkResolveImageInfo2"/> |
| <type category="struct" name="VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>shaderImageInt64Atomics</name></member> |
| <member><type>VkBool32</type> <name>sparseImageInt64Atomics</name></member> |
| </type> |
| <type category="struct" name="VkFragmentShadingRateAttachmentInfoKHR" structextends="VkSubpassDescription2"> |
| <member values="VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true">const <type>VkAttachmentReference2</type>* <name>pFragmentShadingRateAttachment</name></member> |
| <member><type>VkExtent2D</type> <name>shadingRateAttachmentTexelSize</name></member> |
| </type> |
| <type category="struct" name="VkPipelineFragmentShadingRateStateCreateInfoKHR" structextends="VkGraphicsPipelineCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkExtent2D</type> <name>fragmentSize</name></member> |
| <member noautovalidity="true"><type>VkFragmentShadingRateCombinerOpKHR</type> <name>combinerOps</name>[2]</member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceFragmentShadingRateFeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>pipelineFragmentShadingRate</name></member> |
| <member><type>VkBool32</type> <name>primitiveFragmentShadingRate</name></member> |
| <member><type>VkBool32</type> <name>attachmentFragmentShadingRate</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceFragmentShadingRatePropertiesKHR" structextends="VkPhysicalDeviceProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="min"><type>VkExtent2D</type> <name>minFragmentShadingRateAttachmentTexelSize</name></member> |
| <member limittype="max"><type>VkExtent2D</type> <name>maxFragmentShadingRateAttachmentTexelSize</name></member> |
| <member limittype="max,pot"><type>uint32_t</type> <name>maxFragmentShadingRateAttachmentTexelSizeAspectRatio</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>primitiveFragmentShadingRateWithMultipleViewports</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>layeredShadingRateAttachments</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>fragmentShadingRateNonTrivialCombinerOps</name></member> |
| <member limittype="max"><type>VkExtent2D</type> <name>maxFragmentSize</name></member> |
| <member limittype="max,pot"><type>uint32_t</type> <name>maxFragmentSizeAspectRatio</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxFragmentShadingRateCoverageSamples</name></member> |
| <member limittype="max"><type>VkSampleCountFlagBits</type> <name>maxFragmentShadingRateRasterizationSamples</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>fragmentShadingRateWithShaderDepthStencilWrites</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>fragmentShadingRateWithSampleMask</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>fragmentShadingRateWithShaderSampleMask</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>fragmentShadingRateWithConservativeRasterization</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>fragmentShadingRateWithFragmentShaderInterlock</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>fragmentShadingRateWithCustomSampleLocations</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>fragmentShadingRateStrictMultiplyCombiner</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceFragmentShadingRateKHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkSampleCountFlags</type> <name>sampleCounts</name></member> |
| <member><type>VkExtent2D</type> <name>fragmentSize</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceShaderTerminateInvocationFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>shaderTerminateInvocation</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR" alias="VkPhysicalDeviceShaderTerminateInvocationFeatures"/> |
| <type category="struct" name="VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>fragmentShadingRateEnums</name></member> |
| <member><type>VkBool32</type> <name>supersampleFragmentShadingRates</name></member> |
| <member><type>VkBool32</type> <name>noInvocationFragmentShadingRates</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>VkSampleCountFlagBits</type> <name>maxFragmentShadingRateInvocationCount</name></member> |
| </type> |
| <type category="struct" name="VkPipelineFragmentShadingRateEnumStateCreateInfoNV" structextends="VkGraphicsPipelineCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member noautovalidity="true"><type>VkFragmentShadingRateTypeNV</type> <name>shadingRateType</name></member> |
| <member noautovalidity="true"><type>VkFragmentShadingRateNV</type> <name>shadingRate</name></member> |
| <member noautovalidity="true"><type>VkFragmentShadingRateCombinerOpKHR</type> <name>combinerOps</name>[2]</member> |
| </type> |
| <type category="struct" name="VkAccelerationStructureBuildSizesInfoKHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceSize</type> <name>accelerationStructureSize</name></member> |
| <member><type>VkDeviceSize</type> <name>updateScratchSize</name></member> |
| <member><type>VkDeviceSize</type> <name>buildScratchSize</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceImage2DViewOf3DFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>image2DViewOf3D</name></member> |
| <member><type>VkBool32</type> <name>sampler2DViewOf3D</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_SLICED_VIEW_OF_3D_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>imageSlicedViewOf3D</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_DYNAMIC_STATE_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>attachmentFeedbackLoopDynamicState</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>legacyVertexAttributes</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>nativeUnalignedPerformance</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>mutableDescriptorType</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE" alias="VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT"/> |
| <type category="struct" name="VkMutableDescriptorTypeListEXT"> |
| <member optional="true"><type>uint32_t</type> <name>descriptorTypeCount</name></member> |
| <member len="descriptorTypeCount">const <type>VkDescriptorType</type>* <name>pDescriptorTypes</name></member> |
| </type> |
| <type category="struct" name="VkMutableDescriptorTypeListVALVE" alias="VkMutableDescriptorTypeListEXT"/> |
| <type category="struct" name="VkMutableDescriptorTypeCreateInfoEXT" structextends="VkDescriptorSetLayoutCreateInfo,VkDescriptorPoolCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>mutableDescriptorTypeListCount</name></member> |
| <member len="mutableDescriptorTypeListCount">const <type>VkMutableDescriptorTypeListEXT</type>* <name>pMutableDescriptorTypeLists</name></member> |
| </type> |
| <type category="struct" name="VkMutableDescriptorTypeCreateInfoVALVE" alias="VkMutableDescriptorTypeCreateInfoEXT"/> |
| <type category="struct" name="VkPhysicalDeviceDepthClipControlFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>depthClipControl</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>deviceGeneratedCommands</name></member> |
| <member><type>VkBool32</type> <name>dynamicGeneratedPipelineLayout</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxIndirectPipelineCount</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxIndirectShaderObjectCount</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxIndirectSequenceCount</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxIndirectCommandsTokenCount</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxIndirectCommandsTokenOffset</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxIndirectCommandsIndirectStride</name></member> |
| <member limittype="bitmask"><type>VkIndirectCommandsInputModeFlagsEXT</type> <name>supportedIndirectCommandsInputModes</name></member> |
| <member limittype="bitmask"><type>VkShaderStageFlags</type> <name>supportedIndirectCommandsShaderStages</name></member> |
| <member limittype="bitmask"><type>VkShaderStageFlags</type> <name>supportedIndirectCommandsShaderStagesPipelineBinding</name></member> |
| <member limittype="bitmask"><type>VkShaderStageFlags</type> <name>supportedIndirectCommandsShaderStagesShaderBinding</name></member> |
| <member><type>VkBool32</type> <name>deviceGeneratedCommandsTransformFeedback</name></member> |
| <member><type>VkBool32</type> <name>deviceGeneratedCommandsMultiDrawIndirectCount</name></member> |
| </type> |
| <type category="struct" name="VkGeneratedCommandsPipelineInfoEXT" structextends="VkGeneratedCommandsInfoEXT,VkGeneratedCommandsMemoryRequirementsInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_GENERATED_COMMANDS_PIPELINE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkPipeline</type> <name>pipeline</name></member> |
| </type> |
| <type category="struct" name="VkGeneratedCommandsShaderInfoEXT" structextends="VkGeneratedCommandsInfoEXT,VkGeneratedCommandsMemoryRequirementsInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_GENERATED_COMMANDS_SHADER_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>shaderCount</name></member> |
| <member len="shaderCount">const <type>VkShaderEXT</type>* <name>pShaders</name></member> |
| </type> |
| <type category="struct" name="VkGeneratedCommandsMemoryRequirementsInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkIndirectExecutionSetEXT</type> <name>indirectExecutionSet</name></member> |
| <member><type>VkIndirectCommandsLayoutEXT</type> <name>indirectCommandsLayout</name></member> |
| <member><type>uint32_t</type> <name>maxSequenceCount</name></member> |
| <member><type>uint32_t</type> <name>maxDrawCount</name></member> |
| </type> |
| <type category="struct" name="VkIndirectExecutionSetPipelineInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_INDIRECT_EXECUTION_SET_PIPELINE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkPipeline</type> <name>initialPipeline</name></member> |
| <member><type>uint32_t</type> <name>maxPipelineCount</name></member> |
| </type> |
| <type category="struct" name="VkIndirectExecutionSetShaderLayoutInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_INDIRECT_EXECUTION_SET_SHADER_LAYOUT_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>setLayoutCount</name></member> |
| <member len="setLayoutCount" optional="false,true">const <type>VkDescriptorSetLayout</type>* <name>pSetLayouts</name></member> |
| </type> |
| <type category="struct" name="VkIndirectExecutionSetShaderInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_INDIRECT_EXECUTION_SET_SHADER_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>shaderCount</name></member> |
| <member len="shaderCount">const <type>VkShaderEXT</type>* <name>pInitialShaders</name></member> |
| <member len="shaderCount" optional="true">const <type>VkIndirectExecutionSetShaderLayoutInfoEXT</type>* <name>pSetLayoutInfos</name></member> |
| <member><type>uint32_t</type> <name>maxShaderCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>pushConstantRangeCount</name></member> |
| <member len="pushConstantRangeCount">const <type>VkPushConstantRange</type>* <name>pPushConstantRanges</name></member> |
| </type> |
| <type category="union" name="VkIndirectExecutionSetInfoEXT"> |
| <member selection="VK_INDIRECT_EXECUTION_SET_INFO_TYPE_PIPELINES_EXT">const <type>VkIndirectExecutionSetPipelineInfoEXT</type>* <name>pPipelineInfo</name></member> |
| <member selection="VK_INDIRECT_EXECUTION_SET_INFO_TYPE_SHADER_OBJECTS_EXT">const <type>VkIndirectExecutionSetShaderInfoEXT</type>* <name>pShaderInfo</name></member> |
| </type> |
| <type category="struct" name="VkIndirectExecutionSetCreateInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_INDIRECT_EXECUTION_SET_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkIndirectExecutionSetInfoTypeEXT</type> <name>type</name></member> |
| <member selector="type" noautovalidity="true"><type>VkIndirectExecutionSetInfoEXT</type> <name>info</name></member> |
| </type> |
| <type category="struct" name="VkGeneratedCommandsInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkShaderStageFlags</type> <name>shaderStages</name></member> |
| <member optional="true"><type>VkIndirectExecutionSetEXT</type> <name>indirectExecutionSet</name></member> |
| <member><type>VkIndirectCommandsLayoutEXT</type> <name>indirectCommandsLayout</name></member> |
| <member><type>VkDeviceAddress</type> <name>indirectAddress</name></member> |
| <member><type>VkDeviceSize</type> <name>indirectAddressSize</name></member> |
| <member optional="true"><type>VkDeviceAddress</type> <name>preprocessAddress</name></member> |
| <member><type>VkDeviceSize</type> <name>preprocessSize</name></member> |
| <member><type>uint32_t</type> <name>maxSequenceCount</name></member> |
| <member optional="true"><type>VkDeviceAddress</type> <name>sequenceCountAddress</name></member> |
| <member><type>uint32_t</type> <name>maxDrawCount</name></member> |
| </type> |
| <type category="struct" name="VkWriteIndirectExecutionSetPipelineEXT"> |
| <member values="VK_STRUCTURE_TYPE_WRITE_INDIRECT_EXECUTION_SET_PIPELINE_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>index</name></member> |
| <member><type>VkPipeline</type> <name>pipeline</name></member> |
| </type> |
| <type category="struct" name="VkWriteIndirectExecutionSetShaderEXT"> |
| <member values="VK_STRUCTURE_TYPE_WRITE_INDIRECT_EXECUTION_SET_SHADER_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>index</name></member> |
| <member><type>VkShaderEXT</type> <name>shader</name></member> |
| </type> |
| <type category="struct" name="VkIndirectCommandsLayoutCreateInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkIndirectCommandsLayoutUsageFlagsEXT</type> <name>flags</name></member> |
| <member><type>VkShaderStageFlags</type> <name>shaderStages</name></member> |
| <member><type>uint32_t</type> <name>indirectStride</name></member> |
| <member optional="true"><type>VkPipelineLayout</type> <name>pipelineLayout</name></member> |
| <member><type>uint32_t</type> <name>tokenCount</name></member> |
| <member len="tokenCount">const <type>VkIndirectCommandsLayoutTokenEXT</type>* <name>pTokens</name></member> |
| </type> |
| <type category="struct" name="VkIndirectCommandsLayoutTokenEXT"> |
| <member values="VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkIndirectCommandsTokenTypeEXT</type> <name>type</name></member> |
| <member selector="type" noautovalidity="true"><type>VkIndirectCommandsTokenDataEXT</type> <name>data</name></member> |
| <member><type>uint32_t</type> <name>offset</name></member> |
| </type> |
| <type category="struct" name="VkDrawIndirectCountIndirectCommandEXT"> |
| <member><type>VkDeviceAddress</type> <name>bufferAddress</name></member> |
| <member><type>uint32_t</type> <name>stride</name></member> |
| <member><type>uint32_t</type> <name>commandCount</name></member> |
| </type> |
| <type category="struct" name="VkIndirectCommandsVertexBufferTokenEXT"> |
| <member><type>uint32_t</type> <name>vertexBindingUnit</name></member> |
| </type> |
| <type category="struct" name="VkBindVertexBufferIndirectCommandEXT"> |
| <member><type>VkDeviceAddress</type> <name>bufferAddress</name></member> |
| <member><type>uint32_t</type> <name>size</name></member> |
| <member><type>uint32_t</type> <name>stride</name></member> |
| </type> |
| <type category="struct" name="VkIndirectCommandsIndexBufferTokenEXT"> |
| <member><type>VkIndirectCommandsInputModeFlagBitsEXT</type> <name>mode</name></member> |
| </type> |
| <type category="struct" name="VkBindIndexBufferIndirectCommandEXT"> |
| <member><type>VkDeviceAddress</type> <name>bufferAddress</name></member> |
| <member><type>uint32_t</type> <name>size</name></member> |
| <member><type>VkIndexType</type> <name>indexType</name></member> |
| </type> |
| <type category="struct" name="VkIndirectCommandsPushConstantTokenEXT"> |
| <member><type>VkPushConstantRange</type> <name>updateRange</name></member> |
| </type> |
| <type category="struct" name="VkIndirectCommandsExecutionSetTokenEXT"> |
| <member><type>VkIndirectExecutionSetInfoTypeEXT</type> <name>type</name></member> |
| <member><type>VkShaderStageFlags</type> <name>shaderStages</name></member> |
| </type> |
| <type category="union" name="VkIndirectCommandsTokenDataEXT"> |
| <member selection="VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_EXT,VK_INDIRECT_COMMANDS_TOKEN_TYPE_SEQUENCE_INDEX_EXT">const <type>VkIndirectCommandsPushConstantTokenEXT</type>* <name>pPushConstant</name></member> |
| <member selection="VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_EXT">const <type>VkIndirectCommandsVertexBufferTokenEXT</type>* <name>pVertexBuffer</name></member> |
| <member selection="VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_EXT">const <type>VkIndirectCommandsIndexBufferTokenEXT</type>* <name>pIndexBuffer</name></member> |
| <member selection="VK_INDIRECT_COMMANDS_TOKEN_TYPE_EXECUTION_SET_EXT">const <type>VkIndirectCommandsExecutionSetTokenEXT</type>* <name>pExecutionSet</name></member> |
| </type> |
| <type category="struct" name="VkPipelineViewportDepthClipControlCreateInfoEXT" structextends="VkPipelineViewportStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>negativeOneToOne</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceDepthClampControlFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_CONTROL_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>depthClampControl</name></member> |
| </type> |
| <type category="struct" name="VkPipelineViewportDepthClampControlCreateInfoEXT" structextends="VkPipelineViewportStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLAMP_CONTROL_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDepthClampModeEXT</type> <name>depthClampMode</name></member> |
| <member optional="true">const <type>VkDepthClampRangeEXT</type>* <name>pDepthClampRange</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>vertexInputDynamicState</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceExternalMemoryRDMAFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>externalMemoryRDMA</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_RELAXED_EXTENDED_INSTRUCTION_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>shaderRelaxedExtendedInstruction</name></member> |
| </type> |
| <type category="struct" name="VkVertexInputBindingDescription2EXT"> |
| <member values="VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>binding</name></member> |
| <member><type>uint32_t</type> <name>stride</name></member> |
| <member><type>VkVertexInputRate</type> <name>inputRate</name></member> |
| <member><type>uint32_t</type> <name>divisor</name></member> |
| </type> |
| <type category="struct" name="VkVertexInputAttributeDescription2EXT"> |
| <member values="VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>location</name><comment>location of the shader vertex attrib</comment></member> |
| <member><type>uint32_t</type> <name>binding</name><comment>Vertex buffer binding id</comment></member> |
| <member><type>VkFormat</type> <name>format</name><comment>format of source data</comment></member> |
| <member><type>uint32_t</type> <name>offset</name><comment>Offset of first element in bytes from base of vertex</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceColorWriteEnableFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>colorWriteEnable</name></member> |
| </type> |
| <type category="struct" name="VkPipelineColorWriteCreateInfoEXT" structextends="VkPipelineColorBlendStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>attachmentCount</name><comment># of pAttachments</comment></member> |
| <member len="attachmentCount">const <type>VkBool32</type>* <name>pColorWriteEnables</name></member> |
| </type> |
| <type category="struct" name="VkMemoryBarrier2" structextends="VkSubpassDependency2"> |
| <member values="VK_STRUCTURE_TYPE_MEMORY_BARRIER_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPipelineStageFlags2</type> <name>srcStageMask</name></member> |
| <member optional="true"><type>VkAccessFlags2</type> <name>srcAccessMask</name></member> |
| <member optional="true"><type>VkPipelineStageFlags2</type> <name>dstStageMask</name></member> |
| <member optional="true"><type>VkAccessFlags2</type> <name>dstAccessMask</name></member> |
| </type> |
| <type category="struct" name="VkMemoryBarrier2KHR" alias="VkMemoryBarrier2"/> |
| <type category="struct" name="VkImageMemoryBarrier2"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPipelineStageFlags2</type> <name>srcStageMask</name></member> |
| <member optional="true"><type>VkAccessFlags2</type> <name>srcAccessMask</name></member> |
| <member optional="true"><type>VkPipelineStageFlags2</type> <name>dstStageMask</name></member> |
| <member optional="true"><type>VkAccessFlags2</type> <name>dstAccessMask</name></member> |
| <member><type>VkImageLayout</type> <name>oldLayout</name></member> |
| <member><type>VkImageLayout</type> <name>newLayout</name></member> |
| <member><type>uint32_t</type> <name>srcQueueFamilyIndex</name></member> |
| <member><type>uint32_t</type> <name>dstQueueFamilyIndex</name></member> |
| <member><type>VkImage</type> <name>image</name></member> |
| <member><type>VkImageSubresourceRange</type> <name>subresourceRange</name></member> |
| </type> |
| <type category="struct" name="VkImageMemoryBarrier2KHR" alias="VkImageMemoryBarrier2"/> |
| <type category="struct" name="VkBufferMemoryBarrier2"> |
| <member values="VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkPipelineStageFlags2</type> <name>srcStageMask</name></member> |
| <member optional="true"><type>VkAccessFlags2</type> <name>srcAccessMask</name></member> |
| <member optional="true"><type>VkPipelineStageFlags2</type> <name>dstStageMask</name></member> |
| <member optional="true"><type>VkAccessFlags2</type> <name>dstAccessMask</name></member> |
| <member><type>uint32_t</type> <name>srcQueueFamilyIndex</name></member> |
| <member><type>uint32_t</type> <name>dstQueueFamilyIndex</name></member> |
| <member><type>VkBuffer</type> <name>buffer</name></member> |
| <member><type>VkDeviceSize</type> <name>offset</name></member> |
| <member><type>VkDeviceSize</type> <name>size</name></member> |
| </type> |
| <type category="struct" name="VkBufferMemoryBarrier2KHR" alias="VkBufferMemoryBarrier2"/> |
| <type category="struct" name="VkDependencyInfo"> |
| <member values="VK_STRUCTURE_TYPE_DEPENDENCY_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkDependencyFlags</type> <name>dependencyFlags</name></member> |
| <member optional="true"><type>uint32_t</type> <name>memoryBarrierCount</name></member> |
| <member len="memoryBarrierCount">const <type>VkMemoryBarrier2</type>* <name>pMemoryBarriers</name></member> |
| <member optional="true"><type>uint32_t</type> <name>bufferMemoryBarrierCount</name></member> |
| <member len="bufferMemoryBarrierCount">const <type>VkBufferMemoryBarrier2</type>* <name>pBufferMemoryBarriers</name></member> |
| <member optional="true"><type>uint32_t</type> <name>imageMemoryBarrierCount</name></member> |
| <member len="imageMemoryBarrierCount">const <type>VkImageMemoryBarrier2</type>* <name>pImageMemoryBarriers</name></member> |
| </type> |
| <type category="struct" name="VkDependencyInfoKHR" alias="VkDependencyInfo"/> |
| <type category="struct" name="VkSemaphoreSubmitInfo"> |
| <member values="VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkSemaphore</type> <name>semaphore</name></member> |
| <member><type>uint64_t</type> <name>value</name></member> |
| <member optional="true"><type>VkPipelineStageFlags2</type> <name>stageMask</name></member> |
| <member><type>uint32_t</type> <name>deviceIndex</name></member> |
| </type> |
| <type category="struct" name="VkSemaphoreSubmitInfoKHR" alias="VkSemaphoreSubmitInfo"/> |
| <type category="struct" name="VkCommandBufferSubmitInfo"> |
| <member values="VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkCommandBuffer</type> <name>commandBuffer</name></member> |
| <member><type>uint32_t</type> <name>deviceMask</name></member> |
| </type> |
| <type category="struct" name="VkCommandBufferSubmitInfoKHR" alias="VkCommandBufferSubmitInfo"/> |
| <type category="struct" name="VkSubmitInfo2"> |
| <member values="VK_STRUCTURE_TYPE_SUBMIT_INFO_2"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkSubmitFlags</type> <name>flags</name></member> |
| <member optional="true"><type>uint32_t</type> <name>waitSemaphoreInfoCount</name></member> |
| <member len="waitSemaphoreInfoCount">const <type>VkSemaphoreSubmitInfo</type>* <name>pWaitSemaphoreInfos</name></member> |
| <member optional="true"><type>uint32_t</type> <name>commandBufferInfoCount</name></member> |
| <member len="commandBufferInfoCount">const <type>VkCommandBufferSubmitInfo</type>* <name>pCommandBufferInfos</name></member> |
| <member optional="true"><type>uint32_t</type> <name>signalSemaphoreInfoCount</name></member> |
| <member len="signalSemaphoreInfoCount">const <type>VkSemaphoreSubmitInfo</type>* <name>pSignalSemaphoreInfos</name></member> |
| </type> |
| <type category="struct" name="VkSubmitInfo2KHR" alias="VkSubmitInfo2"/> |
| <type category="struct" name="VkQueueFamilyCheckpointProperties2NV" structextends="VkQueueFamilyProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask"><type>VkPipelineStageFlags2</type> <name>checkpointExecutionStageMask</name></member> |
| </type> |
| <type category="struct" name="VkCheckpointData2NV" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkPipelineStageFlags2</type> <name>stage</name></member> |
| <member noautovalidity="true"><type>void</type>* <name>pCheckpointMarker</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceSynchronization2Features" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>synchronization2</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceSynchronization2FeaturesKHR" alias="VkPhysicalDeviceSynchronization2Features"/> |
| <type category="struct" name="VkPhysicalDeviceHostImageCopyFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_IMAGE_COPY_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>hostImageCopy</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceHostImageCopyPropertiesEXT" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_IMAGE_COPY_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member optional="true" limittype="noauto"><type>uint32_t</type> <name>copySrcLayoutCount</name></member> |
| <member optional="true" limittype="noauto" len="copySrcLayoutCount"><type>VkImageLayout</type>* <name>pCopySrcLayouts</name></member> |
| <member optional="true" limittype="noauto"><type>uint32_t</type> <name>copyDstLayoutCount</name></member> |
| <member optional="true" limittype="noauto" len="copyDstLayoutCount"><type>VkImageLayout</type>* <name>pCopyDstLayouts</name></member> |
| <member optional="true" limittype="noauto"><type>uint8_t</type> <name>optimalTilingLayoutUUID</name>[<enum>VK_UUID_SIZE</enum>]</member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>identicalMemoryTypeRequirements</name></member> |
| </type> |
| <type category="struct" name="VkMemoryToImageCopyEXT"> |
| <member values="VK_STRUCTURE_TYPE_MEMORY_TO_IMAGE_COPY_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member>const <type>void</type>* <name>pHostPointer</name></member> |
| <member><type>uint32_t</type> <name>memoryRowLength</name><comment>Specified in texels</comment></member> |
| <member><type>uint32_t</type> <name>memoryImageHeight</name></member> |
| <member><type>VkImageSubresourceLayers</type> <name>imageSubresource</name></member> |
| <member><type>VkOffset3D</type> <name>imageOffset</name></member> |
| <member><type>VkExtent3D</type> <name>imageExtent</name></member> |
| </type> |
| <type category="struct" name="VkImageToMemoryCopyEXT"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_TO_MEMORY_COPY_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>void</type>* <name>pHostPointer</name></member> |
| <member><type>uint32_t</type> <name>memoryRowLength</name><comment>Specified in texels</comment></member> |
| <member><type>uint32_t</type> <name>memoryImageHeight</name></member> |
| <member><type>VkImageSubresourceLayers</type> <name>imageSubresource</name></member> |
| <member><type>VkOffset3D</type> <name>imageOffset</name></member> |
| <member><type>VkExtent3D</type> <name>imageExtent</name></member> |
| </type> |
| <type category="struct" name="VkCopyMemoryToImageInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_COPY_MEMORY_TO_IMAGE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkHostImageCopyFlagsEXT</type> <name>flags</name></member> |
| <member><type>VkImage</type> <name>dstImage</name></member> |
| <member><type>VkImageLayout</type> <name>dstImageLayout</name></member> |
| <member><type>uint32_t</type> <name>regionCount</name></member> |
| <member len="regionCount">const <type>VkMemoryToImageCopyEXT</type>* <name>pRegions</name></member> |
| </type> |
| <type category="struct" name="VkCopyImageToMemoryInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_COPY_IMAGE_TO_MEMORY_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkHostImageCopyFlagsEXT</type> <name>flags</name></member> |
| <member><type>VkImage</type> <name>srcImage</name></member> |
| <member><type>VkImageLayout</type> <name>srcImageLayout</name></member> |
| <member><type>uint32_t</type> <name>regionCount</name></member> |
| <member len="regionCount">const <type>VkImageToMemoryCopyEXT</type>* <name>pRegions</name></member> |
| </type> |
| <type category="struct" name="VkCopyImageToImageInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_COPY_IMAGE_TO_IMAGE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkHostImageCopyFlagsEXT</type> <name>flags</name></member> |
| <member><type>VkImage</type> <name>srcImage</name></member> |
| <member><type>VkImageLayout</type> <name>srcImageLayout</name></member> |
| <member><type>VkImage</type> <name>dstImage</name></member> |
| <member><type>VkImageLayout</type> <name>dstImageLayout</name></member> |
| <member><type>uint32_t</type> <name>regionCount</name></member> |
| <member len="regionCount">const <type>VkImageCopy2</type>* <name>pRegions</name></member> |
| </type> |
| <type category="struct" name="VkHostImageLayoutTransitionInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_HOST_IMAGE_LAYOUT_TRANSITION_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkImage</type> <name>image</name></member> |
| <member><type>VkImageLayout</type> <name>oldLayout</name></member> |
| <member><type>VkImageLayout</type> <name>newLayout</name></member> |
| <member><type>VkImageSubresourceRange</type> <name>subresourceRange</name></member> |
| </type> |
| <type category="struct" name="VkSubresourceHostMemcpySizeEXT" returnedonly="true" structextends="VkSubresourceLayout2KHR"> |
| <member values="VK_STRUCTURE_TYPE_SUBRESOURCE_HOST_MEMCPY_SIZE_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceSize</type> <name>size</name><comment>Specified in bytes</comment></member> |
| </type> |
| <type category="struct" name="VkHostImageCopyDevicePerformanceQueryEXT" returnedonly="true" structextends="VkImageFormatProperties2"> |
| <member values="VK_STRUCTURE_TYPE_HOST_IMAGE_COPY_DEVICE_PERFORMANCE_QUERY_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>optimalDeviceAccess</name><comment>Specifies if device access is optimal</comment></member> |
| <member><type>VkBool32</type> <name>identicalMemoryLayout</name><comment>Specifies if memory layout is identical</comment></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceVulkanSC10Properties" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_SC_1_0_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>deviceNoDynamicHostAllocations</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>deviceDestroyFreesMemory</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>commandPoolMultipleCommandBuffersRecording</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>commandPoolResetCommandBuffer</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>commandBufferSimultaneousUse</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>secondaryCommandBufferNullOrImagelessFramebuffer</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>recycleDescriptorSetMemory</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>recyclePipelineMemory</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxRenderPassSubpasses</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxRenderPassDependencies</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxSubpassInputAttachments</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxSubpassPreserveAttachments</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxFramebufferAttachments</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorSetLayoutBindings</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxQueryFaultCount</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxCallbackFaultCount</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxCommandPoolCommandBuffers</name></member> |
| <member limittype="max"><type>VkDeviceSize</type> <name>maxCommandBufferSize</name></member> |
| </type> |
| <type category="struct" name="VkPipelinePoolSize"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_POOL_SIZE"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceSize</type> <name>poolEntrySize</name></member> |
| <member><type>uint32_t</type> <name>poolEntryCount</name></member> |
| </type> |
| <type category="struct" name="VkDeviceObjectReservationCreateInfo" allowduplicate="true" structextends="VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_OBJECT_RESERVATION_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>pipelineCacheCreateInfoCount</name></member> |
| <member len="pipelineCacheCreateInfoCount">const <type>VkPipelineCacheCreateInfo</type>* <name>pPipelineCacheCreateInfos</name></member> |
| <member optional="true"><type>uint32_t</type> <name>pipelinePoolSizeCount</name></member> |
| <member len="pipelinePoolSizeCount">const <type>VkPipelinePoolSize</type>* <name>pPipelinePoolSizes</name></member> |
| <member optional="true"><type>uint32_t</type> <name>semaphoreRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>commandBufferRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>fenceRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>deviceMemoryRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>bufferRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>imageRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>eventRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>queryPoolRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>bufferViewRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>imageViewRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>layeredImageViewRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>pipelineCacheRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>pipelineLayoutRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>renderPassRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>graphicsPipelineRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>computePipelineRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>descriptorSetLayoutRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>samplerRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>descriptorPoolRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>descriptorSetRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>framebufferRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>commandPoolRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>samplerYcbcrConversionRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>surfaceRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>swapchainRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>displayModeRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>subpassDescriptionRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>attachmentDescriptionRequestCount</name></member> |
| <member optional="true"><type>uint32_t</type> <name>descriptorSetLayoutBindingRequestCount</name></member> |
| <member><type>uint32_t</type> <name>descriptorSetLayoutBindingLimit</name></member> |
| <member><type>uint32_t</type> <name>maxImageViewMipLevels</name></member> |
| <member><type>uint32_t</type> <name>maxImageViewArrayLayers</name></member> |
| <member><type>uint32_t</type> <name>maxLayeredImageViewMipLevels</name></member> |
| <member><type>uint32_t</type> <name>maxOcclusionQueriesPerPool</name></member> |
| <member><type>uint32_t</type> <name>maxPipelineStatisticsQueriesPerPool</name></member> |
| <member><type>uint32_t</type> <name>maxTimestampQueriesPerPool</name></member> |
| <member><type>uint32_t</type> <name>maxImmutableSamplersPerDescriptorSetLayout</name></member> |
| </type> |
| <type category="struct" name="VkCommandPoolMemoryReservationCreateInfo" structextends="VkCommandPoolCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_COMMAND_POOL_MEMORY_RESERVATION_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceSize</type> <name>commandPoolReservedSize</name></member> |
| <member><type>uint32_t</type> <name>commandPoolMaxCommandBuffers</name></member> |
| </type> |
| <type category="struct" name="VkCommandPoolMemoryConsumption" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_COMMAND_POOL_MEMORY_CONSUMPTION"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceSize</type> <name>commandPoolAllocated</name></member> |
| <member><type>VkDeviceSize</type> <name>commandPoolReservedSize</name></member> |
| <member><type>VkDeviceSize</type> <name>commandBufferAllocated</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceVulkanSC10Features" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_SC_1_0_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>shaderAtomicInstructions</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>primitivesGeneratedQuery</name></member> |
| <member><type>VkBool32</type> <name>primitivesGeneratedQueryWithRasterizerDiscard</name></member> |
| <member><type>VkBool32</type> <name>primitivesGeneratedQueryWithNonZeroStreams</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceLegacyDitheringFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_DITHERING_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>legacyDithering</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>multisampledRenderToSingleSampled</name></member> |
| </type> |
| <type category="struct" name="VkSubpassResolvePerformanceQueryEXT" returnedonly="true" structextends="VkFormatProperties2"> |
| <member values="VK_STRUCTURE_TYPE_SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>optimal</name></member> |
| </type> |
| <type category="struct" name="VkMultisampledRenderToSingleSampledInfoEXT" structextends="VkSubpassDescription2,VkRenderingInfo"> |
| <member values="VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>multisampledRenderToSingleSampledEnable</name></member> |
| <member><type>VkSampleCountFlagBits</type> <name>rasterizationSamples</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevicePipelineProtectedAccessFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>pipelineProtectedAccess</name></member> |
| </type> |
| <type category="struct" name="VkQueueFamilyVideoPropertiesKHR" returnedonly="true" structextends="VkQueueFamilyProperties2"> |
| <member values="VK_STRUCTURE_TYPE_QUEUE_FAMILY_VIDEO_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask"><type>VkVideoCodecOperationFlagsKHR</type> <name>videoCodecOperations</name></member> |
| </type> |
| <type category="struct" name="VkQueueFamilyQueryResultStatusPropertiesKHR" returnedonly="true" structextends="VkQueueFamilyProperties2"> |
| <member values="VK_STRUCTURE_TYPE_QUEUE_FAMILY_QUERY_RESULT_STATUS_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>queryResultStatusSupport</name></member> |
| </type> |
| <type category="struct" name="VkVideoProfileListInfoKHR" structextends="VkPhysicalDeviceImageFormatInfo2,VkPhysicalDeviceVideoFormatInfoKHR,VkImageCreateInfo,VkBufferCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_PROFILE_LIST_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>profileCount</name></member> |
| <member len="profileCount">const <type>VkVideoProfileInfoKHR</type>* <name>pProfiles</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceVideoFormatInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkImageUsageFlags</type> <name>imageUsage</name></member> |
| </type> |
| <type category="struct" name="VkVideoFormatPropertiesKHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="exact"><type>VkFormat</type> <name>format</name></member> |
| <member limittype="exact"><type>VkComponentMapping</type> <name>componentMapping</name></member> |
| <member limittype="bitmask"><type>VkImageCreateFlags</type> <name>imageCreateFlags</name></member> |
| <member limittype="exact"><type>VkImageType</type> <name>imageType</name></member> |
| <member limittype="exact"><type>VkImageTiling</type> <name>imageTiling</name></member> |
| <member limittype="bitmask"><type>VkImageUsageFlags</type> <name>imageUsageFlags</name></member> |
| </type> |
| <type category="struct" name="VkVideoProfileInfoKHR" structextends="VkQueryPoolCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_PROFILE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkVideoCodecOperationFlagBitsKHR</type> <name>videoCodecOperation</name></member> |
| <member><type>VkVideoChromaSubsamplingFlagsKHR</type> <name>chromaSubsampling</name></member> |
| <member><type>VkVideoComponentBitDepthFlagsKHR</type> <name>lumaBitDepth</name></member> |
| <member optional="true"><type>VkVideoComponentBitDepthFlagsKHR</type> <name>chromaBitDepth</name></member> |
| </type> |
| <type category="struct" name="VkVideoCapabilitiesKHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask"><type>VkVideoCapabilityFlagsKHR</type> <name>flags</name></member> |
| <member limittype="min,pot"><type>VkDeviceSize</type> <name>minBitstreamBufferOffsetAlignment</name></member> |
| <member limittype="min,pot"><type>VkDeviceSize</type> <name>minBitstreamBufferSizeAlignment</name></member> |
| <member limittype="min"><type>VkExtent2D</type> <name>pictureAccessGranularity</name></member> |
| <member limittype="min"><type>VkExtent2D</type> <name>minCodedExtent</name></member> |
| <member limittype="max"><type>VkExtent2D</type> <name>maxCodedExtent</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDpbSlots</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxActiveReferencePictures</name></member> |
| <member limittype="noauto"><type>VkExtensionProperties</type> <name>stdHeaderVersion</name></member> |
| </type> |
| <type category="struct" name="VkVideoSessionMemoryRequirementsKHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_SESSION_MEMORY_REQUIREMENTS_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>memoryBindIndex</name></member> |
| <member><type>VkMemoryRequirements</type> <name>memoryRequirements</name></member> |
| </type> |
| <type category="struct" name="VkBindVideoSessionMemoryInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_BIND_VIDEO_SESSION_MEMORY_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>memoryBindIndex</name></member> |
| <member><type>VkDeviceMemory</type> <name>memory</name></member> |
| <member><type>VkDeviceSize</type> <name>memoryOffset</name></member> |
| <member><type>VkDeviceSize</type> <name>memorySize</name></member> |
| </type> |
| <type category="struct" name="VkVideoPictureResourceInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkOffset2D</type> <name>codedOffset</name><comment>The offset to be used for the picture resource, currently only used in field mode</comment></member> |
| <member><type>VkExtent2D</type> <name>codedExtent</name><comment>The extent to be used for the picture resource</comment></member> |
| <member><type>uint32_t</type> <name>baseArrayLayer</name><comment>The first array layer to be accessed for the Decode or Encode Operations</comment></member> |
| <member><type>VkImageView</type> <name>imageViewBinding</name><comment>The ImageView binding of the resource</comment></member> |
| </type> |
| <type category="struct" name="VkVideoReferenceSlotInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>int32_t</type> <name>slotIndex</name><comment>The reference slot index</comment></member> |
| <member optional="true">const <type>VkVideoPictureResourceInfoKHR</type>* <name>pPictureResource</name><comment>The reference picture resource</comment></member> |
| </type> |
| <type category="struct" name="VkVideoDecodeCapabilitiesKHR" returnedonly="true" structextends="VkVideoCapabilitiesKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_CAPABILITIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask" noautovalidity="true"><type>VkVideoDecodeCapabilityFlagsKHR</type> <name>flags</name></member> |
| </type> |
| <type category="struct" name="VkVideoDecodeUsageInfoKHR" structextends="VkVideoProfileInfoKHR,VkQueryPoolCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_USAGE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkVideoDecodeUsageFlagsKHR</type> <name>videoUsageHints</name></member> |
| </type> |
| <type category="struct" name="VkVideoDecodeInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkVideoDecodeFlagsKHR</type> <name>flags</name></member> |
| <member><type>VkBuffer</type> <name>srcBuffer</name></member> |
| <member><type>VkDeviceSize</type> <name>srcBufferOffset</name></member> |
| <member><type>VkDeviceSize</type> <name>srcBufferRange</name></member> |
| <member><type>VkVideoPictureResourceInfoKHR</type> <name>dstPictureResource</name></member> |
| <member optional="true">const <type>VkVideoReferenceSlotInfoKHR</type>* <name>pSetupReferenceSlot</name></member> |
| <member optional="true"><type>uint32_t</type> <name>referenceSlotCount</name></member> |
| <member len="referenceSlotCount">const <type>VkVideoReferenceSlotInfoKHR</type>* <name>pReferenceSlots</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceVideoMaintenance1FeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_MAINTENANCE_1_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>videoMaintenance1</name></member> |
| </type> |
| <type category="struct" name="VkVideoInlineQueryInfoKHR" structextends="VkVideoDecodeInfoKHR,VkVideoEncodeInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_INLINE_QUERY_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkQueryPool</type> <name>queryPool</name></member> |
| <member><type>uint32_t</type> <name>firstQuery</name></member> |
| <member><type>uint32_t</type> <name>queryCount</name></member> |
| </type> |
| <comment>Video Decode Codec Standard specific structures</comment> |
| <type category="include" name="vk_video/vulkan_video_codec_h264std.h">#include "vk_video/vulkan_video_codec_h264std.h"</type> |
| <type requires="vk_video/vulkan_video_codec_h264std.h" name="StdVideoH264ProfileIdc"/> |
| <type requires="vk_video/vulkan_video_codec_h264std.h" name="StdVideoH264LevelIdc"/> |
| <type category="include" name="vk_video/vulkan_video_codec_h264std_decode.h">#include "vk_video/vulkan_video_codec_h264std_decode.h"</type> |
| <type requires="vk_video/vulkan_video_codec_h264std_decode.h" name="StdVideoDecodeH264PictureInfo"/> |
| <type requires="vk_video/vulkan_video_codec_h264std_decode.h" name="StdVideoDecodeH264ReferenceInfo"/> |
| <type category="struct" name="VkVideoDecodeH264ProfileInfoKHR" structextends="VkVideoProfileInfoKHR,VkQueryPoolCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>StdVideoH264ProfileIdc</type> <name>stdProfileIdc</name></member> |
| <member optional="true"><type>VkVideoDecodeH264PictureLayoutFlagBitsKHR</type> <name>pictureLayout</name></member> |
| </type> |
| <type category="struct" name="VkVideoDecodeH264CapabilitiesKHR" returnedonly="true" structextends="VkVideoCapabilitiesKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>StdVideoH264LevelIdc</type> <name>maxLevelIdc</name></member> |
| <member limittype="noauto"><type>VkOffset2D</type> <name>fieldOffsetGranularity</name></member> |
| </type> |
| <type requires="vk_video/vulkan_video_codec_h264std.h" name="StdVideoH264SequenceParameterSet"/> |
| <type requires="vk_video/vulkan_video_codec_h264std.h" name="StdVideoH264PictureParameterSet"/> |
| <type category="struct" name="VkVideoDecodeH264SessionParametersAddInfoKHR" structextends="VkVideoSessionParametersUpdateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>stdSPSCount</name></member> |
| <member len="stdSPSCount">const <type>StdVideoH264SequenceParameterSet</type>* <name>pStdSPSs</name></member> |
| <member optional="true"><type>uint32_t</type> <name>stdPPSCount</name></member> |
| <member len="stdPPSCount">const <type>StdVideoH264PictureParameterSet</type>* <name>pStdPPSs</name><comment>List of Picture Parameters associated with the spsStd, above</comment></member> |
| </type> |
| <type category="struct" name="VkVideoDecodeH264SessionParametersCreateInfoKHR" structextends="VkVideoSessionParametersCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>maxStdSPSCount</name></member> |
| <member><type>uint32_t</type> <name>maxStdPPSCount</name></member> |
| <member optional="true">const <type>VkVideoDecodeH264SessionParametersAddInfoKHR</type>* <name>pParametersAddInfo</name></member> |
| </type> |
| <type category="struct" name="VkVideoDecodeH264PictureInfoKHR" structextends="VkVideoDecodeInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member>const <type>StdVideoDecodeH264PictureInfo</type>* <name>pStdPictureInfo</name></member> |
| <member><type>uint32_t</type> <name>sliceCount</name></member> |
| <member len="sliceCount">const <type>uint32_t</type>* <name>pSliceOffsets</name></member> |
| </type> |
| <type category="struct" name="VkVideoDecodeH264DpbSlotInfoKHR" structextends="VkVideoReferenceSlotInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member>const <type>StdVideoDecodeH264ReferenceInfo</type>* <name>pStdReferenceInfo</name></member> |
| </type> |
| <type category="include" name="vk_video/vulkan_video_codec_h265std.h">#include "vk_video/vulkan_video_codec_h265std.h"</type> |
| <type requires="vk_video/vulkan_video_codec_h265std.h" name="StdVideoH265ProfileIdc"/> |
| <type requires="vk_video/vulkan_video_codec_h265std.h" name="StdVideoH265VideoParameterSet"/> |
| <type requires="vk_video/vulkan_video_codec_h265std.h" name="StdVideoH265SequenceParameterSet"/> |
| <type requires="vk_video/vulkan_video_codec_h265std.h" name="StdVideoH265PictureParameterSet"/> |
| <type requires="vk_video/vulkan_video_codec_h265std.h" name="StdVideoH265LevelIdc"/> |
| <type category="include" name="vk_video/vulkan_video_codec_h265std_decode.h">#include "vk_video/vulkan_video_codec_h265std_decode.h"</type> |
| <type requires="vk_video/vulkan_video_codec_h265std_decode.h" name="StdVideoDecodeH265PictureInfo"/> |
| <type requires="vk_video/vulkan_video_codec_h265std_decode.h" name="StdVideoDecodeH265ReferenceInfo"/> |
| <type category="struct" name="VkVideoDecodeH265ProfileInfoKHR" structextends="VkVideoProfileInfoKHR,VkQueryPoolCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>StdVideoH265ProfileIdc</type> <name>stdProfileIdc</name></member> |
| </type> |
| <type category="struct" name="VkVideoDecodeH265CapabilitiesKHR" returnedonly="true" structextends="VkVideoCapabilitiesKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>StdVideoH265LevelIdc</type> <name>maxLevelIdc</name></member> |
| </type> |
| <type category="struct" name="VkVideoDecodeH265SessionParametersAddInfoKHR" structextends="VkVideoSessionParametersUpdateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>stdVPSCount</name></member> |
| <member len="stdVPSCount">const <type>StdVideoH265VideoParameterSet</type>* <name>pStdVPSs</name></member> |
| <member optional="true"><type>uint32_t</type> <name>stdSPSCount</name></member> |
| <member len="stdSPSCount">const <type>StdVideoH265SequenceParameterSet</type>* <name>pStdSPSs</name></member> |
| <member optional="true"><type>uint32_t</type> <name>stdPPSCount</name></member> |
| <member len="stdPPSCount">const <type>StdVideoH265PictureParameterSet</type>* <name>pStdPPSs</name><comment>List of Picture Parameters associated with the spsStd, above</comment></member> |
| </type> |
| <type category="struct" name="VkVideoDecodeH265SessionParametersCreateInfoKHR" structextends="VkVideoSessionParametersCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>maxStdVPSCount</name></member> |
| <member><type>uint32_t</type> <name>maxStdSPSCount</name></member> |
| <member><type>uint32_t</type> <name>maxStdPPSCount</name></member> |
| <member optional="true">const <type>VkVideoDecodeH265SessionParametersAddInfoKHR</type>* <name>pParametersAddInfo</name></member> |
| </type> |
| <type category="struct" name="VkVideoDecodeH265PictureInfoKHR" structextends="VkVideoDecodeInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member>const <type>StdVideoDecodeH265PictureInfo</type>* <name>pStdPictureInfo</name></member> |
| <member><type>uint32_t</type> <name>sliceSegmentCount</name></member> |
| <member len="sliceSegmentCount">const <type>uint32_t</type>* <name>pSliceSegmentOffsets</name></member> |
| </type> |
| <type category="struct" name="VkVideoDecodeH265DpbSlotInfoKHR" structextends="VkVideoReferenceSlotInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member>const <type>StdVideoDecodeH265ReferenceInfo</type>* <name>pStdReferenceInfo</name></member> |
| </type> |
| <type category="include" name="vk_video/vulkan_video_codec_av1std.h">#include "vk_video/vulkan_video_codec_av1std.h"</type> |
| <type requires="vk_video/vulkan_video_codec_av1std.h" name="StdVideoAV1Profile"/> |
| <type requires="vk_video/vulkan_video_codec_av1std.h" name="StdVideoAV1Level"/> |
| <type requires="vk_video/vulkan_video_codec_av1std.h" name="StdVideoAV1SequenceHeader"/> |
| <type category="include" name="vk_video/vulkan_video_codec_av1std_decode.h">#include "vk_video/vulkan_video_codec_av1std_decode.h"</type> |
| <type requires="vk_video/vulkan_video_codec_av1std_decode.h" name="StdVideoDecodeAV1PictureInfo"/> |
| <type requires="vk_video/vulkan_video_codec_av1std_decode.h" name="StdVideoDecodeAV1ReferenceInfo"/> |
| <type category="struct" name="VkVideoDecodeAV1ProfileInfoKHR" structextends="VkVideoProfileInfoKHR,VkQueryPoolCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_PROFILE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>StdVideoAV1Profile</type> <name>stdProfile</name></member> |
| <member><type>VkBool32</type> <name>filmGrainSupport</name></member> |
| </type> |
| <type category="struct" name="VkVideoDecodeAV1CapabilitiesKHR" returnedonly="true" structextends="VkVideoCapabilitiesKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_CAPABILITIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>StdVideoAV1Level</type> <name>maxLevel</name></member> |
| </type> |
| <type category="struct" name="VkVideoDecodeAV1SessionParametersCreateInfoKHR" structextends="VkVideoSessionParametersCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_SESSION_PARAMETERS_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member>const <type>StdVideoAV1SequenceHeader</type>* <name>pStdSequenceHeader</name></member> |
| </type> |
| <type category="struct" name="VkVideoDecodeAV1PictureInfoKHR" structextends="VkVideoDecodeInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_PICTURE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member>const <type>StdVideoDecodeAV1PictureInfo</type>* <name>pStdPictureInfo</name></member> |
| <member><type>int32_t</type> <name>referenceNameSlotIndices</name>[<enum>VK_MAX_VIDEO_AV1_REFERENCES_PER_FRAME_KHR</enum>]</member> |
| <member><type>uint32_t</type> <name>frameHeaderOffset</name></member> |
| <member><type>uint32_t</type> <name>tileCount</name></member> |
| <member len="tileCount">const <type>uint32_t</type>* <name>pTileOffsets</name></member> |
| <member len="tileCount">const <type>uint32_t</type>* <name>pTileSizes</name></member> |
| </type> |
| <type category="struct" name="VkVideoDecodeAV1DpbSlotInfoKHR" structextends="VkVideoReferenceSlotInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_DPB_SLOT_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member>const <type>StdVideoDecodeAV1ReferenceInfo</type>* <name>pStdReferenceInfo</name></member> |
| </type> |
| <type category="struct" name="VkVideoSessionCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>queueFamilyIndex</name></member> |
| <member optional="true"><type>VkVideoSessionCreateFlagsKHR</type> <name>flags</name></member> |
| <member>const <type>VkVideoProfileInfoKHR</type>* <name>pVideoProfile</name></member> |
| <member><type>VkFormat</type> <name>pictureFormat</name></member> |
| <member><type>VkExtent2D</type> <name>maxCodedExtent</name></member> |
| <member><type>VkFormat</type> <name>referencePictureFormat</name></member> |
| <member><type>uint32_t</type> <name>maxDpbSlots</name></member> |
| <member><type>uint32_t</type> <name>maxActiveReferencePictures</name></member> |
| <member>const <type>VkExtensionProperties</type>* <name>pStdHeaderVersion</name></member> |
| </type> |
| <type category="struct" name="VkVideoSessionParametersCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkVideoSessionParametersCreateFlagsKHR</type> <name>flags</name></member> |
| <member optional="true"><type>VkVideoSessionParametersKHR</type> <name>videoSessionParametersTemplate</name></member> |
| <member><type>VkVideoSessionKHR</type> <name>videoSession</name></member> |
| </type> |
| <type category="struct" name="VkVideoSessionParametersUpdateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>updateSequenceCount</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeSessionParametersGetInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_SESSION_PARAMETERS_GET_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkVideoSessionParametersKHR</type> <name>videoSessionParameters</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeSessionParametersFeedbackInfoKHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_SESSION_PARAMETERS_FEEDBACK_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>hasOverrides</name></member> |
| </type> |
| <type category="struct" name="VkVideoBeginCodingInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkVideoBeginCodingFlagsKHR</type> <name>flags</name></member> |
| <member><type>VkVideoSessionKHR</type> <name>videoSession</name></member> |
| <member optional="true"><type>VkVideoSessionParametersKHR</type> <name>videoSessionParameters</name></member> |
| <member optional="true"><type>uint32_t</type> <name>referenceSlotCount</name></member> |
| <member len="referenceSlotCount">const <type>VkVideoReferenceSlotInfoKHR</type>* <name>pReferenceSlots</name></member> |
| </type> |
| <type category="struct" name="VkVideoEndCodingInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_END_CODING_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkVideoEndCodingFlagsKHR</type> <name>flags</name></member> |
| </type> |
| <type category="struct" name="VkVideoCodingControlInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkVideoCodingControlFlagsKHR</type> <name>flags</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeUsageInfoKHR" structextends="VkVideoProfileInfoKHR,VkQueryPoolCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_USAGE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkVideoEncodeUsageFlagsKHR</type> <name>videoUsageHints</name></member> |
| <member optional="true"><type>VkVideoEncodeContentFlagsKHR</type> <name>videoContentHints</name></member> |
| <member optional="true"><type>VkVideoEncodeTuningModeKHR</type> <name>tuningMode</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkVideoEncodeFlagsKHR</type> <name>flags</name></member> |
| <member><type>VkBuffer</type> <name>dstBuffer</name></member> |
| <member><type>VkDeviceSize</type> <name>dstBufferOffset</name></member> |
| <member><type>VkDeviceSize</type> <name>dstBufferRange</name></member> |
| <member><type>VkVideoPictureResourceInfoKHR</type> <name>srcPictureResource</name></member> |
| <member optional="true">const <type>VkVideoReferenceSlotInfoKHR</type>* <name>pSetupReferenceSlot</name></member> |
| <member optional="true"><type>uint32_t</type> <name>referenceSlotCount</name></member> |
| <member len="referenceSlotCount">const <type>VkVideoReferenceSlotInfoKHR</type>* <name>pReferenceSlots</name></member> |
| <member><type>uint32_t</type> <name>precedingExternallyEncodedBytes</name></member> |
| </type> |
| <type category="struct" name="VkQueryPoolVideoEncodeFeedbackCreateInfoKHR" structextends="VkQueryPoolCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_QUERY_POOL_VIDEO_ENCODE_FEEDBACK_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkVideoEncodeFeedbackFlagsKHR</type> <name>encodeFeedbackFlags</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeQualityLevelInfoKHR" structextends="VkVideoCodingControlInfoKHR,VkVideoSessionParametersCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_QUALITY_LEVEL_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>qualityLevel</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_ENCODE_QUALITY_LEVEL_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member>const <type>VkVideoProfileInfoKHR</type>* <name>pVideoProfile</name></member> |
| <member><type>uint32_t</type> <name>qualityLevel</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeQualityLevelPropertiesKHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_QUALITY_LEVEL_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkVideoEncodeRateControlModeFlagBitsKHR</type> <name>preferredRateControlMode</name></member> |
| <member><type>uint32_t</type> <name>preferredRateControlLayerCount</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeRateControlInfoKHR" structextends="VkVideoCodingControlInfoKHR,VkVideoBeginCodingInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkVideoEncodeRateControlFlagsKHR</type> <name>flags</name></member> |
| <member optional="true"><type>VkVideoEncodeRateControlModeFlagBitsKHR</type> <name>rateControlMode</name></member> |
| <member optional="true"><type>uint32_t</type> <name>layerCount</name></member> |
| <member len="layerCount">const <type>VkVideoEncodeRateControlLayerInfoKHR</type>* <name>pLayers</name></member> |
| <member><type>uint32_t</type> <name>virtualBufferSizeInMs</name></member> |
| <member><type>uint32_t</type> <name>initialVirtualBufferSizeInMs</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeRateControlLayerInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint64_t</type> <name>averageBitrate</name></member> |
| <member><type>uint64_t</type> <name>maxBitrate</name></member> |
| <member><type>uint32_t</type> <name>frameRateNumerator</name></member> |
| <member><type>uint32_t</type> <name>frameRateDenominator</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeCapabilitiesKHR" returnedonly="true" structextends="VkVideoCapabilitiesKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_CAPABILITIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask" noautovalidity="true"><type>VkVideoEncodeCapabilityFlagsKHR</type> <name>flags</name></member> |
| <member limittype="bitmask"><type>VkVideoEncodeRateControlModeFlagsKHR</type> <name>rateControlModes</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxRateControlLayers</name></member> |
| <member limittype="max"><type>uint64_t</type> <name>maxBitrate</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxQualityLevels</name></member> |
| <member limittype="min"><type>VkExtent2D</type> <name>encodeInputPictureGranularity</name></member> |
| <member limittype="bitmask"><type>VkVideoEncodeFeedbackFlagsKHR</type> <name>supportedEncodeFeedbackFlags</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH264CapabilitiesKHR" returnedonly="true" structextends="VkVideoCapabilitiesKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask" noautovalidity="true"><type>VkVideoEncodeH264CapabilityFlagsKHR</type> <name>flags</name></member> |
| <member limittype="max"><type>StdVideoH264LevelIdc</type> <name>maxLevelIdc</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxSliceCount</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPPictureL0ReferenceCount</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxBPictureL0ReferenceCount</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxL1ReferenceCount</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxTemporalLayerCount</name></member> |
| <member limittype="not"><type>VkBool32</type> <name>expectDyadicTemporalLayerPattern</name></member> |
| <member limittype="min"><type>int32_t</type> <name>minQp</name></member> |
| <member limittype="max"><type>int32_t</type> <name>maxQp</name></member> |
| <member limittype="not"><type>VkBool32</type> <name>prefersGopRemainingFrames</name></member> |
| <member limittype="not"><type>VkBool32</type> <name>requiresGopRemainingFrames</name></member> |
| <member limittype="bitmask" noautovalidity="true"><type>VkVideoEncodeH264StdFlagsKHR</type> <name>stdSyntaxFlags</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH264QualityLevelPropertiesKHR" returnedonly="true" structextends="VkVideoEncodeQualityLevelPropertiesKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_QUALITY_LEVEL_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkVideoEncodeH264RateControlFlagsKHR</type> <name>preferredRateControlFlags</name></member> |
| <member><type>uint32_t</type> <name>preferredGopFrameCount</name></member> |
| <member><type>uint32_t</type> <name>preferredIdrPeriod</name></member> |
| <member><type>uint32_t</type> <name>preferredConsecutiveBFrameCount</name></member> |
| <member><type>uint32_t</type> <name>preferredTemporalLayerCount</name></member> |
| <member><type>VkVideoEncodeH264QpKHR</type> <name>preferredConstantQp</name></member> |
| <member><type>uint32_t</type> <name>preferredMaxL0ReferenceCount</name></member> |
| <member><type>uint32_t</type> <name>preferredMaxL1ReferenceCount</name></member> |
| <member><type>VkBool32</type> <name>preferredStdEntropyCodingModeFlag</name></member> |
| </type> |
| <type category="include" name="vk_video/vulkan_video_codec_h264std_encode.h">#include "vk_video/vulkan_video_codec_h264std_encode.h"</type> |
| <type requires="vk_video/vulkan_video_codec_h264std_encode.h" name="StdVideoEncodeH264SliceHeader"/> |
| <type requires="vk_video/vulkan_video_codec_h264std_encode.h" name="StdVideoEncodeH264PictureInfo"/> |
| <type requires="vk_video/vulkan_video_codec_h264std_encode.h" name="StdVideoEncodeH264ReferenceInfo"/> |
| <type category="struct" name="VkVideoEncodeH264SessionCreateInfoKHR" structextends="VkVideoSessionCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>useMaxLevelIdc</name></member> |
| <member><type>StdVideoH264LevelIdc</type> <name>maxLevelIdc</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH264SessionParametersAddInfoKHR" structextends="VkVideoSessionParametersUpdateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>stdSPSCount</name></member> |
| <member len="stdSPSCount" optional="true">const <type>StdVideoH264SequenceParameterSet</type>* <name>pStdSPSs</name></member> |
| <member optional="true"><type>uint32_t</type> <name>stdPPSCount</name></member> |
| <member len="stdPPSCount" optional="true">const <type>StdVideoH264PictureParameterSet</type>* <name>pStdPPSs</name><comment>List of Picture Parameters associated with the spsStd, above</comment></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH264SessionParametersCreateInfoKHR" structextends="VkVideoSessionParametersCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>maxStdSPSCount</name></member> |
| <member><type>uint32_t</type> <name>maxStdPPSCount</name></member> |
| <member optional="true">const <type>VkVideoEncodeH264SessionParametersAddInfoKHR</type>* <name>pParametersAddInfo</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH264SessionParametersGetInfoKHR" structextends="VkVideoEncodeSessionParametersGetInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_GET_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>writeStdSPS</name></member> |
| <member><type>VkBool32</type> <name>writeStdPPS</name></member> |
| <member><type>uint32_t</type> <name>stdSPSId</name></member> |
| <member><type>uint32_t</type> <name>stdPPSId</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH264SessionParametersFeedbackInfoKHR" structextends="VkVideoEncodeSessionParametersFeedbackInfoKHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_FEEDBACK_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>hasStdSPSOverrides</name></member> |
| <member><type>VkBool32</type> <name>hasStdPPSOverrides</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH264DpbSlotInfoKHR" structextends="VkVideoReferenceSlotInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member>const <type>StdVideoEncodeH264ReferenceInfo</type>* <name>pStdReferenceInfo</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH264PictureInfoKHR" structextends="VkVideoEncodeInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PICTURE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>naluSliceEntryCount</name></member> |
| <member len="naluSliceEntryCount">const <type>VkVideoEncodeH264NaluSliceInfoKHR</type>* <name>pNaluSliceEntries</name></member> |
| <member>const <type>StdVideoEncodeH264PictureInfo</type>* <name>pStdPictureInfo</name></member> |
| <member><type>VkBool32</type> <name>generatePrefixNalu</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH264ProfileInfoKHR" structextends="VkVideoProfileInfoKHR,VkQueryPoolCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>StdVideoH264ProfileIdc</type> <name>stdProfileIdc</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH264NaluSliceInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>int32_t</type> <name>constantQp</name></member> |
| <member>const <type>StdVideoEncodeH264SliceHeader</type>* <name>pStdSliceHeader</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH264RateControlInfoKHR" structextends="VkVideoCodingControlInfoKHR,VkVideoBeginCodingInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkVideoEncodeH264RateControlFlagsKHR</type> <name>flags</name></member> |
| <member><type>uint32_t</type> <name>gopFrameCount</name></member> |
| <member><type>uint32_t</type> <name>idrPeriod</name></member> |
| <member><type>uint32_t</type> <name>consecutiveBFrameCount</name></member> |
| <member><type>uint32_t</type> <name>temporalLayerCount</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH264QpKHR"> |
| <member noautovalidity="true"><type>int32_t</type> <name>qpI</name></member> |
| <member noautovalidity="true"><type>int32_t</type> <name>qpP</name></member> |
| <member noautovalidity="true"><type>int32_t</type> <name>qpB</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH264FrameSizeKHR"> |
| <member noautovalidity="true"><type>uint32_t</type> <name>frameISize</name></member> |
| <member noautovalidity="true"><type>uint32_t</type> <name>framePSize</name></member> |
| <member noautovalidity="true"><type>uint32_t</type> <name>frameBSize</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH264GopRemainingFrameInfoKHR" structextends="VkVideoBeginCodingInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_GOP_REMAINING_FRAME_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>useGopRemainingFrames</name></member> |
| <member><type>uint32_t</type> <name>gopRemainingI</name></member> |
| <member><type>uint32_t</type> <name>gopRemainingP</name></member> |
| <member><type>uint32_t</type> <name>gopRemainingB</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH264RateControlLayerInfoKHR" structextends="VkVideoEncodeRateControlLayerInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>useMinQp</name></member> |
| <member><type>VkVideoEncodeH264QpKHR</type> <name>minQp</name></member> |
| <member><type>VkBool32</type> <name>useMaxQp</name></member> |
| <member><type>VkVideoEncodeH264QpKHR</type> <name>maxQp</name></member> |
| <member><type>VkBool32</type> <name>useMaxFrameSize</name></member> |
| <member><type>VkVideoEncodeH264FrameSizeKHR</type> <name>maxFrameSize</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH265CapabilitiesKHR" returnedonly="true" structextends="VkVideoCapabilitiesKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask" noautovalidity="true"><type>VkVideoEncodeH265CapabilityFlagsKHR</type> <name>flags</name></member> |
| <member limittype="max"><type>StdVideoH265LevelIdc</type> <name>maxLevelIdc</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxSliceSegmentCount</name></member> |
| <member limittype="max"><type>VkExtent2D</type> <name>maxTiles</name></member> |
| <member limittype="bitmask"><type>VkVideoEncodeH265CtbSizeFlagsKHR</type> <name>ctbSizes</name></member> |
| <member limittype="bitmask"><type>VkVideoEncodeH265TransformBlockSizeFlagsKHR</type> <name>transformBlockSizes</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxPPictureL0ReferenceCount</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxBPictureL0ReferenceCount</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxL1ReferenceCount</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxSubLayerCount</name></member> |
| <member limittype="not"><type>VkBool32</type> <name>expectDyadicTemporalSubLayerPattern</name></member> |
| <member limittype="min"><type>int32_t</type> <name>minQp</name></member> |
| <member limittype="max"><type>int32_t</type> <name>maxQp</name></member> |
| <member limittype="not"><type>VkBool32</type> <name>prefersGopRemainingFrames</name></member> |
| <member limittype="not"><type>VkBool32</type> <name>requiresGopRemainingFrames</name></member> |
| <member limittype="bitmask" noautovalidity="true"><type>VkVideoEncodeH265StdFlagsKHR</type> <name>stdSyntaxFlags</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH265QualityLevelPropertiesKHR" returnedonly="true" structextends="VkVideoEncodeQualityLevelPropertiesKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_QUALITY_LEVEL_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkVideoEncodeH265RateControlFlagsKHR</type> <name>preferredRateControlFlags</name></member> |
| <member><type>uint32_t</type> <name>preferredGopFrameCount</name></member> |
| <member><type>uint32_t</type> <name>preferredIdrPeriod</name></member> |
| <member><type>uint32_t</type> <name>preferredConsecutiveBFrameCount</name></member> |
| <member><type>uint32_t</type> <name>preferredSubLayerCount</name></member> |
| <member><type>VkVideoEncodeH265QpKHR</type> <name>preferredConstantQp</name></member> |
| <member><type>uint32_t</type> <name>preferredMaxL0ReferenceCount</name></member> |
| <member><type>uint32_t</type> <name>preferredMaxL1ReferenceCount</name></member> |
| </type> |
| <type category="include" name="vk_video/vulkan_video_codec_h265std_encode.h">#include "vk_video/vulkan_video_codec_h265std_encode.h"</type> |
| <type requires="vk_video/vulkan_video_codec_h265std_encode.h" name="StdVideoEncodeH265PictureInfo"/> |
| <type requires="vk_video/vulkan_video_codec_h265std_encode.h" name="StdVideoEncodeH265SliceSegmentHeader"/> |
| <type requires="vk_video/vulkan_video_codec_h265std_encode.h" name="StdVideoEncodeH265ReferenceInfo"/> |
| <type category="struct" name="VkVideoEncodeH265SessionCreateInfoKHR" structextends="VkVideoSessionCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>useMaxLevelIdc</name></member> |
| <member><type>StdVideoH265LevelIdc</type> <name>maxLevelIdc</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH265SessionParametersAddInfoKHR" structextends="VkVideoSessionParametersUpdateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>stdVPSCount</name></member> |
| <member len="stdVPSCount" optional="true">const <type>StdVideoH265VideoParameterSet</type>* <name>pStdVPSs</name></member> |
| <member optional="true"><type>uint32_t</type> <name>stdSPSCount</name></member> |
| <member len="stdSPSCount" optional="true">const <type>StdVideoH265SequenceParameterSet</type>* <name>pStdSPSs</name></member> |
| <member optional="true"><type>uint32_t</type> <name>stdPPSCount</name></member> |
| <member len="stdPPSCount" optional="true">const <type>StdVideoH265PictureParameterSet</type>* <name>pStdPPSs</name><comment>List of Picture Parameters associated with the spsStd, above</comment></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH265SessionParametersCreateInfoKHR" structextends="VkVideoSessionParametersCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>maxStdVPSCount</name></member> |
| <member><type>uint32_t</type> <name>maxStdSPSCount</name></member> |
| <member><type>uint32_t</type> <name>maxStdPPSCount</name></member> |
| <member optional="true">const <type>VkVideoEncodeH265SessionParametersAddInfoKHR</type>* <name>pParametersAddInfo</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH265SessionParametersGetInfoKHR" structextends="VkVideoEncodeSessionParametersGetInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_GET_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>writeStdVPS</name></member> |
| <member><type>VkBool32</type> <name>writeStdSPS</name></member> |
| <member><type>VkBool32</type> <name>writeStdPPS</name></member> |
| <member><type>uint32_t</type> <name>stdVPSId</name></member> |
| <member><type>uint32_t</type> <name>stdSPSId</name></member> |
| <member><type>uint32_t</type> <name>stdPPSId</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH265SessionParametersFeedbackInfoKHR" structextends="VkVideoEncodeSessionParametersFeedbackInfoKHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_FEEDBACK_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>hasStdVPSOverrides</name></member> |
| <member><type>VkBool32</type> <name>hasStdSPSOverrides</name></member> |
| <member><type>VkBool32</type> <name>hasStdPPSOverrides</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH265PictureInfoKHR" structextends="VkVideoEncodeInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PICTURE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>naluSliceSegmentEntryCount</name></member> |
| <member len="naluSliceSegmentEntryCount">const <type>VkVideoEncodeH265NaluSliceSegmentInfoKHR</type>* <name>pNaluSliceSegmentEntries</name></member> |
| <member>const <type>StdVideoEncodeH265PictureInfo</type>* <name>pStdPictureInfo</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH265NaluSliceSegmentInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_NALU_SLICE_SEGMENT_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>int32_t</type> <name>constantQp</name></member> |
| <member>const <type>StdVideoEncodeH265SliceSegmentHeader</type>* <name>pStdSliceSegmentHeader</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH265RateControlInfoKHR" structextends="VkVideoCodingControlInfoKHR,VkVideoBeginCodingInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkVideoEncodeH265RateControlFlagsKHR</type> <name>flags</name></member> |
| <member><type>uint32_t</type> <name>gopFrameCount</name></member> |
| <member><type>uint32_t</type> <name>idrPeriod</name></member> |
| <member><type>uint32_t</type> <name>consecutiveBFrameCount</name></member> |
| <member><type>uint32_t</type> <name>subLayerCount</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH265QpKHR"> |
| <member noautovalidity="true"><type>int32_t</type> <name>qpI</name></member> |
| <member noautovalidity="true"><type>int32_t</type> <name>qpP</name></member> |
| <member noautovalidity="true"><type>int32_t</type> <name>qpB</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH265FrameSizeKHR"> |
| <member noautovalidity="true"><type>uint32_t</type> <name>frameISize</name></member> |
| <member noautovalidity="true"><type>uint32_t</type> <name>framePSize</name></member> |
| <member noautovalidity="true"><type>uint32_t</type> <name>frameBSize</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH265GopRemainingFrameInfoKHR" structextends="VkVideoBeginCodingInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_GOP_REMAINING_FRAME_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>useGopRemainingFrames</name></member> |
| <member><type>uint32_t</type> <name>gopRemainingI</name></member> |
| <member><type>uint32_t</type> <name>gopRemainingP</name></member> |
| <member><type>uint32_t</type> <name>gopRemainingB</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH265RateControlLayerInfoKHR" structextends="VkVideoEncodeRateControlLayerInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>useMinQp</name></member> |
| <member><type>VkVideoEncodeH265QpKHR</type> <name>minQp</name></member> |
| <member><type>VkBool32</type> <name>useMaxQp</name></member> |
| <member><type>VkVideoEncodeH265QpKHR</type> <name>maxQp</name></member> |
| <member><type>VkBool32</type> <name>useMaxFrameSize</name></member> |
| <member><type>VkVideoEncodeH265FrameSizeKHR</type> <name>maxFrameSize</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH265ProfileInfoKHR" structextends="VkVideoProfileInfoKHR,VkQueryPoolCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>StdVideoH265ProfileIdc</type> <name>stdProfileIdc</name></member> |
| </type> |
| <type category="struct" name="VkVideoEncodeH265DpbSlotInfoKHR" structextends="VkVideoReferenceSlotInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_DPB_SLOT_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member>const <type>StdVideoEncodeH265ReferenceInfo</type>* <name>pStdReferenceInfo</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceInheritedViewportScissorFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>inheritedViewportScissor2D</name></member> |
| </type> |
| <type category="struct" name="VkCommandBufferInheritanceViewportScissorInfoNV" structextends="VkCommandBufferInheritanceInfo"> |
| <member values="VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>viewportScissor2D</name></member> |
| <member><type>uint32_t</type> <name>viewportDepthCount</name></member> |
| <member noautovalidity="true">const <type>VkViewport</type>* <name>pViewportDepths</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>ycbcr2plane444Formats</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceProvokingVertexFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>provokingVertexLast</name></member> |
| <member><type>VkBool32</type> <name>transformFeedbackPreservesProvokingVertex</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceProvokingVertexPropertiesEXT" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>provokingVertexModePerPipeline</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>transformFeedbackPreservesTriangleFanProvokingVertex</name></member> |
| </type> |
| <type category="struct" name="VkPipelineRasterizationProvokingVertexStateCreateInfoEXT" structextends="VkPipelineRasterizationStateCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkProvokingVertexModeEXT</type> <name>provokingVertexMode</name></member> |
| </type> |
| <type category="struct" name="VkCuModuleCreateInfoNVX"> |
| <member values="VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>size_t</type> <name>dataSize</name></member> |
| <member len="dataSize">const <type>void</type>* <name>pData</name></member> |
| </type> |
| <type category="struct" name="VkCuFunctionCreateInfoNVX"> |
| <member values="VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkCuModuleNVX</type> <name>module</name></member> |
| <member len="null-terminated">const <type>char</type>* <name>pName</name></member> |
| </type> |
| <type category="struct" name="VkCuLaunchInfoNVX"> |
| <member values="VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkCuFunctionNVX</type> <name>function</name></member> |
| <member><type>uint32_t</type> <name>gridDimX</name></member> |
| <member><type>uint32_t</type> <name>gridDimY</name></member> |
| <member><type>uint32_t</type> <name>gridDimZ</name></member> |
| <member><type>uint32_t</type> <name>blockDimX</name></member> |
| <member><type>uint32_t</type> <name>blockDimY</name></member> |
| <member><type>uint32_t</type> <name>blockDimZ</name></member> |
| <member><type>uint32_t</type> <name>sharedMemBytes</name></member> |
| <member optional="true"><type>size_t</type> <name>paramCount</name></member> |
| <member len="paramCount">const <type>void</type>* const * <name>pParams</name></member> |
| <member optional="true"><type>size_t</type> <name>extraCount</name></member> |
| <member len="extraCount">const <type>void</type>* const * <name>pExtras</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceDescriptorBufferFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>descriptorBuffer</name></member> |
| <member><type>VkBool32</type> <name>descriptorBufferCaptureReplay</name></member> |
| <member><type>VkBool32</type> <name>descriptorBufferImageLayoutIgnored</name></member> |
| <member><type>VkBool32</type> <name>descriptorBufferPushDescriptors</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceDescriptorBufferPropertiesEXT" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="noauto"><type>VkBool32</type> <name>combinedImageSamplerDescriptorSingleArray</name></member> |
| <member limittype="noauto"><type>VkBool32</type> <name>bufferlessPushDescriptors</name></member> |
| <member limittype="noauto"><type>VkBool32</type> <name>allowSamplerImageViewPostSubmitCreation</name></member> |
| <member limittype="noauto"><type>VkDeviceSize</type> <name>descriptorBufferOffsetAlignment</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDescriptorBufferBindings</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxResourceDescriptorBufferBindings</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxSamplerDescriptorBufferBindings</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxEmbeddedImmutableSamplerBindings</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxEmbeddedImmutableSamplers</name></member> |
| <member limittype="noauto"><type>size_t</type> <name>bufferCaptureReplayDescriptorDataSize</name></member> |
| <member limittype="noauto"><type>size_t</type> <name>imageCaptureReplayDescriptorDataSize</name></member> |
| <member limittype="noauto"><type>size_t</type> <name>imageViewCaptureReplayDescriptorDataSize</name></member> |
| <member limittype="noauto"><type>size_t</type> <name>samplerCaptureReplayDescriptorDataSize</name></member> |
| <member limittype="noauto"><type>size_t</type> <name>accelerationStructureCaptureReplayDescriptorDataSize</name></member> |
| <member limittype="max"><type>size_t</type> <name>samplerDescriptorSize</name></member> |
| <member limittype="max"><type>size_t</type> <name>combinedImageSamplerDescriptorSize</name></member> |
| <member limittype="max"><type>size_t</type> <name>sampledImageDescriptorSize</name></member> |
| <member limittype="max"><type>size_t</type> <name>storageImageDescriptorSize</name></member> |
| <member limittype="max"><type>size_t</type> <name>uniformTexelBufferDescriptorSize</name></member> |
| <member limittype="max"><type>size_t</type> <name>robustUniformTexelBufferDescriptorSize</name></member> |
| <member limittype="max"><type>size_t</type> <name>storageTexelBufferDescriptorSize</name></member> |
| <member limittype="max"><type>size_t</type> <name>robustStorageTexelBufferDescriptorSize</name></member> |
| <member limittype="max"><type>size_t</type> <name>uniformBufferDescriptorSize</name></member> |
| <member limittype="max"><type>size_t</type> <name>robustUniformBufferDescriptorSize</name></member> |
| <member limittype="max"><type>size_t</type> <name>storageBufferDescriptorSize</name></member> |
| <member limittype="max"><type>size_t</type> <name>robustStorageBufferDescriptorSize</name></member> |
| <member limittype="max"><type>size_t</type> <name>inputAttachmentDescriptorSize</name></member> |
| <member limittype="max"><type>size_t</type> <name>accelerationStructureDescriptorSize</name></member> |
| <member limittype="max"><type>VkDeviceSize</type> <name>maxSamplerDescriptorBufferRange</name></member> |
| <member limittype="max"><type>VkDeviceSize</type> <name>maxResourceDescriptorBufferRange</name></member> |
| <member limittype="max"><type>VkDeviceSize</type> <name>samplerDescriptorBufferAddressSpaceSize</name></member> |
| <member limittype="max"><type>VkDeviceSize</type> <name>resourceDescriptorBufferAddressSpaceSize</name></member> |
| <member limittype="max"><type>VkDeviceSize</type> <name>descriptorBufferAddressSpaceSize</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_DENSITY_MAP_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>size_t</type> <name>combinedImageSamplerDensityMapDescriptorSize</name></member> |
| </type> |
| <type category="struct" name="VkDescriptorAddressInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_DESCRIPTOR_ADDRESS_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceAddress</type> <name>address</name></member> |
| <member><type>VkDeviceSize</type> <name>range</name></member> |
| <member><type>VkFormat</type> <name>format</name></member> |
| </type> |
| <type category="struct" name="VkDescriptorBufferBindingInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_DESCRIPTOR_BUFFER_BINDING_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceAddress</type> <name>address</name></member> |
| <member optional="true" noautovalidity="true"><type>VkBufferUsageFlags</type> <name>usage</name></member> |
| </type> |
| <type category="struct" name="VkDescriptorBufferBindingPushDescriptorBufferHandleEXT" structextends="VkDescriptorBufferBindingInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_DESCRIPTOR_BUFFER_BINDING_PUSH_DESCRIPTOR_BUFFER_HANDLE_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member ><type>VkBuffer</type> <name>buffer</name></member> |
| </type> |
| <type category="union" name="VkDescriptorDataEXT"> |
| <member selection="VK_DESCRIPTOR_TYPE_SAMPLER">const <type>VkSampler</type>* <name>pSampler</name></member> |
| <member selection="VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER">const <type>VkDescriptorImageInfo</type>* <name>pCombinedImageSampler</name></member> |
| <member selection="VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT">const <type>VkDescriptorImageInfo</type>* <name>pInputAttachmentImage</name></member> |
| <member selection="VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE" optional="true">const <type>VkDescriptorImageInfo</type>* <name>pSampledImage</name></member> |
| <member selection="VK_DESCRIPTOR_TYPE_STORAGE_IMAGE" optional="true">const <type>VkDescriptorImageInfo</type>* <name>pStorageImage</name></member> |
| <member selection="VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER" optional="true">const <type>VkDescriptorAddressInfoEXT</type>* <name>pUniformTexelBuffer</name></member> |
| <member selection="VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER" optional="true">const <type>VkDescriptorAddressInfoEXT</type>* <name>pStorageTexelBuffer</name></member> |
| <member selection="VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER" optional="true">const <type>VkDescriptorAddressInfoEXT</type>* <name>pUniformBuffer</name></member> |
| <member selection="VK_DESCRIPTOR_TYPE_STORAGE_BUFFER" optional="true">const <type>VkDescriptorAddressInfoEXT</type>* <name>pStorageBuffer</name></member> |
| <member selection="VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR,VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV"><type>VkDeviceAddress</type> <name>accelerationStructure</name></member> |
| </type> |
| <type category="struct" name="VkDescriptorGetInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_DESCRIPTOR_GET_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDescriptorType</type> <name>type</name></member> |
| <member selector="type" noautovalidity="true"><type>VkDescriptorDataEXT</type> <name>data</name></member> |
| </type> |
| <type category="struct" name="VkBufferCaptureDescriptorDataInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_BUFFER_CAPTURE_DESCRIPTOR_DATA_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBuffer</type> <name>buffer</name></member> |
| </type> |
| <type category="struct" name="VkImageCaptureDescriptorDataInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_CAPTURE_DESCRIPTOR_DATA_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkImage</type> <name>image</name></member> |
| </type> |
| <type category="struct" name="VkImageViewCaptureDescriptorDataInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_VIEW_CAPTURE_DESCRIPTOR_DATA_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkImageView</type> <name>imageView</name></member> |
| </type> |
| <type category="struct" name="VkSamplerCaptureDescriptorDataInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_SAMPLER_CAPTURE_DESCRIPTOR_DATA_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkSampler</type> <name>sampler</name></member> |
| </type> |
| <type category="struct" name="VkAccelerationStructureCaptureDescriptorDataInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CAPTURE_DESCRIPTOR_DATA_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkAccelerationStructureKHR</type> <name>accelerationStructure</name></member> |
| <member optional="true"><type>VkAccelerationStructureNV</type> <name>accelerationStructureNV</name></member> |
| </type> |
| <type category="struct" name="VkOpaqueCaptureDescriptorDataCreateInfoEXT" structextends="VkBufferCreateInfo,VkImageCreateInfo,VkImageViewCreateInfo,VkSamplerCreateInfo,VkAccelerationStructureCreateInfoKHR,VkAccelerationStructureCreateInfoNV"> |
| <member values="VK_STRUCTURE_TYPE_OPAQUE_CAPTURE_DESCRIPTOR_DATA_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member>const <type>void</type>* <name>opaqueCaptureDescriptorData</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceShaderIntegerDotProductFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>shaderIntegerDotProduct</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR" alias="VkPhysicalDeviceShaderIntegerDotProductFeatures"/> |
| <type category="struct" name="VkPhysicalDeviceShaderIntegerDotProductProperties" structextends="VkPhysicalDeviceProperties2" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct8BitUnsignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct8BitSignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct8BitMixedSignednessAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct4x8BitPackedUnsignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct4x8BitPackedSignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct4x8BitPackedMixedSignednessAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct16BitUnsignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct16BitSignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct16BitMixedSignednessAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct32BitUnsignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct32BitSignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct32BitMixedSignednessAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct64BitUnsignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct64BitSignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProduct64BitMixedSignednessAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating8BitUnsignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating8BitSignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating16BitUnsignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating16BitSignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating32BitUnsignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating32BitSignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating64BitUnsignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating64BitSignedAccelerated</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR" alias="VkPhysicalDeviceShaderIntegerDotProductProperties"/> |
| <type category="struct" name="VkPhysicalDeviceDrmPropertiesEXT" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>hasPrimary</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>hasRender</name></member> |
| <member limittype="noauto"><type>int64_t</type> <name>primaryMajor</name></member> |
| <member limittype="noauto"><type>int64_t</type> <name>primaryMinor</name></member> |
| <member limittype="noauto"><type>int64_t</type> <name>renderMajor</name></member> |
| <member limittype="noauto"><type>int64_t</type> <name>renderMinor</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>fragmentShaderBarycentric</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>triStripVertexOrderIndependentOfProvokingVertex</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceRayTracingMotionBlurFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>rayTracingMotionBlur</name></member> |
| <member><type>VkBool32</type> <name>rayTracingMotionBlurPipelineTraceRaysIndirect</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceRayTracingValidationFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_VALIDATION_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>rayTracingValidation</name></member> |
| </type> |
| <type name="VkAccelerationStructureMotionInstanceTypeNV" category="enum"/> |
| <type category="struct" name="VkAccelerationStructureGeometryMotionTrianglesDataNV" structextends="VkAccelerationStructureGeometryTrianglesDataKHR"> |
| <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member noautovalidity="true"><type>VkDeviceOrHostAddressConstKHR</type> <name>vertexData</name></member> |
| </type> |
| <type category="struct" name="VkAccelerationStructureMotionInfoNV" structextends="VkAccelerationStructureCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>maxInstances</name></member> |
| <member optional="true"><type>VkAccelerationStructureMotionInfoFlagsNV</type> <name>flags</name></member> |
| </type> |
| <type category="struct" name="VkSRTDataNV"> |
| <member><type>float</type> <name>sx</name></member> |
| <member><type>float</type> <name>a</name></member> |
| <member><type>float</type> <name>b</name></member> |
| <member><type>float</type> <name>pvx</name></member> |
| <member><type>float</type> <name>sy</name></member> |
| <member><type>float</type> <name>c</name></member> |
| <member><type>float</type> <name>pvy</name></member> |
| <member><type>float</type> <name>sz</name></member> |
| <member><type>float</type> <name>pvz</name></member> |
| <member><type>float</type> <name>qx</name></member> |
| <member><type>float</type> <name>qy</name></member> |
| <member><type>float</type> <name>qz</name></member> |
| <member><type>float</type> <name>qw</name></member> |
| <member><type>float</type> <name>tx</name></member> |
| <member><type>float</type> <name>ty</name></member> |
| <member><type>float</type> <name>tz</name></member> |
| </type> |
| <type category="struct" name="VkAccelerationStructureSRTMotionInstanceNV"> |
| <comment>The bitfields in this structure are non-normative since bitfield ordering is implementation-defined in C. The specification defines the normative layout.</comment> |
| <member><type>VkSRTDataNV</type> <name>transformT0</name></member> |
| <member><type>VkSRTDataNV</type> <name>transformT1</name></member> |
| <member><type>uint32_t</type> <name>instanceCustomIndex</name>:24</member> |
| <member><type>uint32_t</type> <name>mask</name>:8</member> |
| <member><type>uint32_t</type> <name>instanceShaderBindingTableRecordOffset</name>:24</member> |
| <member optional="true"><type>VkGeometryInstanceFlagsKHR</type> <name>flags</name>:8</member> |
| <member><type>uint64_t</type> <name>accelerationStructureReference</name></member> |
| </type> |
| <type category="struct" name="VkAccelerationStructureMatrixMotionInstanceNV"> |
| <comment>The bitfields in this structure are non-normative since bitfield ordering is implementation-defined in C. The specification defines the normative layout.</comment> |
| <member><type>VkTransformMatrixKHR</type> <name>transformT0</name></member> |
| <member><type>VkTransformMatrixKHR</type> <name>transformT1</name></member> |
| <member><type>uint32_t</type> <name>instanceCustomIndex</name>:24</member> |
| <member><type>uint32_t</type> <name>mask</name>:8</member> |
| <member><type>uint32_t</type> <name>instanceShaderBindingTableRecordOffset</name>:24</member> |
| <member optional="true"><type>VkGeometryInstanceFlagsKHR</type> <name>flags</name>:8</member> |
| <member><type>uint64_t</type> <name>accelerationStructureReference</name></member> |
| </type> |
| <type category="union" name="VkAccelerationStructureMotionInstanceDataNV"> |
| <member selection="VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_STATIC_NV"><type>VkAccelerationStructureInstanceKHR</type> <name>staticInstance</name></member> |
| <member selection="VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MATRIX_MOTION_NV"><type>VkAccelerationStructureMatrixMotionInstanceNV</type> <name>matrixMotionInstance</name></member> |
| <member selection="VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_SRT_MOTION_NV"><type>VkAccelerationStructureSRTMotionInstanceNV</type> <name>srtMotionInstance</name></member> |
| </type> |
| <type category="struct" name="VkAccelerationStructureMotionInstanceNV"> |
| <member><type>VkAccelerationStructureMotionInstanceTypeNV</type> <name>type</name></member> |
| <member optional="true"><type>VkAccelerationStructureMotionInstanceFlagsNV</type> <name>flags</name></member> |
| <member selector="type"><type>VkAccelerationStructureMotionInstanceDataNV</type> <name>data</name></member> |
| </type> |
| <type category="basetype">typedef <type>void</type>* <name>VkRemoteAddressNV</name>;</type> |
| <type category="struct" name="VkMemoryGetRemoteAddressInfoNV"> |
| <member values="VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceMemory</type> <name>memory</name></member> |
| <member><type>VkExternalMemoryHandleTypeFlagBits</type> <name>handleType</name></member> |
| </type> |
| <type category="struct" name="VkImportMemoryBufferCollectionFUCHSIA" structextends="VkMemoryAllocateInfo"> |
| <member values="VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBufferCollectionFUCHSIA</type> <name>collection</name></member> |
| <member><type>uint32_t</type> <name>index</name></member> |
| </type> |
| <type category="struct" name="VkBufferCollectionImageCreateInfoFUCHSIA" structextends="VkImageCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBufferCollectionFUCHSIA</type> <name>collection</name></member> |
| <member><type>uint32_t</type> <name>index</name></member> |
| </type> |
| <type category="struct" name="VkBufferCollectionBufferCreateInfoFUCHSIA" structextends="VkBufferCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBufferCollectionFUCHSIA</type> <name>collection</name></member> |
| <member><type>uint32_t</type> <name>index</name></member> |
| </type> |
| <type category="struct" name="VkBufferCollectionCreateInfoFUCHSIA"> |
| <member values="VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CREATE_INFO_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>zx_handle_t</type> <name>collectionToken</name></member> |
| </type> |
| <type category="struct" name="VkBufferCollectionPropertiesFUCHSIA" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_BUFFER_COLLECTION_PROPERTIES_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>memoryTypeBits</name></member> |
| <member><type>uint32_t</type> <name>bufferCount</name></member> |
| <member><type>uint32_t</type> <name>createInfoIndex</name></member> |
| <member><type>uint64_t</type> <name>sysmemPixelFormat</name></member> |
| <member><type>VkFormatFeatureFlags</type> <name>formatFeatures</name></member> |
| <member><type>VkSysmemColorSpaceFUCHSIA</type> <name>sysmemColorSpaceIndex</name></member> |
| <member><type>VkComponentMapping</type> <name>samplerYcbcrConversionComponents</name></member> |
| <member><type>VkSamplerYcbcrModelConversion</type> <name>suggestedYcbcrModel</name></member> |
| <member><type>VkSamplerYcbcrRange</type> <name>suggestedYcbcrRange</name></member> |
| <member><type>VkChromaLocation</type> <name>suggestedXChromaOffset</name></member> |
| <member><type>VkChromaLocation</type> <name>suggestedYChromaOffset</name></member> |
| </type> |
| <type category="struct" name="VkBufferConstraintsInfoFUCHSIA"> |
| <member values="VK_STRUCTURE_TYPE_BUFFER_CONSTRAINTS_INFO_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBufferCreateInfo</type> <name>createInfo</name></member> |
| <member optional="true"><type>VkFormatFeatureFlags</type> <name>requiredFormatFeatures</name></member> |
| <member><type>VkBufferCollectionConstraintsInfoFUCHSIA</type> <name>bufferCollectionConstraints</name></member> |
| </type> |
| <type category="struct" name="VkSysmemColorSpaceFUCHSIA"> |
| <member values="VK_STRUCTURE_TYPE_SYSMEM_COLOR_SPACE_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>colorSpace</name></member> |
| </type> |
| <type category="struct" name="VkImageFormatConstraintsInfoFUCHSIA"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkImageCreateInfo</type> <name>imageCreateInfo</name></member> |
| <member><type>VkFormatFeatureFlags</type> <name>requiredFormatFeatures</name></member> |
| <member optional="true"><type>VkImageFormatConstraintsFlagsFUCHSIA</type> <name>flags</name></member> |
| <member optional="true"><type>uint64_t</type> <name>sysmemPixelFormat</name></member> |
| <member><type>uint32_t</type> <name>colorSpaceCount</name></member> |
| <member len="colorSpaceCount">const <type>VkSysmemColorSpaceFUCHSIA</type>* <name>pColorSpaces</name></member> |
| </type> |
| <type category="struct" name="VkImageConstraintsInfoFUCHSIA"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_CONSTRAINTS_INFO_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>formatConstraintsCount</name></member> |
| <member len="formatConstraintsCount">const <type>VkImageFormatConstraintsInfoFUCHSIA</type>* <name>pFormatConstraints</name></member> |
| <member><type>VkBufferCollectionConstraintsInfoFUCHSIA</type> <name>bufferCollectionConstraints</name></member> |
| <member optional="true"><type>VkImageConstraintsInfoFlagsFUCHSIA</type> <name>flags</name></member> |
| </type> |
| <type category="struct" name="VkBufferCollectionConstraintsInfoFUCHSIA"> |
| <member values="VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>minBufferCount</name></member> |
| <member><type>uint32_t</type> <name>maxBufferCount</name></member> |
| <member><type>uint32_t</type> <name>minBufferCountForCamping</name></member> |
| <member><type>uint32_t</type> <name>minBufferCountForDedicatedSlack</name></member> |
| <member><type>uint32_t</type> <name>minBufferCountForSharedSlack</name></member> |
| </type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_CUDA_MODULE_NV"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkCudaModuleNV</name>)</type> |
| <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_CUDA_FUNCTION_NV"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkCudaFunctionNV</name>)</type> |
| <type category="struct" name="VkCudaModuleCreateInfoNV"> |
| <member values="VK_STRUCTURE_TYPE_CUDA_MODULE_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>size_t</type> <name>dataSize</name></member> |
| <member len="dataSize">const <type>void</type>* <name>pData</name></member> |
| </type> |
| <type category="struct" name="VkCudaFunctionCreateInfoNV"> |
| <member values="VK_STRUCTURE_TYPE_CUDA_FUNCTION_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkCudaModuleNV</type> <name>module</name></member> |
| <member len="null-terminated">const <type>char</type>* <name>pName</name></member> |
| </type> |
| <type category="struct" name="VkCudaLaunchInfoNV"> |
| <member values="VK_STRUCTURE_TYPE_CUDA_LAUNCH_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkCudaFunctionNV</type> <name>function</name></member> |
| <member><type>uint32_t</type> <name>gridDimX</name></member> |
| <member><type>uint32_t</type> <name>gridDimY</name></member> |
| <member><type>uint32_t</type> <name>gridDimZ</name></member> |
| <member><type>uint32_t</type> <name>blockDimX</name></member> |
| <member><type>uint32_t</type> <name>blockDimY</name></member> |
| <member><type>uint32_t</type> <name>blockDimZ</name></member> |
| <member><type>uint32_t</type> <name>sharedMemBytes</name></member> |
| <member optional="true"><type>size_t</type> <name>paramCount</name></member> |
| <member noautovalidity="true" len="paramCount">const <type>void</type>* const * <name>pParams</name></member> |
| <member optional="true"><type>size_t</type> <name>extraCount</name></member> |
| <member noautovalidity="true" len="extraCount">const <type>void</type>* const * <name>pExtras</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>formatRgba10x6WithoutYCbCrSampler</name></member> |
| </type> |
| <type category="struct" name="VkFormatProperties3" returnedonly="true" structextends="VkFormatProperties2"> |
| <member values="VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member optional="true" limittype="bitmask"><type>VkFormatFeatureFlags2</type> <name>linearTilingFeatures</name></member> |
| <member optional="true" limittype="bitmask"><type>VkFormatFeatureFlags2</type> <name>optimalTilingFeatures</name></member> |
| <member optional="true" limittype="bitmask"><type>VkFormatFeatureFlags2</type> <name>bufferFeatures</name></member> |
| </type> |
| <type category="struct" name="VkFormatProperties3KHR" alias="VkFormatProperties3"/> |
| <type category="struct" name="VkDrmFormatModifierPropertiesList2EXT" returnedonly="true" structextends="VkFormatProperties2"> |
| <member values="VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>drmFormatModifierCount</name></member> |
| <member optional="true" len="drmFormatModifierCount"><type>VkDrmFormatModifierProperties2EXT</type>* <name>pDrmFormatModifierProperties</name></member> |
| </type> |
| <type category="struct" name="VkDrmFormatModifierProperties2EXT" returnedonly="true"> |
| <member><type>uint64_t</type> <name>drmFormatModifier</name></member> |
| <member><type>uint32_t</type> <name>drmFormatModifierPlaneCount</name></member> |
| <member><type>VkFormatFeatureFlags2</type> <name>drmFormatModifierTilingFeatures</name></member> |
| </type> |
| <type category="struct" name="VkAndroidHardwareBufferFormatProperties2ANDROID" structextends="VkAndroidHardwareBufferPropertiesANDROID" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkFormat</type> <name>format</name></member> |
| <member><type>uint64_t</type> <name>externalFormat</name></member> |
| <member><type>VkFormatFeatureFlags2</type> <name>formatFeatures</name></member> |
| <member><type>VkComponentMapping</type> <name>samplerYcbcrConversionComponents</name></member> |
| <member><type>VkSamplerYcbcrModelConversion</type> <name>suggestedYcbcrModel</name></member> |
| <member><type>VkSamplerYcbcrRange</type> <name>suggestedYcbcrRange</name></member> |
| <member><type>VkChromaLocation</type> <name>suggestedXChromaOffset</name></member> |
| <member><type>VkChromaLocation</type> <name>suggestedYChromaOffset</name></member> |
| </type> |
| <type category="struct" name="VkPipelineRenderingCreateInfo" structextends="VkGraphicsPipelineCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint32_t</type> <name>viewMask</name></member> |
| <member optional="true"><type>uint32_t</type> <name>colorAttachmentCount</name></member> |
| <member noautovalidity="true" len="colorAttachmentCount">const <type>VkFormat</type>* <name>pColorAttachmentFormats</name></member> |
| <member noautovalidity="true"><type>VkFormat</type> <name>depthAttachmentFormat</name></member> |
| <member noautovalidity="true"><type>VkFormat</type> <name>stencilAttachmentFormat</name></member> |
| </type> |
| <type category="struct" name="VkPipelineRenderingCreateInfoKHR" alias="VkPipelineRenderingCreateInfo"/> |
| <type category="struct" name="VkRenderingInfo"> |
| <member values="VK_STRUCTURE_TYPE_RENDERING_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkRenderingFlags</type> <name>flags</name></member> |
| <member><type>VkRect2D</type> <name>renderArea</name></member> |
| <member><type>uint32_t</type> <name>layerCount</name></member> |
| <member><type>uint32_t</type> <name>viewMask</name></member> |
| <member optional="true"><type>uint32_t</type> <name>colorAttachmentCount</name></member> |
| <member len="colorAttachmentCount">const <type>VkRenderingAttachmentInfo</type>* <name>pColorAttachments</name></member> |
| <member optional="true">const <type>VkRenderingAttachmentInfo</type>* <name>pDepthAttachment</name></member> |
| <member optional="true">const <type>VkRenderingAttachmentInfo</type>* <name>pStencilAttachment</name></member> |
| </type> |
| <type category="struct" name="VkRenderingInfoKHR" alias="VkRenderingInfo"/> |
| <type category="struct" name="VkRenderingAttachmentInfo"> |
| <member values="VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkImageView</type> <name>imageView</name></member> |
| <member><type>VkImageLayout</type> <name>imageLayout</name></member> |
| <member optional="true"><type>VkResolveModeFlagBits</type> <name>resolveMode</name></member> |
| <member optional="true"><type>VkImageView</type> <name>resolveImageView</name></member> |
| <member><type>VkImageLayout</type> <name>resolveImageLayout</name></member> |
| <member><type>VkAttachmentLoadOp</type> <name>loadOp</name></member> |
| <member><type>VkAttachmentStoreOp</type> <name>storeOp</name></member> |
| <member><type>VkClearValue</type> <name>clearValue</name></member> |
| </type> |
| <type category="struct" name="VkRenderingAttachmentInfoKHR" alias="VkRenderingAttachmentInfo"/> |
| <type category="struct" name="VkRenderingFragmentShadingRateAttachmentInfoKHR" structextends="VkRenderingInfo"> |
| <member values="VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkImageView</type> <name>imageView</name></member> |
| <member><type>VkImageLayout</type> <name>imageLayout</name></member> |
| <member><type>VkExtent2D</type> <name>shadingRateAttachmentTexelSize</name></member> |
| </type> |
| <type category="struct" name="VkRenderingFragmentDensityMapAttachmentInfoEXT" structextends="VkRenderingInfo"> |
| <member values="VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkImageView</type> <name>imageView</name></member> |
| <member><type>VkImageLayout</type> <name>imageLayout</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceDynamicRenderingFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>dynamicRendering</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceDynamicRenderingFeaturesKHR" alias="VkPhysicalDeviceDynamicRenderingFeatures"/> |
| <type category="struct" name="VkCommandBufferInheritanceRenderingInfo" structextends="VkCommandBufferInheritanceInfo"> |
| <member values="VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkRenderingFlags</type> <name>flags</name></member> |
| <member><type>uint32_t</type> <name>viewMask</name></member> |
| <member api="vulkan" optional="true"><type>uint32_t</type> <name>colorAttachmentCount</name></member> |
| <member api="vulkansc"><type>uint32_t</type> <name>colorAttachmentCount</name></member> |
| <member len="colorAttachmentCount">const <type>VkFormat</type>* <name>pColorAttachmentFormats</name></member> |
| <member><type>VkFormat</type> <name>depthAttachmentFormat</name></member> |
| <member><type>VkFormat</type> <name>stencilAttachmentFormat</name></member> |
| <member optional="true"><type>VkSampleCountFlagBits</type> <name>rasterizationSamples</name></member> |
| </type> |
| <type category="struct" name="VkCommandBufferInheritanceRenderingInfoKHR" alias="VkCommandBufferInheritanceRenderingInfo"/> |
| <type category="struct" name="VkAttachmentSampleCountInfoAMD" structextends="VkCommandBufferInheritanceInfo,VkGraphicsPipelineCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>colorAttachmentCount</name></member> |
| <member noautovalidity="true" len="colorAttachmentCount">const <type>VkSampleCountFlagBits</type>* <name>pColorAttachmentSamples</name></member> |
| <member noautovalidity="true" optional="true"><type>VkSampleCountFlagBits</type> <name>depthStencilAttachmentSamples</name></member> |
| </type> |
| <type category="struct" name="VkAttachmentSampleCountInfoNV" alias="VkAttachmentSampleCountInfoAMD"/> |
| <type category="struct" name="VkMultiviewPerViewAttributesInfoNVX" structextends="VkCommandBufferInheritanceInfo,VkGraphicsPipelineCreateInfo,VkRenderingInfo"> |
| <member values="VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>perViewAttributes</name></member> |
| <member><type>VkBool32</type> <name>perViewAttributesPositionXOnly</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceImageViewMinLodFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>minLod</name></member> |
| </type> |
| <type category="struct" name="VkImageViewMinLodCreateInfoEXT" structextends="VkImageViewCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>float</type> <name>minLod</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>rasterizationOrderColorAttachmentAccess</name></member> |
| <member><type>VkBool32</type> <name>rasterizationOrderDepthAttachmentAccess</name></member> |
| <member><type>VkBool32</type> <name>rasterizationOrderStencilAttachmentAccess</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM" alias="VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT"/> |
| <type category="struct" name="VkPhysicalDeviceLinearColorAttachmentFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>linearColorAttachment</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>graphicsPipelineLibrary</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevicePipelineBinaryFeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_BINARY_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>pipelineBinaries</name></member> |
| </type> |
| <type category="struct" name="VkDevicePipelineBinaryInternalCacheControlKHR" structextends="VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_PIPELINE_BINARY_INTERNAL_CACHE_CONTROL_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>disableInternalCache</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevicePipelineBinaryPropertiesKHR" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_BINARY_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>pipelineBinaryInternalCache</name></member> |
| <member><type>VkBool32</type> <name>pipelineBinaryInternalCacheControl</name></member> |
| <member><type>VkBool32</type> <name>pipelineBinaryPrefersInternalCache</name></member> |
| <member><type>VkBool32</type> <name>pipelineBinaryPrecompiledInternalCache</name></member> |
| <member><type>VkBool32</type> <name>pipelineBinaryCompressedData</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>graphicsPipelineLibraryFastLinking</name></member> |
| <member limittype="bitmask"><type>VkBool32</type> <name>graphicsPipelineLibraryIndependentInterpolationDecoration</name></member> |
| </type> |
| <type category="struct" name="VkGraphicsPipelineLibraryCreateInfoEXT" structextends="VkGraphicsPipelineCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkGraphicsPipelineLibraryFlagsEXT</type> <name>flags</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>descriptorSetHostMapping</name></member> |
| </type> |
| <type category="struct" name="VkDescriptorSetBindingReferenceVALVE"> |
| <member values="VK_STRUCTURE_TYPE_DESCRIPTOR_SET_BINDING_REFERENCE_VALVE"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDescriptorSetLayout</type> <name>descriptorSetLayout</name></member> |
| <member><type>uint32_t</type> <name>binding</name></member> |
| </type> |
| <type category="struct" name="VkDescriptorSetLayoutHostMappingInfoVALVE"> |
| <member values="VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_HOST_MAPPING_INFO_VALVE"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>size_t</type> <name>descriptorOffset</name></member> |
| <member><type>uint32_t</type> <name>descriptorSize</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceNestedCommandBufferFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NESTED_COMMAND_BUFFER_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>nestedCommandBuffer</name></member> |
| <member><type>VkBool32</type> <name>nestedCommandBufferRendering</name></member> |
| <member><type>VkBool32</type> <name>nestedCommandBufferSimultaneousUse</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceNestedCommandBufferPropertiesEXT" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NESTED_COMMAND_BUFFER_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxCommandBufferNestingLevel</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>shaderModuleIdentifier</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="noauto"><type>uint8_t</type> <name>shaderModuleIdentifierAlgorithmUUID</name>[<enum>VK_UUID_SIZE</enum>]</member> |
| </type> |
| <type category="struct" name="VkPipelineShaderStageModuleIdentifierCreateInfoEXT" structextends="VkPipelineShaderStageCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>uint32_t</type> <name>identifierSize</name></member> |
| <member len="identifierSize">const <type>uint8_t</type>* <name>pIdentifier</name></member> |
| </type> |
| <type category="struct" name="VkShaderModuleIdentifierEXT" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member noautovalidity="true"><type>uint32_t</type> <name>identifierSize</name></member> |
| <member len="identifierSize"><type>uint8_t</type> <name>identifier</name>[<enum>VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT</enum>]</member> |
| </type> |
| <type category="struct" name="VkImageCompressionControlEXT" structextends="VkImageCreateInfo,VkSwapchainCreateInfoKHR,VkPhysicalDeviceImageFormatInfo2"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member noautovalidity="true"><type>VkImageCompressionFlagsEXT</type> <name>flags</name></member> |
| <member optional="true"><type>uint32_t</type> <name>compressionControlPlaneCount</name></member> |
| <member noautovalidity="true" len="compressionControlPlaneCount"><type>VkImageCompressionFixedRateFlagsEXT</type>* <name>pFixedRateFlags</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceImageCompressionControlFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>imageCompressionControl</name></member> |
| </type> |
| <type category="struct" name="VkImageCompressionPropertiesEXT" structextends="VkImageFormatProperties2,VkSurfaceFormat2KHR,VkSubresourceLayout2KHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkImageCompressionFlagsEXT</type> <name>imageCompressionFlags</name></member> |
| <member><type>VkImageCompressionFixedRateFlagsEXT</type> <name>imageCompressionFixedRateFlags</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>imageCompressionControlSwapchain</name></member> |
| </type> |
| <type category="struct" name="VkImageSubresource2KHR"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkImageSubresource</type> <name>imageSubresource</name></member> |
| </type> |
| <type category="struct" name="VkImageSubresource2EXT" alias="VkImageSubresource2KHR"/> |
| <type category="struct" name="VkSubresourceLayout2KHR" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_KHR"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkSubresourceLayout</type> <name>subresourceLayout</name></member> |
| </type> |
| <type category="struct" name="VkSubresourceLayout2EXT" alias="VkSubresourceLayout2KHR"/> |
| <type category="struct" name="VkRenderPassCreationControlEXT" structextends="VkRenderPassCreateInfo2,VkSubpassDescription2"> |
| <member values="VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>disallowMerging</name></member> |
| </type> |
| <type category="struct" name="VkRenderPassCreationFeedbackInfoEXT" returnedonly="true"> |
| <member><type>uint32_t</type> <name>postMergeSubpassCount</name></member> |
| </type> |
| <type category="struct" name="VkRenderPassCreationFeedbackCreateInfoEXT" structextends="VkRenderPassCreateInfo2"> |
| <member values="VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkRenderPassCreationFeedbackInfoEXT</type>* <name>pRenderPassFeedback</name></member> |
| </type> |
| <type category="struct" name="VkRenderPassSubpassFeedbackInfoEXT" returnedonly="true"> |
| <member><type>VkSubpassMergeStatusEXT</type> <name>subpassMergeStatus</name></member> |
| <member len="null-terminated"><type>char</type> <name>description</name>[<enum>VK_MAX_DESCRIPTION_SIZE</enum>]</member> |
| <member><type>uint32_t</type> <name>postMergeIndex</name></member> |
| </type> |
| <type category="struct" name="VkRenderPassSubpassFeedbackCreateInfoEXT" structextends="VkSubpassDescription2"> |
| <member values="VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkRenderPassSubpassFeedbackInfoEXT</type>* <name>pSubpassFeedback</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>subpassMergeFeedback</name></member> |
| </type> |
| <type category="struct" name="VkMicromapBuildInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_MICROMAP_BUILD_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkMicromapTypeEXT</type> <name>type</name></member> |
| <member optional="true"><type>VkBuildMicromapFlagsEXT</type> <name>flags</name></member> |
| <member noautovalidity="true"><type>VkBuildMicromapModeEXT</type> <name>mode</name></member> |
| <member optional="true" noautovalidity="true"><type>VkMicromapEXT</type> <name>dstMicromap</name></member> |
| <member optional="true"><type>uint32_t</type> <name>usageCountsCount</name></member> |
| <member len="usageCountsCount" optional="true">const <type>VkMicromapUsageEXT</type>* <name>pUsageCounts</name></member> |
| <member len="usageCountsCount,1" optional="true,false">const <type>VkMicromapUsageEXT</type>* const* <name>ppUsageCounts</name></member> |
| <member noautovalidity="true"><type>VkDeviceOrHostAddressConstKHR</type> <name>data</name></member> |
| <member noautovalidity="true"><type>VkDeviceOrHostAddressKHR</type> <name>scratchData</name></member> |
| <member noautovalidity="true"><type>VkDeviceOrHostAddressConstKHR</type> <name>triangleArray</name></member> |
| <member><type>VkDeviceSize</type> <name>triangleArrayStride</name></member> |
| </type> |
| <type category="struct" name="VkMicromapCreateInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_MICROMAP_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkMicromapCreateFlagsEXT</type> <name>createFlags</name></member> |
| <member><type>VkBuffer</type> <name>buffer</name></member> |
| <member><type>VkDeviceSize</type> <name>offset</name><comment>Specified in bytes</comment></member> |
| <member><type>VkDeviceSize</type> <name>size</name></member> |
| <member><type>VkMicromapTypeEXT</type> <name>type</name></member> |
| <member optional="true"><type>VkDeviceAddress</type> <name>deviceAddress</name></member> |
| </type> |
| <type category="struct" name="VkMicromapVersionInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_MICROMAP_VERSION_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member len="latexmath:[2 \times \mathtt{VK\_UUID\_SIZE}]" altlen="2*VK_UUID_SIZE">const <type>uint8_t</type>* <name>pVersionData</name></member> |
| </type> |
| <type category="struct" name="VkCopyMicromapInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_COPY_MICROMAP_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkMicromapEXT</type> <name>src</name></member> |
| <member><type>VkMicromapEXT</type> <name>dst</name></member> |
| <member><type>VkCopyMicromapModeEXT</type> <name>mode</name></member> |
| </type> |
| <type category="struct" name="VkCopyMicromapToMemoryInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_COPY_MICROMAP_TO_MEMORY_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkMicromapEXT</type> <name>src</name></member> |
| <member noautovalidity="true"><type>VkDeviceOrHostAddressKHR</type> <name>dst</name></member> |
| <member><type>VkCopyMicromapModeEXT</type> <name>mode</name></member> |
| </type> |
| <type category="struct" name="VkCopyMemoryToMicromapInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_COPY_MEMORY_TO_MICROMAP_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member noautovalidity="true"><type>VkDeviceOrHostAddressConstKHR</type> <name>src</name></member> |
| <member><type>VkMicromapEXT</type> <name>dst</name></member> |
| <member><type>VkCopyMicromapModeEXT</type> <name>mode</name></member> |
| </type> |
| <type category="struct" name="VkMicromapBuildSizesInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_MICROMAP_BUILD_SIZES_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceSize</type> <name>micromapSize</name></member> |
| <member><type>VkDeviceSize</type> <name>buildScratchSize</name></member> |
| <member><type>VkBool32</type> <name>discardable</name></member> |
| </type> |
| <type category="struct" name="VkMicromapUsageEXT"> |
| <member><type>uint32_t</type> <name>count</name></member> |
| <member><type>uint32_t</type> <name>subdivisionLevel</name></member> |
| <member><type>uint32_t</type> <name>format</name><comment>Interpretation depends on parent type</comment></member> |
| </type> |
| <type category="struct" name="VkMicromapTriangleEXT"> |
| <member><type>uint32_t</type> <name>dataOffset</name><comment>Specified in bytes</comment></member> |
| <member><type>uint16_t</type> <name>subdivisionLevel</name></member> |
| <member><type>uint16_t</type> <name>format</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceOpacityMicromapFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>micromap</name></member> |
| <member><type>VkBool32</type> <name>micromapCaptureReplay</name></member> |
| <member><type>VkBool32</type> <name>micromapHostCommands</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceOpacityMicromapPropertiesEXT" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxOpacity2StateSubdivisionLevel</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxOpacity4StateSubdivisionLevel</name></member> |
| </type> |
| <type category="struct" name="VkAccelerationStructureTrianglesOpacityMicromapEXT" structextends="VkAccelerationStructureGeometryTrianglesDataKHR"> |
| <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkIndexType</type> <name>indexType</name></member> |
| <member noautovalidity="true"><type>VkDeviceOrHostAddressConstKHR</type> <name>indexBuffer</name></member> |
| <member><type>VkDeviceSize</type> <name>indexStride</name></member> |
| <member><type>uint32_t</type> <name>baseTriangle</name></member> |
| <member optional="true"><type>uint32_t</type> <name>usageCountsCount</name></member> |
| <member len="usageCountsCount" optional="true">const <type>VkMicromapUsageEXT</type>* <name>pUsageCounts</name></member> |
| <member len="usageCountsCount,1" optional="true,false">const <type>VkMicromapUsageEXT</type>* const* <name>ppUsageCounts</name></member> |
| <member optional="true"><type>VkMicromapEXT</type> <name>micromap</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceDisplacementMicromapFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISPLACEMENT_MICROMAP_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>displacementMicromap</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceDisplacementMicromapPropertiesNV" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISPLACEMENT_MICROMAP_PROPERTIES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max"><type>uint32_t</type> <name>maxDisplacementMicromapSubdivisionLevel</name></member> |
| </type> |
| <type category="struct" name="VkAccelerationStructureTrianglesDisplacementMicromapNV" structextends="VkAccelerationStructureGeometryTrianglesDataKHR"> |
| <member values="VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_DISPLACEMENT_MICROMAP_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| |
| <member><type>VkFormat</type> <name>displacementBiasAndScaleFormat</name></member> |
| <member><type>VkFormat</type> <name>displacementVectorFormat</name></member> |
| |
| <member noautovalidity="true"><type>VkDeviceOrHostAddressConstKHR</type> <name>displacementBiasAndScaleBuffer</name></member> |
| <member><type>VkDeviceSize</type> <name>displacementBiasAndScaleStride</name></member> |
| <member noautovalidity="true"><type>VkDeviceOrHostAddressConstKHR</type> <name>displacementVectorBuffer</name></member> |
| <member><type>VkDeviceSize</type> <name>displacementVectorStride</name></member> |
| <member noautovalidity="true"><type>VkDeviceOrHostAddressConstKHR</type> <name>displacedMicromapPrimitiveFlags</name></member> |
| <member><type>VkDeviceSize</type> <name>displacedMicromapPrimitiveFlagsStride</name></member> |
| <member><type>VkIndexType</type> <name>indexType</name></member> |
| <member noautovalidity="true"><type>VkDeviceOrHostAddressConstKHR</type> <name>indexBuffer</name></member> |
| <member><type>VkDeviceSize</type> <name>indexStride</name></member> |
| |
| <member><type>uint32_t</type> <name>baseTriangle</name></member> |
| |
| <member optional="true"><type>uint32_t</type> <name>usageCountsCount</name></member> |
| <member len="usageCountsCount" optional="true">const <type>VkMicromapUsageEXT</type>* <name>pUsageCounts</name></member> |
| <member len="usageCountsCount,1" optional="true,false">const <type>VkMicromapUsageEXT</type>* const* <name>ppUsageCounts</name></member> |
| |
| <member optional="true"><type>VkMicromapEXT</type> <name>micromap</name></member> |
| </type> |
| <type category="struct" name="VkPipelinePropertiesIdentifierEXT" returnedonly="true"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>uint8_t</type> <name>pipelineIdentifier</name>[<enum>VK_UUID_SIZE</enum>]</member> |
| </type> |
| <type category="struct" name="VkPhysicalDevicePipelinePropertiesFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>pipelinePropertiesIdentifier</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD"><type>VkStructureType</type> <name>sType</name></member> |
| <member noautovalidity="true" optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>shaderEarlyAndLateFragmentTests</name></member> |
| </type> |
| <type category="struct" name="VkExternalMemoryAcquireUnmodifiedEXT" structextends="VkBufferMemoryBarrier,VkBufferMemoryBarrier2,VkImageMemoryBarrier,VkImageMemoryBarrier2"> |
| <member values="VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_ACQUIRE_UNMODIFIED_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>acquireUnmodifiedMemory</name></member> |
| </type> |
| <type category="struct" name="VkExportMetalObjectCreateInfoEXT" structextends="VkInstanceCreateInfo,VkMemoryAllocateInfo,VkImageCreateInfo,VkImageViewCreateInfo,VkBufferViewCreateInfo,VkSemaphoreCreateInfo,VkEventCreateInfo" allowduplicate="true"> |
| <member values="VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkExportMetalObjectTypeFlagBitsEXT</type> <name>exportObjectType</name></member> |
| </type> |
| <type category="struct" name="VkExportMetalObjectsInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECTS_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| </type> |
| <type category="struct" name="VkExportMetalDeviceInfoEXT" structextends="VkExportMetalObjectsInfoEXT"> |
| <member values="VK_STRUCTURE_TYPE_EXPORT_METAL_DEVICE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>MTLDevice_id</type> <name>mtlDevice</name></member> |
| </type> |
| <type category="struct" name="VkExportMetalCommandQueueInfoEXT" structextends="VkExportMetalObjectsInfoEXT" allowduplicate="true"> |
| <member values="VK_STRUCTURE_TYPE_EXPORT_METAL_COMMAND_QUEUE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkQueue</type> <name>queue</name></member> |
| <member><type>MTLCommandQueue_id</type> <name>mtlCommandQueue</name></member> |
| </type> |
| <type category="struct" name="VkExportMetalBufferInfoEXT" structextends="VkExportMetalObjectsInfoEXT" allowduplicate="true"> |
| <member values="VK_STRUCTURE_TYPE_EXPORT_METAL_BUFFER_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkDeviceMemory</type> <name>memory</name></member> |
| <member><type>MTLBuffer_id</type> <name>mtlBuffer</name></member> |
| </type> |
| <type category="struct" name="VkImportMetalBufferInfoEXT" structextends="VkMemoryAllocateInfo" allowduplicate="false"> |
| <member values="VK_STRUCTURE_TYPE_IMPORT_METAL_BUFFER_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>MTLBuffer_id</type> <name>mtlBuffer</name></member> |
| </type> |
| <type category="struct" name="VkExportMetalTextureInfoEXT" structextends="VkExportMetalObjectsInfoEXT" allowduplicate="true"> |
| <member values="VK_STRUCTURE_TYPE_EXPORT_METAL_TEXTURE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkImage</type> <name>image</name></member> |
| <member optional="true"><type>VkImageView</type> <name>imageView</name></member> |
| <member optional="true"><type>VkBufferView</type> <name>bufferView</name></member> |
| <member><type>VkImageAspectFlagBits</type> <name>plane</name></member> |
| <member><type>MTLTexture_id</type> <name>mtlTexture</name></member> |
| </type> |
| <type category="struct" name="VkImportMetalTextureInfoEXT" structextends="VkImageCreateInfo" allowduplicate="true"> |
| <member values="VK_STRUCTURE_TYPE_IMPORT_METAL_TEXTURE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkImageAspectFlagBits</type> <name>plane</name></member> |
| <member><type>MTLTexture_id</type> <name>mtlTexture</name></member> |
| </type> |
| <type category="struct" name="VkExportMetalIOSurfaceInfoEXT" structextends="VkExportMetalObjectsInfoEXT" allowduplicate="true"> |
| <member values="VK_STRUCTURE_TYPE_EXPORT_METAL_IO_SURFACE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkImage</type> <name>image</name></member> |
| <member><type>IOSurfaceRef</type> <name>ioSurface</name></member> |
| </type> |
| <type category="struct" name="VkImportMetalIOSurfaceInfoEXT" structextends="VkImageCreateInfo" allowduplicate="false"> |
| <member values="VK_STRUCTURE_TYPE_IMPORT_METAL_IO_SURFACE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>IOSurfaceRef</type> <name>ioSurface</name></member> |
| </type> |
| <type category="struct" name="VkExportMetalSharedEventInfoEXT" structextends="VkExportMetalObjectsInfoEXT" allowduplicate="true"> |
| <member values="VK_STRUCTURE_TYPE_EXPORT_METAL_SHARED_EVENT_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkSemaphore</type> <name>semaphore</name></member> |
| <member optional="true"><type>VkEvent</type> <name>event</name></member> |
| <member><type>MTLSharedEvent_id</type> <name>mtlSharedEvent</name></member> |
| </type> |
| <type category="struct" name="VkImportMetalSharedEventInfoEXT" structextends="VkSemaphoreCreateInfo,VkEventCreateInfo" allowduplicate="false"> |
| <member values="VK_STRUCTURE_TYPE_IMPORT_METAL_SHARED_EVENT_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>MTLSharedEvent_id</type> <name>mtlSharedEvent</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>nonSeamlessCubeMap</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevicePipelineRobustnessFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member noautovalidity="true" optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>pipelineRobustness</name></member> |
| </type> |
| <type category="struct" name="VkPipelineRobustnessCreateInfoEXT" structextends="VkGraphicsPipelineCreateInfo,VkComputePipelineCreateInfo,VkPipelineShaderStageCreateInfo,VkRayTracingPipelineCreateInfoKHR"> |
| <member values="VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member noautovalidity="true" optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkPipelineRobustnessBufferBehaviorEXT</type> <name>storageBuffers</name></member> |
| <member><type>VkPipelineRobustnessBufferBehaviorEXT</type> <name>uniformBuffers</name></member> |
| <member><type>VkPipelineRobustnessBufferBehaviorEXT</type> <name>vertexInputs</name></member> |
| <member><type>VkPipelineRobustnessImageBehaviorEXT</type> <name>images</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDevicePipelineRobustnessPropertiesEXT" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="exact"><type>VkPipelineRobustnessBufferBehaviorEXT</type> <name>defaultRobustnessStorageBuffers</name></member> |
| <member limittype="exact"><type>VkPipelineRobustnessBufferBehaviorEXT</type> <name>defaultRobustnessUniformBuffers</name></member> |
| <member limittype="exact"><type>VkPipelineRobustnessBufferBehaviorEXT</type> <name>defaultRobustnessVertexInputs</name></member> |
| <member limittype="exact"><type>VkPipelineRobustnessImageBehaviorEXT</type> <name>defaultRobustnessImages</name></member> |
| </type> |
| <type category="struct" name="VkImageViewSampleWeightCreateInfoQCOM" structextends="VkImageViewCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>VkOffset2D</type> <name>filterCenter</name></member> |
| <member><type>VkExtent2D</type> <name>filterSize</name></member> |
| <member><type>uint32_t</type> <name>numPhases</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceImageProcessingFeaturesQCOM" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>textureSampleWeighted</name></member> |
| <member><type>VkBool32</type> <name>textureBoxFilter</name></member> |
| <member><type>VkBool32</type> <name>textureBlockMatch</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceImageProcessingPropertiesQCOM" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="max" optional="true"><type>uint32_t</type> <name>maxWeightFilterPhases</name></member> |
| <member limittype="max" optional="true"><type>VkExtent2D</type> <name>maxWeightFilterDimension</name></member> |
| <member limittype="max" optional="true"><type>VkExtent2D</type> <name>maxBlockMatchRegion</name></member> |
| <member limittype="max" optional="true"><type>VkExtent2D</type> <name>maxBoxFilterBlockSize</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceTilePropertiesFeaturesQCOM" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>tileProperties</name></member> |
| </type> |
| <type category="struct" name="VkTilePropertiesQCOM"> |
| <member values="VK_STRUCTURE_TYPE_TILE_PROPERTIES_QCOM"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkExtent3D</type> <name>tileSize</name></member> |
| <member><type>VkExtent2D</type> <name>apronSize</name></member> |
| <member><type>VkOffset2D</type> <name>origin</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceAmigoProfilingFeaturesSEC" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>amigoProfiling</name></member> |
| </type> |
| <type category="struct" name="VkAmigoProfilingSubmitInfoSEC" structextends="VkSubmitInfo"> |
| <member values="VK_STRUCTURE_TYPE_AMIGO_PROFILING_SUBMIT_INFO_SEC"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true">const <type>void</type>* <name>pNext</name></member> |
| <member><type>uint64_t</type> <name>firstDrawTimestamp</name></member> |
| <member><type>uint64_t</type> <name>swapBufferTimestamp</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>attachmentFeedbackLoopLayout</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceDepthClampZeroOneFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>depthClampZeroOne</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceAddressBindingReportFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>reportAddressBinding</name></member> |
| </type> |
| <type category="struct" name="VkDeviceAddressBindingCallbackDataEXT" structextends="VkDebugUtilsMessengerCallbackDataEXT"> |
| <member values="VK_STRUCTURE_TYPE_DEVICE_ADDRESS_BINDING_CALLBACK_DATA_EXT"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member optional="true"><type>VkDeviceAddressBindingFlagsEXT</type> <name>flags</name></member> |
| <member><type>VkDeviceAddress</type> <name>baseAddress</name></member> |
| <member><type>VkDeviceSize</type> <name>size</name></member> |
| <member><type>VkDeviceAddressBindingTypeEXT</type> <name>bindingType</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceOpticalFlowFeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true" noautovalidity="true"><type>void</type>* <name>pNext</name></member> |
| <member><type>VkBool32</type> <name>opticalFlow</name></member> |
| </type> |
| <type category="struct" name="VkPhysicalDeviceOpticalFlowPropertiesNV" returnedonly="true" structextends="VkPhysicalDeviceProperties2"> |
| <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_PROPERTIES_NV"><type>VkStructureType</type> <name>sType</name></member> |
| <member optional="true"><type>void</type>* <name>pNext</name></member> |
| <member limittype="bitmask"><type>VkOpticalFlowGridSizeFlagsNV</type> <name>supportedOutputGridSizes</name></member> |
| <member limittype="bitmask"><type>VkOpticalFlowGridSizeFlagsNV</type> <name>supportedHintGridSizes</name></member> |
| <member limittype="noauto"><type>VkBool32</type> <name>hintSupported</name></member> |
| <member limittype="noauto"><type>VkBool32</type> <name>costSupported</name></member> |
| <member limittype="noauto"><type>VkBool32</type> <name>bidirectionalFlowSupported</name></member> |
| <member limittype="noauto"><type>VkBool32</type> <name>globalFlowSupported</name></member> |
| <member limittype="noauto"><type>uint32_t</type> <name>minWidth</name></member> |
| <member limittype="noauto"><type>uint32_t</type> <name>minHeight</name></member> |
| <member limittype="noauto"><type>uint32_t</type> <name>maxWidth</name></member> |
| <member limittype="noauto"><type>uint32_t</type> <name>maxHeight</name></member> |
| <member limittype="noauto"><type>uint32_t</type> <name>maxNumRegionsOfInterest</name></member> |
| </type> |
| <type category="struct" name= |