This removes the need for manual struct definitions in the drivers, and allows us to load and use the function pointers loaded by winevulkan on instance / device creation.
This will also be useful in the future as we will want to have structures an function pointers for host-specific external memory, to export/import images for compositing and shared resources.
-- v2: winevulkan: Simplify struct generation ordering. winevulkan: Simplify function pointer generation. winevulkan: Generate structs and pointers for macos platform. winevulkan: Generate structs and pointers for wayland platform. winevulkan: Simplify VkDefine and typedefs generation. win32u: Pass struct vulkan_physical_device pointer to drivers.
From: Rémi Bernon rbernon@codeweavers.com
--- dlls/win32u/vulkan.c | 12 ++++++------ dlls/winemac.drv/vulkan.c | 6 +++--- dlls/winewayland.drv/vulkan.c | 10 +++++----- dlls/winex11.drv/vulkan.c | 12 +++++------- include/wine/vulkan_driver.h | 2 +- 5 files changed, 20 insertions(+), 22 deletions(-)
diff --git a/dlls/win32u/vulkan.c b/dlls/win32u/vulkan.c index 6d6e5f81f54..9cd5a533060 100644 --- a/dlls/win32u/vulkan.c +++ b/dlls/win32u/vulkan.c @@ -266,7 +266,7 @@ static VkResult win32u_vkGetPhysicalDeviceSurfaceFormats2KHR( VkPhysicalDevice c static VkBool32 win32u_vkGetPhysicalDeviceWin32PresentationSupportKHR( VkPhysicalDevice client_physical_device, uint32_t queue ) { struct vulkan_physical_device *physical_device = vulkan_physical_device_from_handle( client_physical_device ); - return driver_funcs->p_vkGetPhysicalDeviceWin32PresentationSupportKHR( physical_device->host.physical_device, queue ); + return driver_funcs->p_get_physical_device_presentation_support( physical_device, queue ); }
static BOOL extents_equals( const VkExtent2D *extents, const RECT *rect ) @@ -515,7 +515,7 @@ static VkResult nulldrv_vulkan_surface_create( HWND hwnd, const struct vulkan_in return res; }
-static VkBool32 nulldrv_vkGetPhysicalDeviceWin32PresentationSupportKHR( VkPhysicalDevice device, uint32_t queue ) +static VkBool32 nulldrv_get_physical_device_presentation_support( struct vulkan_physical_device *physical_device, uint32_t queue ) { return VK_TRUE; } @@ -528,7 +528,7 @@ static const char *nulldrv_get_host_surface_extension(void) static const struct vulkan_driver_funcs nulldrv_funcs = { .p_vulkan_surface_create = nulldrv_vulkan_surface_create, - .p_vkGetPhysicalDeviceWin32PresentationSupportKHR = nulldrv_vkGetPhysicalDeviceWin32PresentationSupportKHR, + .p_get_physical_device_presentation_support = nulldrv_get_physical_device_presentation_support, .p_get_host_surface_extension = nulldrv_get_host_surface_extension, };
@@ -560,10 +560,10 @@ static VkResult lazydrv_vulkan_surface_create( HWND hwnd, const struct vulkan_in return driver_funcs->p_vulkan_surface_create( hwnd, instance, surface, client ); }
-static VkBool32 lazydrv_vkGetPhysicalDeviceWin32PresentationSupportKHR( VkPhysicalDevice device, uint32_t queue ) +static VkBool32 lazydrv_get_physical_device_presentation_support( struct vulkan_physical_device *physical_device, uint32_t queue ) { vulkan_driver_load(); - return driver_funcs->p_vkGetPhysicalDeviceWin32PresentationSupportKHR( device, queue ); + return driver_funcs->p_get_physical_device_presentation_support( physical_device, queue ); }
static const char *lazydrv_get_host_surface_extension(void) @@ -575,7 +575,7 @@ static const char *lazydrv_get_host_surface_extension(void) static const struct vulkan_driver_funcs lazydrv_funcs = { .p_vulkan_surface_create = lazydrv_vulkan_surface_create, - .p_vkGetPhysicalDeviceWin32PresentationSupportKHR = lazydrv_vkGetPhysicalDeviceWin32PresentationSupportKHR, + .p_get_physical_device_presentation_support = lazydrv_get_physical_device_presentation_support, .p_get_host_surface_extension = lazydrv_get_host_surface_extension, };
diff --git a/dlls/winemac.drv/vulkan.c b/dlls/winemac.drv/vulkan.c index c67b007705a..77c85476dc7 100644 --- a/dlls/winemac.drv/vulkan.c +++ b/dlls/winemac.drv/vulkan.c @@ -117,10 +117,10 @@ err: return VK_ERROR_INCOMPATIBLE_DRIVER; }
-static VkBool32 macdrv_vkGetPhysicalDeviceWin32PresentationSupportKHR(VkPhysicalDevice phys_dev, +static VkBool32 macdrv_get_physical_device_presentation_support(struct vulkan_physical_device *physical_device, uint32_t index) { - TRACE("%p %u\n", phys_dev, index); + TRACE("%p %u\n", physical_device, index);
return VK_TRUE; } @@ -133,7 +133,7 @@ static const char *macdrv_get_host_surface_extension(void) static const struct vulkan_driver_funcs macdrv_vulkan_driver_funcs = { .p_vulkan_surface_create = macdrv_vulkan_surface_create, - .p_vkGetPhysicalDeviceWin32PresentationSupportKHR = macdrv_vkGetPhysicalDeviceWin32PresentationSupportKHR, + .p_get_physical_device_presentation_support = macdrv_get_physical_device_presentation_support, .p_get_host_surface_extension = macdrv_get_host_surface_extension, };
diff --git a/dlls/winewayland.drv/vulkan.c b/dlls/winewayland.drv/vulkan.c index c6aa9342c09..e8d4f14727f 100644 --- a/dlls/winewayland.drv/vulkan.c +++ b/dlls/winewayland.drv/vulkan.c @@ -88,12 +88,12 @@ static VkResult wayland_vulkan_surface_create(HWND hwnd, const struct vulkan_ins return VK_SUCCESS; }
-static VkBool32 wayland_vkGetPhysicalDeviceWin32PresentationSupportKHR(VkPhysicalDevice phys_dev, - uint32_t index) +static VkBool32 wayland_get_physical_device_presentation_support(struct vulkan_physical_device *physical_device, + uint32_t index) { - TRACE("%p %u\n", phys_dev, index); + TRACE("%p %u\n", physical_device, index);
- return pvkGetPhysicalDeviceWaylandPresentationSupportKHR(phys_dev, index, + return pvkGetPhysicalDeviceWaylandPresentationSupportKHR(physical_device->host.physical_device, index, process_wayland.wl_display); }
@@ -105,7 +105,7 @@ static const char *wayland_get_host_surface_extension(void) static const struct vulkan_driver_funcs wayland_vulkan_driver_funcs = { .p_vulkan_surface_create = wayland_vulkan_surface_create, - .p_vkGetPhysicalDeviceWin32PresentationSupportKHR = wayland_vkGetPhysicalDeviceWin32PresentationSupportKHR, + .p_get_physical_device_presentation_support = wayland_get_physical_device_presentation_support, .p_get_host_surface_extension = wayland_get_host_surface_extension, };
diff --git a/dlls/winex11.drv/vulkan.c b/dlls/winex11.drv/vulkan.c index 052ed7194a5..f482f41a1e4 100644 --- a/dlls/winex11.drv/vulkan.c +++ b/dlls/winex11.drv/vulkan.c @@ -85,13 +85,11 @@ static VkResult X11DRV_vulkan_surface_create( HWND hwnd, const struct vulkan_ins return VK_SUCCESS; }
-static VkBool32 X11DRV_vkGetPhysicalDeviceWin32PresentationSupportKHR(VkPhysicalDevice phys_dev, - uint32_t index) +static VkBool32 X11DRV_get_physical_device_presentation_support( struct vulkan_physical_device *physical_device, uint32_t index ) { - TRACE("%p %u\n", phys_dev, index); - - return pvkGetPhysicalDeviceXlibPresentationSupportKHR(phys_dev, index, gdi_display, - default_visual.visual->visualid); + TRACE( "%p %u\n", physical_device, index ); + return pvkGetPhysicalDeviceXlibPresentationSupportKHR( physical_device->host.physical_device, index, gdi_display, + default_visual.visual->visualid ); }
static const char *X11DRV_get_host_surface_extension(void) @@ -102,7 +100,7 @@ static const char *X11DRV_get_host_surface_extension(void) static const struct vulkan_driver_funcs x11drv_vulkan_driver_funcs = { .p_vulkan_surface_create = X11DRV_vulkan_surface_create, - .p_vkGetPhysicalDeviceWin32PresentationSupportKHR = X11DRV_vkGetPhysicalDeviceWin32PresentationSupportKHR, + .p_get_physical_device_presentation_support = X11DRV_get_physical_device_presentation_support, .p_get_host_surface_extension = X11DRV_get_host_surface_extension, };
diff --git a/include/wine/vulkan_driver.h b/include/wine/vulkan_driver.h index 0579ea7773f..7484a91c315 100644 --- a/include/wine/vulkan_driver.h +++ b/include/wine/vulkan_driver.h @@ -179,7 +179,7 @@ struct client_surface; struct vulkan_driver_funcs { VkResult (*p_vulkan_surface_create)(HWND, const struct vulkan_instance *, VkSurfaceKHR *, struct client_surface **); - VkBool32 (*p_vkGetPhysicalDeviceWin32PresentationSupportKHR)(VkPhysicalDevice, uint32_t); + VkBool32 (*p_get_physical_device_presentation_support)(struct vulkan_physical_device *, uint32_t); const char *(*p_get_host_surface_extension)(void); };
From: Rémi Bernon rbernon@codeweavers.com
--- dlls/winevulkan/make_vulkan | 96 ++++++++++--------------------------- include/wine/vulkan.h | 66 +++++++++++++++++-------- 2 files changed, 71 insertions(+), 91 deletions(-)
diff --git a/dlls/winevulkan/make_vulkan b/dlls/winevulkan/make_vulkan index 2a7b192685c..759ca680779 100755 --- a/dlls/winevulkan/make_vulkan +++ b/dlls/winevulkan/make_vulkan @@ -330,6 +330,10 @@ def api_is_vulkan(obj): return "vulkan" in obj.get("api", "vulkan").split(",")
+def innertext(tag): + return (tag.text or '') + ''.join(innertext(e) for e in tag) + (tag.tail or '') + + def convert_suffix(direction, win_type, unwrap, is_wrapped): if direction == Direction.OUTPUT: if not is_wrapped: @@ -405,8 +409,7 @@ class VkConstant(object):
class VkDefine(object): - def __init__(self, name, value): - self.name = name + def __init__(self, value): self.value = value
@staticmethod @@ -414,59 +417,16 @@ class VkDefine(object): if not api_is_vulkan(define): return None
- name_elem = define.find("name") - - if name_elem is None: - # <type category="define" name="some_name">some_value</type> - name = define.attrib.get("name") - - # We override behavior of VK_USE_64_BIT_PTR_DEFINES as the default non-dispatchable handle - # definition various between 64-bit (uses pointers) and 32-bit (uses uint64_t). - # This complicates TRACEs in the thunks, so just use uint64_t. - if name == "VK_USE_64_BIT_PTR_DEFINES": - value = "#define VK_USE_64_BIT_PTR_DEFINES 0" - else: - value = define.text - return VkDefine(name, value) - - # With a name element the structure is like: - # <type category="define"><name>some_name</name>some_value</type> - name = name_elem.text - - # Perform minimal parsing for Vulkan constants, which we don't need, but are referenced - # elsewhere in vk.xml. - # - VK_API_VERSION is a messy, deprecated constant and we don't want generate code for it. - # - AHardwareBuffer/ANativeWindow are forward declarations for Android types, which leaked - # into the define region. - if name in ["VK_API_VERSION", "AHardwareBuffer", "ANativeWindow", "CAMetalLayer"]: - return VkDefine(name, None) - - # The body of the define is basically unstructured C code. It is not meant for easy parsing. - # Some lines contain deprecated values or comments, which we try to filter out. - value = "" - for line in define.text.splitlines(): - # Skip comments or deprecated values. - if "//" in line: - continue - value += line - - for child in define: - value += child.text - if child.tail is not None: - # Split comments for VK_API_VERSION_1_0 / VK_API_VERSION_1_1 - if "//" in child.tail: - value += child.tail.split("//")[0] - else: - value += child.tail + value = innertext(define) + value = re.sub(r'\s*//.*$', '', value, flags=re.M) + value = value.strip()
- return VkDefine(name, value.rstrip(' ')) + if "#define VK_USE_64_BIT_PTR_DEFINES" in value: + return VkDefine("#define VK_USE_64_BIT_PTR_DEFINES 0") + return VkDefine(value)
def definition(self): - if self.value is None: - return "" - - # Nothing to do as the value was already put in the right form during parsing. - return "{0}\n".format(self.value) + return self.value + '\n'
class VkEnum(object): @@ -3692,26 +3652,18 @@ class VkRegistry(object):
if type_info["category"] == "basetype": name = t.find("name").text - _type = None - if not t.find("type") is None: - _type = t.find("type").text - tail = t.find("type").tail - if tail is not None: - _type += tail.strip() - basetype = VkBaseType(name, _type) - if basetype: - base_types.append(basetype) - type_info["data"] = basetype - else: - continue + define = VkDefine.from_xml(t) + defines.append(define) + type_info["data"] = define
# Basic C types don't need us to define them, but we do need data for them - if type_info["requires"] == "vk_platform": + elif type_info["requires"] == "vk_platform": + name = t.attrib.get("name") requires = type_info["requires"] - basic_c = VkBaseType(name, _type, requires=requires) + basic_c = VkBaseType(name, name, requires=requires) type_info["data"] = basic_c
- if type_info["category"] == "bitmask": + elif type_info["category"] == "bitmask": name = t.find("name").text _type = t.find("type").text
@@ -3722,7 +3674,7 @@ class VkRegistry(object): bitmasks.append(bitmask) type_info["data"] = bitmask
- if type_info["category"] == "define": + elif type_info["category"] == "define": define = VkDefine.from_xml(t) if define: defines.append(define) @@ -3730,7 +3682,7 @@ class VkRegistry(object): else: continue
- if type_info["category"] == "enum": + elif type_info["category"] == "enum": name = t.attrib.get("name") # The type section only contains enum names, not the actual definition. # Since we already parsed the enum before, just link it in. @@ -3742,7 +3694,7 @@ class VkRegistry(object): # definitions. type_info["data"] = None
- if type_info["category"] == "funcpointer": + elif type_info["category"] == "funcpointer": funcpointer = VkFunctionPointer.from_xml(t) if funcpointer: funcpointers.append(funcpointer) @@ -3750,7 +3702,7 @@ class VkRegistry(object): else: continue
- if type_info["category"] == "handle": + elif type_info["category"] == "handle": handle = VkHandle.from_xml(t) if handle: handles.append(handle) @@ -3758,7 +3710,7 @@ class VkRegistry(object): else: continue
- if type_info["category"] in ["struct", "union"]: + elif type_info["category"] in ["struct", "union"]: # We store unions among structs as some structs depend # on unions. The types are very similar in parsing and # generation anyway. The official Vulkan scripts use diff --git a/include/wine/vulkan.h b/include/wine/vulkan.h index 15c902a333e..c6a41ef73b9 100644 --- a/include/wine/vulkan.h +++ b/include/wine/vulkan.h @@ -891,6 +891,7 @@ #define VK_API_VERSION_MINOR(version) (((uint32_t)(version) >> 12U) & 0x3FFU) #define VK_API_VERSION_PATCH(version) ((uint32_t)(version) & 0xFFFU) #define VKSC_API_VARIANT 1 + #define VK_API_VERSION_1_0 VK_MAKE_API_VERSION(0, 1, 0, 0) #define VK_API_VERSION_1_1 VK_MAKE_API_VERSION(0, 1, 1, 0) #define VK_API_VERSION_1_2 VK_MAKE_API_VERSION(0, 1, 2, 0) @@ -901,7 +902,6 @@ #define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 4, VK_HEADER_VERSION) #define VK_DEFINE_HANDLE(object) typedef struct object##_T* object; #define VK_USE_64_BIT_PTR_DEFINES 0 - #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)) @@ -916,7 +916,6 @@ #ifndef VK_NULL_HANDLE #define VK_NULL_HANDLE 0 #endif - #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; @@ -924,6 +923,52 @@ #define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef uint64_t object; #endif #endif +struct ANativeWindow; +struct AHardwareBuffer; +#ifdef __OBJC__ +@class CAMetalLayer; +#else +typedef void CAMetalLayer; +#endif +#ifdef __OBJC__ +@protocol MTLDevice; +typedef __unsafe_unretained id<MTLDevice> MTLDevice_id; +#else +typedef void* MTLDevice_id; +#endif +#ifdef __OBJC__ +@protocol MTLCommandQueue; +typedef __unsafe_unretained id<MTLCommandQueue> MTLCommandQueue_id; +#else +typedef void* MTLCommandQueue_id; +#endif +#ifdef __OBJC__ +@protocol MTLBuffer; +typedef __unsafe_unretained id<MTLBuffer> MTLBuffer_id; +#else +typedef void* MTLBuffer_id; +#endif +#ifdef __OBJC__ +@protocol MTLTexture; +typedef __unsafe_unretained id<MTLTexture> MTLTexture_id; +#else +typedef void* MTLTexture_id; +#endif +#ifdef __OBJC__ +@protocol MTLSharedEvent; +typedef __unsafe_unretained id<MTLSharedEvent> MTLSharedEvent_id; +#else +typedef void* MTLSharedEvent_id; +#endif +typedef struct __IOSurface* IOSurfaceRef; +typedef uint32_t VkSampleMask; +typedef uint32_t VkBool32; +typedef uint32_t VkFlags; +typedef uint64_t VkFlags64; +typedef uint64_t VkDeviceSize; +typedef uint64_t VkDeviceAddress; +typedef struct NativeWindow OHNativeWindow; +typedef void* VkRemoteAddressNV; #define VK_MAKE_VIDEO_STD_VERSION(major, minor, patch) \ ((((uint32_t)(major)) << 22) | (((uint32_t)(minor)) << 12) | ((uint32_t)(patch))) #define VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_1_0_0 VK_MAKE_VIDEO_STD_VERSION(1, 0, 0) @@ -988,23 +1033,6 @@ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkValidationCacheEXT) VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkVideoSessionKHR) VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkVideoSessionParametersKHR)
-struct AHardwareBuffer; -struct ANativeWindow; -struct CAMetalLayer; -struct IOSurfaceRef; -struct MTLBuffer_id; -struct MTLCommandQueue_id; -struct MTLDevice_id; -struct MTLSharedEvent_id; -struct MTLTexture_id; -struct OHNativeWindow; -typedef uint32_t VkBool32; -typedef uint64_t VkDeviceAddress; -typedef uint64_t VkDeviceSize; -typedef uint32_t VkFlags; -typedef uint64_t VkFlags64; -typedef void* VkRemoteAddressNV; -typedef uint32_t VkSampleMask;
typedef VkFlags VkAccelerationStructureCreateFlagsKHR; typedef VkFlags VkAccelerationStructureMotionInfoFlagsNV;
From: Rémi Bernon rbernon@codeweavers.com
--- dlls/winevulkan/make_vulkan | 8 ++++++- dlls/winewayland.drv/vulkan.c | 41 +++++------------------------------ include/wine/vulkan.h | 18 +++++++++++++++ 3 files changed, 30 insertions(+), 37 deletions(-)
diff --git a/dlls/winevulkan/make_vulkan b/dlls/winevulkan/make_vulkan index 759ca680779..24320fe5b9b 100755 --- a/dlls/winevulkan/make_vulkan +++ b/dlls/winevulkan/make_vulkan @@ -134,6 +134,12 @@ UNEXPOSED_EXTENSIONS = { "VK_EXT_map_memory_placed", "VK_KHR_external_memory_win32", "VK_EXT_headless_surface", + # Extensions for other platforms + "VK_KHR_wayland_surface", +} + +UNEXPOSED_PLATFORMS = { + "wayland", }
# The Vulkan loader provides entry-points for core functionality and important @@ -3506,7 +3512,7 @@ class VkRegistry(object): self._process_require_enum(enum_elem, ext, only_aliased=True)
platform = ext.attrib.get("platform") - if platform and platform != "win32": + if platform and platform != "win32" and platform not in UNEXPOSED_PLATFORMS: LOGGER.debug("Skipping extensions {0} for platform {1}".format(ext_name, platform)) skipped_exts.append(ext_name) return diff --git a/dlls/winewayland.drv/vulkan.c b/dlls/winewayland.drv/vulkan.c index e8d4f14727f..1715f479076 100644 --- a/dlls/winewayland.drv/vulkan.c +++ b/dlls/winewayland.drv/vulkan.c @@ -37,22 +37,6 @@
WINE_DEFAULT_DEBUG_CHANNEL(vulkan);
-#ifdef SONAME_LIBVULKAN - -#define VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR 1000006000 - -typedef struct VkWaylandSurfaceCreateInfoKHR -{ - VkStructureType sType; - const void *pNext; - VkWaylandSurfaceCreateFlagsKHR flags; - struct wl_display *display; - struct wl_surface *surface; -} VkWaylandSurfaceCreateInfoKHR; - -static VkResult (*pvkCreateWaylandSurfaceKHR)(VkInstance, const VkWaylandSurfaceCreateInfoKHR *, const VkAllocationCallbacks *, VkSurfaceKHR *); -static VkBool32 (*pvkGetPhysicalDeviceWaylandPresentationSupportKHR)(VkPhysicalDevice, uint32_t, struct wl_display *); - static const struct vulkan_driver_funcs wayland_vulkan_driver_funcs;
static VkResult wayland_vulkan_surface_create(HWND hwnd, const struct vulkan_instance *instance, VkSurfaceKHR *handle, @@ -71,9 +55,7 @@ static VkResult wayland_vulkan_surface_create(HWND hwnd, const struct vulkan_ins create_info_host.display = process_wayland.wl_display; create_info_host.surface = surface->wl_surface;
- res = pvkCreateWaylandSurfaceKHR(instance->host.instance, &create_info_host, - NULL /* allocator */, - handle); + res = instance->p_vkCreateWaylandSurfaceKHR(instance->host.instance, &create_info_host, NULL /* allocator */, handle); if (res != VK_SUCCESS) { ERR("Failed to create vulkan wayland surface, res=%d\n", res); @@ -91,10 +73,12 @@ static VkResult wayland_vulkan_surface_create(HWND hwnd, const struct vulkan_ins static VkBool32 wayland_get_physical_device_presentation_support(struct vulkan_physical_device *physical_device, uint32_t index) { + struct vulkan_instance *instance = physical_device->instance; + TRACE("%p %u\n", physical_device, index);
- return pvkGetPhysicalDeviceWaylandPresentationSupportKHR(physical_device->host.physical_device, index, - process_wayland.wl_display); + return instance->p_vkGetPhysicalDeviceWaylandPresentationSupportKHR(physical_device->host.physical_device, index, + process_wayland.wl_display); }
static const char *wayland_get_host_surface_extension(void) @@ -120,21 +104,6 @@ UINT WAYLAND_VulkanInit(UINT version, void *vulkan_handle, const struct vulkan_d return STATUS_INVALID_PARAMETER; }
-#define LOAD_FUNCPTR(f) if (!(p##f = dlsym(vulkan_handle, #f))) return STATUS_PROCEDURE_NOT_FOUND; - LOAD_FUNCPTR(vkCreateWaylandSurfaceKHR); - LOAD_FUNCPTR(vkGetPhysicalDeviceWaylandPresentationSupportKHR); -#undef LOAD_FUNCPTR - *driver_funcs = &wayland_vulkan_driver_funcs; return STATUS_SUCCESS; } - -#else /* No vulkan */ - -UINT WAYLAND_VulkanInit(UINT version, void *vulkan_handle, const struct vulkan_driver_funcs **driver_funcs) -{ - ERR( "Wine was built without Vulkan support.\n" ); - return STATUS_NOT_IMPLEMENTED; -} - -#endif /* SONAME_LIBVULKAN */ diff --git a/include/wine/vulkan.h b/include/wine/vulkan.h index c6a41ef73b9..77e968d07ee 100644 --- a/include/wine/vulkan.h +++ b/include/wine/vulkan.h @@ -76,6 +76,8 @@ #define VK_KHR_SURFACE_EXTENSION_NAME "VK_KHR_surface" #define VK_KHR_SWAPCHAIN_SPEC_VERSION 70 #define VK_KHR_SWAPCHAIN_EXTENSION_NAME "VK_KHR_swapchain" +#define VK_KHR_WAYLAND_SURFACE_SPEC_VERSION 6 +#define VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME "VK_KHR_wayland_surface" #define VK_KHR_WIN32_SURFACE_SPEC_VERSION 6 #define VK_KHR_WIN32_SURFACE_EXTENSION_NAME "VK_KHR_win32_surface" #define VK_EXT_DEBUG_REPORT_SPEC_VERSION 10 @@ -5295,6 +5297,7 @@ typedef enum VkStructureType VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_4_PROPERTIES = 56, VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR = 1000001000, VK_STRUCTURE_TYPE_PRESENT_INFO_KHR = 1000001001, + VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR = 1000006000, VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR = 1000009000, VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT = 1000011000, VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD = 1000018000, @@ -16067,6 +16070,15 @@ typedef struct VkViewportWScalingNV float ycoeff; } VkViewportWScalingNV;
+typedef struct VkWaylandSurfaceCreateInfoKHR +{ + VkStructureType sType; + const void *pNext; + VkWaylandSurfaceCreateFlagsKHR flags; + struct wl_display *display; + struct wl_surface *surface; +} VkWaylandSurfaceCreateInfoKHR; + typedef struct VkWin32SurfaceCreateInfoKHR { VkStructureType sType; @@ -18877,6 +18889,7 @@ typedef VkResult (VKAPI_PTR *PFN_vkCreateTensorViewARM)(VkDevice, const VkTensor typedef VkResult (VKAPI_PTR *PFN_vkCreateValidationCacheEXT)(VkDevice, const VkValidationCacheCreateInfoEXT *, const VkAllocationCallbacks *, VkValidationCacheEXT *); typedef VkResult (VKAPI_PTR *PFN_vkCreateVideoSessionKHR)(VkDevice, const VkVideoSessionCreateInfoKHR *, const VkAllocationCallbacks *, VkVideoSessionKHR *); typedef VkResult (VKAPI_PTR *PFN_vkCreateVideoSessionParametersKHR)(VkDevice, const VkVideoSessionParametersCreateInfoKHR *, const VkAllocationCallbacks *, VkVideoSessionParametersKHR *); +typedef VkResult (VKAPI_PTR *PFN_vkCreateWaylandSurfaceKHR)(VkInstance, const VkWaylandSurfaceCreateInfoKHR *, const VkAllocationCallbacks *, VkSurfaceKHR *); typedef VkResult (VKAPI_PTR *PFN_vkCreateWin32SurfaceKHR)(VkInstance, const VkWin32SurfaceCreateInfoKHR *, const VkAllocationCallbacks *, VkSurfaceKHR *); typedef VkResult (VKAPI_PTR *PFN_vkDebugMarkerSetObjectNameEXT)(VkDevice, const VkDebugMarkerObjectNameInfoEXT *); typedef VkResult (VKAPI_PTR *PFN_vkDebugMarkerSetObjectTagEXT)(VkDevice, const VkDebugMarkerObjectTagInfoEXT *); @@ -19081,6 +19094,7 @@ typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceToolPropertiesEXT)(VkPhysica typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceVideoCapabilitiesKHR)(VkPhysicalDevice, const VkVideoProfileInfoKHR *, VkVideoCapabilitiesKHR *); typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR)(VkPhysicalDevice, const VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR *, VkVideoEncodeQualityLevelPropertiesKHR *); typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceVideoFormatPropertiesKHR)(VkPhysicalDevice, const VkPhysicalDeviceVideoFormatInfoKHR *, uint32_t *, VkVideoFormatPropertiesKHR *); +typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR)(VkPhysicalDevice, uint32_t, struct wl_display *); typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR)(VkPhysicalDevice, uint32_t); typedef VkResult (VKAPI_PTR *PFN_vkGetPipelineBinaryDataKHR)(VkDevice, const VkPipelineBinaryDataInfoKHR *, VkPipelineBinaryKeyKHR *, size_t *, void *); typedef VkResult (VKAPI_PTR *PFN_vkGetPipelineCacheData)(VkDevice, VkPipelineCache, size_t *, void *); @@ -19543,6 +19557,7 @@ VkResult VKAPI_CALL vkCreateTensorViewARM(VkDevice device, const VkTensorViewCre VkResult VKAPI_CALL vkCreateValidationCacheEXT(VkDevice device, const VkValidationCacheCreateInfoEXT *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkValidationCacheEXT *pValidationCache); VkResult VKAPI_CALL vkCreateVideoSessionKHR(VkDevice device, const VkVideoSessionCreateInfoKHR *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkVideoSessionKHR *pVideoSession); VkResult VKAPI_CALL vkCreateVideoSessionParametersKHR(VkDevice device, const VkVideoSessionParametersCreateInfoKHR *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkVideoSessionParametersKHR *pVideoSessionParameters); +VkResult VKAPI_CALL vkCreateWaylandSurfaceKHR(VkInstance instance, const VkWaylandSurfaceCreateInfoKHR *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface); VkResult VKAPI_CALL vkCreateWin32SurfaceKHR(VkInstance instance, const VkWin32SurfaceCreateInfoKHR *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface); VkResult VKAPI_CALL vkDebugMarkerSetObjectNameEXT(VkDevice device, const VkDebugMarkerObjectNameInfoEXT *pNameInfo); VkResult VKAPI_CALL vkDebugMarkerSetObjectTagEXT(VkDevice device, const VkDebugMarkerObjectTagInfoEXT *pTagInfo); @@ -19747,6 +19762,7 @@ VkResult VKAPI_CALL vkGetPhysicalDeviceToolPropertiesEXT(VkPhysicalDevice physic VkResult VKAPI_CALL vkGetPhysicalDeviceVideoCapabilitiesKHR(VkPhysicalDevice physicalDevice, const VkVideoProfileInfoKHR *pVideoProfile, VkVideoCapabilitiesKHR *pCapabilities); VkResult VKAPI_CALL vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR *pQualityLevelInfo, VkVideoEncodeQualityLevelPropertiesKHR *pQualityLevelProperties); VkResult VKAPI_CALL vkGetPhysicalDeviceVideoFormatPropertiesKHR(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceVideoFormatInfoKHR *pVideoFormatInfo, uint32_t *pVideoFormatPropertyCount, VkVideoFormatPropertiesKHR *pVideoFormatProperties); +VkBool32 VKAPI_CALL vkGetPhysicalDeviceWaylandPresentationSupportKHR(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, struct wl_display *display); VkBool32 VKAPI_CALL vkGetPhysicalDeviceWin32PresentationSupportKHR(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex); VkResult VKAPI_CALL vkGetPipelineBinaryDataKHR(VkDevice device, const VkPipelineBinaryDataInfoKHR *pInfo, VkPipelineBinaryKeyKHR *pPipelineBinaryKey, size_t *pPipelineBinaryDataSize, void *pPipelineBinaryData); VkResult VKAPI_CALL vkGetPipelineCacheData(VkDevice device, VkPipelineCache pipelineCache, size_t *pDataSize, void *pData); @@ -20441,6 +20457,7 @@ VkResult VKAPI_CALL vkWriteMicromapsPropertiesEXT(VkDevice device, uint32_t micr USE_VK_FUNC(vkCreateDebugReportCallbackEXT) \ USE_VK_FUNC(vkCreateDebugUtilsMessengerEXT) \ USE_VK_FUNC(vkCreateHeadlessSurfaceEXT) \ + USE_VK_FUNC(vkCreateWaylandSurfaceKHR) \ USE_VK_FUNC(vkCreateWin32SurfaceKHR) \ USE_VK_FUNC(vkDebugReportMessageEXT) \ USE_VK_FUNC(vkDestroyDebugReportCallbackEXT) \ @@ -20502,6 +20519,7 @@ VkResult VKAPI_CALL vkWriteMicromapsPropertiesEXT(VkDevice device, uint32_t micr USE_VK_FUNC(vkGetPhysicalDeviceVideoCapabilitiesKHR) \ USE_VK_FUNC(vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR) \ USE_VK_FUNC(vkGetPhysicalDeviceVideoFormatPropertiesKHR) \ + USE_VK_FUNC(vkGetPhysicalDeviceWaylandPresentationSupportKHR) \ USE_VK_FUNC(vkGetPhysicalDeviceWin32PresentationSupportKHR)
#endif /* __WINE_VULKAN_H */
From: Rémi Bernon rbernon@codeweavers.com
--- dlls/winemac.drv/vulkan.c | 51 +++++-------------------------------- dlls/winevulkan/make_vulkan | 5 ++++ include/wine/vulkan.h | 28 ++++++++++++++++++++ 3 files changed, 39 insertions(+), 45 deletions(-)
diff --git a/dlls/winemac.drv/vulkan.c b/dlls/winemac.drv/vulkan.c index 77c85476dc7..9f9e47bbb49 100644 --- a/dlls/winemac.drv/vulkan.c +++ b/dlls/winemac.drv/vulkan.c @@ -41,33 +41,6 @@
WINE_DEFAULT_DEBUG_CHANNEL(vulkan);
-#ifdef SONAME_LIBVULKAN - -typedef VkFlags VkMacOSSurfaceCreateFlagsMVK; -#define VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK 1000123000 - -typedef VkFlags VkMetalSurfaceCreateFlagsEXT; -#define VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT 1000217000 - -typedef struct VkMacOSSurfaceCreateInfoMVK -{ - VkStructureType sType; - const void *pNext; - VkMacOSSurfaceCreateFlagsMVK flags; - const void *pView; /* NSView */ -} VkMacOSSurfaceCreateInfoMVK; - -typedef struct VkMetalSurfaceCreateInfoEXT -{ - VkStructureType sType; - const void *pNext; - VkMetalSurfaceCreateFlagsEXT flags; - const void *pLayer; /* CAMetalLayer */ -} VkMetalSurfaceCreateInfoEXT; - -static VkResult (*pvkCreateMacOSSurfaceMVK)(VkInstance, const VkMacOSSurfaceCreateInfoMVK*, const VkAllocationCallbacks *, VkSurfaceKHR *); -static VkResult (*pvkCreateMetalSurfaceEXT)(VkInstance, const VkMetalSurfaceCreateInfoEXT*, const VkAllocationCallbacks *, VkSurfaceKHR *); - static const struct vulkan_driver_funcs macdrv_vulkan_driver_funcs;
static VkResult macdrv_vulkan_surface_create(HWND hwnd, const struct vulkan_instance *instance, VkSurfaceKHR *handle, @@ -82,7 +55,7 @@ static VkResult macdrv_vulkan_surface_create(HWND hwnd, const struct vulkan_inst if (!(surface->metal_device = macdrv_create_metal_device())) goto err; if (!(surface->metal_view = macdrv_view_create_metal_view(surface->cocoa_view, surface->metal_device))) goto err;
- if (pvkCreateMetalSurfaceEXT) + if (instance->p_vkCreateMetalSurfaceEXT) { VkMetalSurfaceCreateInfoEXT create_info_host; create_info_host.sType = VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT; @@ -90,7 +63,7 @@ static VkResult macdrv_vulkan_surface_create(HWND hwnd, const struct vulkan_inst create_info_host.flags = 0; /* reserved */ create_info_host.pLayer = macdrv_view_get_metal_layer(surface->metal_view);
- res = pvkCreateMetalSurfaceEXT(instance->host.instance, &create_info_host, NULL /* allocator */, handle); + res = instance->p_vkCreateMetalSurfaceEXT(instance->host.instance, &create_info_host, NULL /* allocator */, handle); } else { @@ -100,7 +73,7 @@ static VkResult macdrv_vulkan_surface_create(HWND hwnd, const struct vulkan_inst create_info_host.flags = 0; /* reserved */ create_info_host.pView = macdrv_view_get_metal_layer(surface->metal_view);
- res = pvkCreateMacOSSurfaceMVK(instance->host.instance, &create_info_host, NULL /* allocator */, handle); + res = instance->p_vkCreateMacOSSurfaceMVK(instance->host.instance, &create_info_host, NULL /* allocator */, handle); } if (res != VK_SUCCESS) { @@ -125,9 +98,10 @@ static VkBool32 macdrv_get_physical_device_presentation_support(struct vulkan_ph return VK_TRUE; }
+static const char *host_surface_extension = "VK_MVK_macos_surface"; static const char *macdrv_get_host_surface_extension(void) { - return pvkCreateMetalSurfaceEXT ? "VK_EXT_metal_surface" : "VK_MVK_macos_surface"; + return host_surface_extension; }
static const struct vulkan_driver_funcs macdrv_vulkan_driver_funcs = @@ -145,21 +119,8 @@ UINT macdrv_VulkanInit(UINT version, void *vulkan_handle, const struct vulkan_dr return STATUS_INVALID_PARAMETER; }
-#define LOAD_FUNCPTR(f) if ((p##f = dlsym(vulkan_handle, #f)) == NULL) return STATUS_PROCEDURE_NOT_FOUND; - LOAD_FUNCPTR(vkCreateMacOSSurfaceMVK) - LOAD_FUNCPTR(vkCreateMetalSurfaceEXT) -#undef LOAD_FUNCPTR + if (dlsym(vulkan_handle, "vkCreateMetalSurfaceEXT")) host_surface_extension = "VK_EXT_metal_surface";
*driver_funcs = &macdrv_vulkan_driver_funcs; return STATUS_SUCCESS; } - -#else /* No vulkan */ - -UINT macdrv_VulkanInit(UINT version, void *vulkan_handle, const struct vulkan_driver_funcs **driver_funcs) -{ - ERR("Wine was built without Vulkan support.\n"); - return STATUS_NOT_IMPLEMENTED; -} - -#endif /* SONAME_LIBVULKAN */ diff --git a/dlls/winevulkan/make_vulkan b/dlls/winevulkan/make_vulkan index 24320fe5b9b..7dc64ce72d8 100755 --- a/dlls/winevulkan/make_vulkan +++ b/dlls/winevulkan/make_vulkan @@ -116,6 +116,7 @@ UNSUPPORTED_EXTENSIONS = [ "VK_GOOGLE_surfaceless_query", "VK_KHR_external_fence_fd", "VK_KHR_external_memory_fd", + "VK_EXT_external_memory_metal", "VK_KHR_external_semaphore_fd", "VK_SEC_amigo_profiling", # Angle specific.
@@ -135,10 +136,14 @@ UNEXPOSED_EXTENSIONS = { "VK_KHR_external_memory_win32", "VK_EXT_headless_surface", # Extensions for other platforms + "VK_EXT_metal_surface", "VK_KHR_wayland_surface", + "VK_MVK_macos_surface", }
UNEXPOSED_PLATFORMS = { + "macos", + "metal", "wayland", }
diff --git a/include/wine/vulkan.h b/include/wine/vulkan.h index 77e968d07ee..c0b2d2fa4c2 100644 --- a/include/wine/vulkan.h +++ b/include/wine/vulkan.h @@ -229,6 +229,8 @@ #define VK_KHR_GET_SURFACE_CAPABILITIES_2_EXTENSION_NAME "VK_KHR_get_surface_capabilities2" #define VK_KHR_VARIABLE_POINTERS_SPEC_VERSION 1 #define VK_KHR_VARIABLE_POINTERS_EXTENSION_NAME "VK_KHR_variable_pointers" +#define VK_MVK_MACOS_SURFACE_SPEC_VERSION 3 +#define VK_MVK_MACOS_SURFACE_EXTENSION_NAME "VK_MVK_macos_surface" #define VK_EXT_QUEUE_FAMILY_FOREIGN_SPEC_VERSION 1 #define VK_EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME "VK_EXT_queue_family_foreign" #define VK_KHR_DEDICATED_ALLOCATION_SPEC_VERSION 3 @@ -363,6 +365,8 @@ #define VK_EXT_PCI_BUS_INFO_EXTENSION_NAME "VK_EXT_pci_bus_info" #define VK_KHR_SHADER_TERMINATE_INVOCATION_SPEC_VERSION 1 #define VK_KHR_SHADER_TERMINATE_INVOCATION_EXTENSION_NAME "VK_KHR_shader_terminate_invocation" +#define VK_EXT_METAL_SURFACE_SPEC_VERSION 1 +#define VK_EXT_METAL_SURFACE_EXTENSION_NAME "VK_EXT_metal_surface" #define VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION 2 #define VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME "VK_EXT_fragment_density_map" #define VK_EXT_SCALAR_BLOCK_LAYOUT_SPEC_VERSION 1 @@ -5465,6 +5469,7 @@ typedef enum VkStructureType VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR = 1000119001, VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR = 1000119002, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES = 1000120000, + VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK = 1000123000, VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS = 1000127000, VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO = 1000127001, VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT = 1000128000, @@ -5600,6 +5605,7 @@ typedef enum VkStructureType VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES = 1000211000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT = 1000212000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES = 1000215000, + VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT = 1000217000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT = 1000218000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT = 1000218001, VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT = 1000218002, @@ -9829,6 +9835,14 @@ typedef struct VkLayerSettingsCreateInfoEXT const VkLayerSettingEXT *pSettings; } VkLayerSettingsCreateInfoEXT;
+typedef struct VkMacOSSurfaceCreateInfoMVK +{ + VkStructureType sType; + const void *pNext; + VkMacOSSurfaceCreateFlagsMVK flags; + const void *pView; +} VkMacOSSurfaceCreateInfoMVK; + typedef struct VkMappedMemoryRange { VkStructureType sType; @@ -9999,6 +10013,14 @@ typedef struct VkMemoryWin32HandlePropertiesKHR uint32_t memoryTypeBits; } VkMemoryWin32HandlePropertiesKHR;
+typedef struct VkMetalSurfaceCreateInfoEXT +{ + VkStructureType sType; + const void *pNext; + VkMetalSurfaceCreateFlagsEXT flags; + const CAMetalLayer *pLayer; +} VkMetalSurfaceCreateInfoEXT; + typedef struct VkMicromapBuildSizesInfoEXT { VkStructureType sType; @@ -18864,6 +18886,8 @@ typedef VkResult (VKAPI_PTR *PFN_vkCreateIndirectCommandsLayoutEXT)(VkDevice, co typedef VkResult (VKAPI_PTR *PFN_vkCreateIndirectCommandsLayoutNV)(VkDevice, const VkIndirectCommandsLayoutCreateInfoNV *, const VkAllocationCallbacks *, VkIndirectCommandsLayoutNV *); typedef VkResult (VKAPI_PTR *PFN_vkCreateIndirectExecutionSetEXT)(VkDevice, const VkIndirectExecutionSetCreateInfoEXT *, const VkAllocationCallbacks *, VkIndirectExecutionSetEXT *); typedef VkResult (VKAPI_PTR *PFN_vkCreateInstance)(const VkInstanceCreateInfo *, const VkAllocationCallbacks *, VkInstance *); +typedef VkResult (VKAPI_PTR *PFN_vkCreateMacOSSurfaceMVK)(VkInstance, const VkMacOSSurfaceCreateInfoMVK *, const VkAllocationCallbacks *, VkSurfaceKHR *); +typedef VkResult (VKAPI_PTR *PFN_vkCreateMetalSurfaceEXT)(VkInstance, const VkMetalSurfaceCreateInfoEXT *, const VkAllocationCallbacks *, VkSurfaceKHR *); typedef VkResult (VKAPI_PTR *PFN_vkCreateMicromapEXT)(VkDevice, const VkMicromapCreateInfoEXT *, const VkAllocationCallbacks *, VkMicromapEXT *); typedef VkResult (VKAPI_PTR *PFN_vkCreateOpticalFlowSessionNV)(VkDevice, const VkOpticalFlowSessionCreateInfoNV *, const VkAllocationCallbacks *, VkOpticalFlowSessionNV *); typedef VkResult (VKAPI_PTR *PFN_vkCreatePipelineBinariesKHR)(VkDevice, const VkPipelineBinaryCreateInfoKHR *, const VkAllocationCallbacks *, VkPipelineBinaryHandlesInfoKHR *); @@ -19532,6 +19556,8 @@ VkResult VKAPI_CALL vkCreateIndirectCommandsLayoutEXT(VkDevice device, const VkI VkResult VKAPI_CALL vkCreateIndirectCommandsLayoutNV(VkDevice device, const VkIndirectCommandsLayoutCreateInfoNV *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkIndirectCommandsLayoutNV *pIndirectCommandsLayout); VkResult VKAPI_CALL vkCreateIndirectExecutionSetEXT(VkDevice device, const VkIndirectExecutionSetCreateInfoEXT *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkIndirectExecutionSetEXT *pIndirectExecutionSet); VkResult VKAPI_CALL vkCreateInstance(const VkInstanceCreateInfo *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkInstance *pInstance); +VkResult VKAPI_CALL vkCreateMacOSSurfaceMVK(VkInstance instance, const VkMacOSSurfaceCreateInfoMVK *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface); +VkResult VKAPI_CALL vkCreateMetalSurfaceEXT(VkInstance instance, const VkMetalSurfaceCreateInfoEXT *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface); VkResult VKAPI_CALL vkCreateMicromapEXT(VkDevice device, const VkMicromapCreateInfoEXT *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkMicromapEXT *pMicromap); VkResult VKAPI_CALL vkCreateOpticalFlowSessionNV(VkDevice device, const VkOpticalFlowSessionCreateInfoNV *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkOpticalFlowSessionNV *pSession); VkResult VKAPI_CALL vkCreatePipelineBinariesKHR(VkDevice device, const VkPipelineBinaryCreateInfoKHR *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkPipelineBinaryHandlesInfoKHR *pBinaries); @@ -20457,6 +20483,8 @@ VkResult VKAPI_CALL vkWriteMicromapsPropertiesEXT(VkDevice device, uint32_t micr USE_VK_FUNC(vkCreateDebugReportCallbackEXT) \ USE_VK_FUNC(vkCreateDebugUtilsMessengerEXT) \ USE_VK_FUNC(vkCreateHeadlessSurfaceEXT) \ + USE_VK_FUNC(vkCreateMacOSSurfaceMVK) \ + USE_VK_FUNC(vkCreateMetalSurfaceEXT) \ USE_VK_FUNC(vkCreateWaylandSurfaceKHR) \ USE_VK_FUNC(vkCreateWin32SurfaceKHR) \ USE_VK_FUNC(vkDebugReportMessageEXT) \
From: Rémi Bernon rbernon@codeweavers.com
--- dlls/winevulkan/make_vulkan | 86 ++++++------------------------------- include/wine/vulkan.h | 48 ++++----------------- 2 files changed, 20 insertions(+), 114 deletions(-)
diff --git a/dlls/winevulkan/make_vulkan b/dlls/winevulkan/make_vulkan index 7dc64ce72d8..83130b30ad9 100755 --- a/dlls/winevulkan/make_vulkan +++ b/dlls/winevulkan/make_vulkan @@ -1002,82 +1002,29 @@ class VkFunction(object):
class VkFunctionPointer(object): - def __init__(self, _type, name, members, forward_decls): - self.name = name - self.members = members - self.type = _type + def __init__(self, value): + self.value = value self.required = False - self.forward_decls = forward_decls
@staticmethod def from_xml(funcpointer): if not api_is_vulkan(funcpointer): return None
- members = [] - begin = None - - for t in funcpointer.findall("type"): - # General form: - # <type>void</type>* pUserData, - # Parsing of the tail (anything past </type>) is tricky since there - # can be other data on the next line like: const <type>int</type>.. - - const = True if begin and "const" in begin else False - _type = t.text - lines = t.tail.split(",\n") - if lines[0][0] == "*": - pointer = "*" - name = lines[0][1:].strip() - else: - pointer = None - name = lines[0].strip() - - # Filter out ); if it is contained. - name = name.partition(");")[0] - - # If tail encompasses multiple lines, assign the second line to begin - # for the next line. - try: - begin = lines[1].strip() - except IndexError: - begin = None - - members.append(VkMember(const=const, _type=_type, pointer=pointer, name=name)) + value = innertext(funcpointer).replace('\n', '') + value = re.sub(r'\s*//.*$', '', value, flags=re.M) + value = re.sub(r'\s+', ' ', value, flags=re.M) + value = value.strip()
- _type = funcpointer.text - name = funcpointer.find("name").text - if "requires" in funcpointer.attrib: - forward_decls = funcpointer.attrib.get("requires").split(",") - else: - forward_decls = [] - return VkFunctionPointer(_type, name, members, forward_decls) + return VkFunctionPointer(value)
def definition(self): - text = "" - # forward declare required structs - for decl in self.forward_decls: - text += "typedef struct {0} {0};\n".format(decl) - - text += "{0} {1})(\n".format(self.type, self.name) - - first = True - if len(self.members) > 0: - for m in self.members: - if first: - text += " " + m.definition() - first = False - else: - text += ",\n " + m.definition() - else: - # Just make the compiler happy by adding a void parameter. - text += "void" - text += ");\n" - return text + return self.value + '\n'
def is_alias(self): return False
+ class VkHandle(object): def __init__(self, name, _type, parent, alias=None): self.name = name @@ -3064,6 +3011,8 @@ class VkGenerator(object): if enum.required: f.write(enum.definition())
+ f.write("typedef struct VkDebugUtilsMessengerCallbackDataEXT VkDebugUtilsMessengerCallbackDataEXT;\n") + for fp in self.registry.funcpointers: if fp.required: f.write(fp.definition()) @@ -3247,15 +3196,6 @@ class VkRegistry(object): if bitmask.requires is not None: types[bitmask.requires]["data"].required = True
- def mark_funcpointer_dependencies(fp, types): - for m in fp.members: - type_info = types[m.type] - - # Complex types have a matching definition e.g. VkStruct. - # Not needed for base types such as uint32_t. - if "data" in type_info: - types[m.type]["data"].required = True - def mark_struct_dependencies(struct, types): for m in struct: type_info = types[m.type] @@ -3268,8 +3208,6 @@ class VkRegistry(object): if type_info["category"] == "struct" and struct.name != m.type: # Yay, recurse mark_struct_dependencies(type_info["data"], types) - elif type_info["category"] == "funcpointer": - mark_funcpointer_dependencies(type_info["data"], types) elif type_info["category"] == "bitmask": mark_bitmask_dependencies(type_info["data"], types)
@@ -3802,7 +3740,7 @@ class VkRegistry(object): self.bitmasks = sorted(bitmasks, key=lambda bitmask: bitmask.name) self.defines = defines self.enums = OrderedDict(sorted(self.enums.items())) - self.funcpointers = sorted(funcpointers, key=lambda fp: fp.name) + self.funcpointers = sorted(funcpointers, key=lambda fp: fp.value) self.handles = sorted(handles, key=lambda handle: handle.name) self.structs = sorted(structs, key=lambda struct: struct.name)
diff --git a/include/wine/vulkan.h b/include/wine/vulkan.h index c0b2d2fa4c2..a6d831786c9 100644 --- a/include/wine/vulkan.h +++ b/include/wine/vulkan.h @@ -6929,47 +6929,15 @@ typedef enum VkViewportCoordinateSwizzleNV VK_VIEWPORT_COORDINATE_SWIZZLE_NV_MAX_ENUM = 0x7fffffff, } VkViewportCoordinateSwizzleNV;
-typedef void* (VKAPI_PTR * PFN_vkAllocationFunction)( - void *pUserData, - size_t size, - size_t alignment, - VkSystemAllocationScope allocationScope); -typedef VkBool32 (VKAPI_PTR * PFN_vkDebugReportCallbackEXT)( - VkDebugReportFlagsEXT flags, - VkDebugReportObjectTypeEXT objectType, - uint64_t object, - size_t location, - int32_t messageCode, - const char *pLayerPrefix, - const char *pMessage, - void *pUserData); typedef struct VkDebugUtilsMessengerCallbackDataEXT VkDebugUtilsMessengerCallbackDataEXT; -typedef VkBool32 (VKAPI_PTR * PFN_vkDebugUtilsMessengerCallbackEXT)( - VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity, - VkDebugUtilsMessageTypeFlagsEXT messageTypes, - const VkDebugUtilsMessengerCallbackDataEXT *pCallbackData, - void *pUserData); -typedef void (VKAPI_PTR * PFN_vkFreeFunction)( - void *pUserData, - void *pMemory); -typedef void (VKAPI_PTR * PFN_vkInternalAllocationNotification)( - void *pUserData, - size_t size, - VkInternalAllocationType allocationType, - VkSystemAllocationScope allocationScope); -typedef void (VKAPI_PTR * PFN_vkInternalFreeNotification)( - void *pUserData, - size_t size, - VkInternalAllocationType allocationType, - VkSystemAllocationScope allocationScope); -typedef void* (VKAPI_PTR * PFN_vkReallocationFunction)( - void *pUserData, - void *pOriginal, - size_t size, - size_t alignment, - VkSystemAllocationScope allocationScope); -typedef void (VKAPI_PTR * PFN_vkVoidFunction)( -void); +typedef VkBool32 (VKAPI_PTR *PFN_vkDebugReportCallbackEXT)( VkDebugReportFlagsEXT flags, VkDebugReportObjectTypeEXT objectType, uint64_t object, size_t location, int32_t messageCode, const char* pLayerPrefix, const char* pMessage, void* pUserData); +typedef VkBool32 (VKAPI_PTR *PFN_vkDebugUtilsMessengerCallbackEXT)( VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity, VkDebugUtilsMessageTypeFlagsEXT messageTypes, const VkDebugUtilsMessengerCallbackDataEXT* pCallbackData, void* pUserData); +typedef void (VKAPI_PTR *PFN_vkFreeFunction)( void* pUserData, void* pMemory); +typedef void (VKAPI_PTR *PFN_vkInternalAllocationNotification)( void* pUserData, size_t size, VkInternalAllocationType allocationType, VkSystemAllocationScope allocationScope); +typedef void (VKAPI_PTR *PFN_vkInternalFreeNotification)( void* pUserData, size_t size, VkInternalAllocationType allocationType, VkSystemAllocationScope allocationScope); +typedef void (VKAPI_PTR *PFN_vkVoidFunction)(void); +typedef void* (VKAPI_PTR *PFN_vkAllocationFunction)( void* pUserData, size_t size, size_t alignment, VkSystemAllocationScope allocationScope); +typedef void* (VKAPI_PTR *PFN_vkReallocationFunction)( void* pUserData, void* pOriginal, size_t size, size_t alignment, VkSystemAllocationScope allocationScope);
typedef struct StdVideoAV1CDEF {
From: Rémi Bernon rbernon@codeweavers.com
--- dlls/winevulkan/make_vulkan | 82 +- include/wine/vulkan.h | 15902 +++++++++++++++++----------------- 2 files changed, 7975 insertions(+), 8009 deletions(-)
diff --git a/dlls/winevulkan/make_vulkan b/dlls/winevulkan/make_vulkan index 83130b30ad9..7c31e22d169 100755 --- a/dlls/winevulkan/make_vulkan +++ b/dlls/winevulkan/make_vulkan @@ -1924,6 +1924,7 @@ class VkStruct(Sequence): self.type_info = None # To be set later. self.struct_extensions = [] self.aliased_by = [] + self.order = 0
def __getitem__(self, i): return self.members[i] @@ -1974,58 +1975,19 @@ class VkStruct(Sequence):
return s
- @staticmethod - def decouple_structs(structs): - """ Helper function which decouples a list of structs. - Structures often depend on other structures. To make the C compiler - happy we need to define 'substructures' first. This function analyzes - the list of structures and reorders them in such a way that they are - decoupled. - """ - - tmp_structs = list(structs) # Don't modify the original structures. - decoupled_structs = [] - - while (len(tmp_structs) > 0): - # Iterate over a copy because we want to modify the list inside the loop. - for struct in list(tmp_structs): - dependends = False - - if not struct.required: - tmp_structs.remove(struct) - continue - - for m in struct: - if not (m.is_struct() or m.is_union()): - continue + def set_order(self, order, structs): + if order < self.order: + return
- # VkBaseInstructure and VkBaseOutStructure reference themselves. - if m.type == struct.name: - break - - found = False - # Check if a struct we depend on has already been defined. - for s in decoupled_structs: - if s.name == m.type: - found = True - break - - if not found: - # Check if the struct we depend on is even in the list of structs. - # If found now, it means we haven't met all dependencies before we - # can operate on the current struct. - # When generating 'host' structs we may not be able to find a struct - # as the list would only contain the structs requiring conversion. - for s in tmp_structs: - if s.name == m.type: - dependends = True - break - - if dependends == False: - decoupled_structs.append(struct) - tmp_structs.remove(struct) - - return decoupled_structs + self.order = order + 1 + for member in self.members: + if member.type == self.name: + continue + if not member.is_union() and not member.is_struct(): + continue + if structs[member.type].is_alias(): + structs[member.type].alias.set_order(self.order, structs) + structs[member.type].set_order(self.order, structs)
def definition(self, align=False, conv=False): """ Convert structure to textual definition. @@ -3023,11 +2985,11 @@ class VkGenerator(object): # decoupled structs. # Note: unions are stored in structs for dependency reasons, # see comment in parsing section. - structs = VkStruct.decouple_structs(self.registry.structs) - for struct in structs: - LOGGER.debug("Generating struct: {0}".format(struct.name)) - f.write(struct.definition(align=True)) - f.write("\n") + for struct in self.registry.structs: + if struct.required: + LOGGER.debug("Generating struct: {0}".format(struct.name)) + f.write(struct.definition(align=True)) + f.write("\n")
for func in self.registry.funcs.values(): if not func.is_required(): @@ -3720,7 +3682,8 @@ class VkRegistry(object): # are parsed among other types, so there is no guarantee # that any types needed have been parsed already, so set # the data now. - for struct in structs: + structs = {struct.name: struct for struct in structs} + for struct in structs.values(): struct.set_type_info(self.types)
# Alias structures have enum values equivalent to those of the @@ -3734,6 +3697,9 @@ class VkRegistry(object): s = self.types[structextend]["data"] s.struct_extensions.append(struct)
+ for struct in structs.values(): + struct.set_order(0, structs) + # Guarantee everything is sorted, so code generation doesn't have # to deal with this. self.base_types = sorted(base_types, key=lambda base_type: base_type.name) @@ -3742,7 +3708,7 @@ class VkRegistry(object): self.enums = OrderedDict(sorted(self.enums.items())) self.funcpointers = sorted(funcpointers, key=lambda fp: fp.value) self.handles = sorted(handles, key=lambda handle: handle.name) - self.structs = sorted(structs, key=lambda struct: struct.name) + self.structs = sorted(structs.values(), key=lambda struct: (-struct.order, struct.name))
def generate_vulkan_json(f): f.write("{\n") diff --git a/include/wine/vulkan.h b/include/wine/vulkan.h index a6d831786c9..156dd352ffb 100644 --- a/include/wine/vulkan.h +++ b/include/wine/vulkan.h @@ -6939,15 +6939,175 @@ typedef void (VKAPI_PTR *PFN_vkVoidFunction)(void); typedef void* (VKAPI_PTR *PFN_vkAllocationFunction)( void* pUserData, size_t size, size_t alignment, VkSystemAllocationScope allocationScope); typedef void* (VKAPI_PTR *PFN_vkReallocationFunction)( void* pUserData, void* pOriginal, size_t size, size_t alignment, VkSystemAllocationScope allocationScope);
-typedef struct StdVideoAV1CDEF +typedef struct StdVideoH265HrdFlags { - uint8_t cdef_damping_minus_3; - uint8_t cdef_bits; - uint8_t cdef_y_pri_strength[STD_VIDEO_AV1_MAX_CDEF_FILTER_STRENGTHS]; - uint8_t cdef_y_sec_strength[STD_VIDEO_AV1_MAX_CDEF_FILTER_STRENGTHS]; - uint8_t cdef_uv_pri_strength[STD_VIDEO_AV1_MAX_CDEF_FILTER_STRENGTHS]; - uint8_t cdef_uv_sec_strength[STD_VIDEO_AV1_MAX_CDEF_FILTER_STRENGTHS]; -} StdVideoAV1CDEF; + uint32_t nal_hrd_parameters_present_flag:1; + uint32_t vcl_hrd_parameters_present_flag:1; + uint32_t sub_pic_hrd_params_present_flag:1; + uint32_t sub_pic_cpb_params_in_pic_timing_sei_flag:1; + uint32_t fixed_pic_rate_general_flag:8; + uint32_t fixed_pic_rate_within_cvs_flag:8; + uint32_t low_delay_hrd_flag:8; +} StdVideoH265HrdFlags; + +typedef struct StdVideoH265SubLayerHrdParameters +{ + uint32_t bit_rate_value_minus1[STD_VIDEO_H265_CPB_CNT_LIST_SIZE]; + uint32_t cpb_size_value_minus1[STD_VIDEO_H265_CPB_CNT_LIST_SIZE]; + uint32_t cpb_size_du_value_minus1[STD_VIDEO_H265_CPB_CNT_LIST_SIZE]; + uint32_t bit_rate_du_value_minus1[STD_VIDEO_H265_CPB_CNT_LIST_SIZE]; + uint32_t cbr_flag; +} StdVideoH265SubLayerHrdParameters; + +typedef struct StdVideoEncodeH264WeightTableFlags +{ + uint32_t luma_weight_l0_flag; + uint32_t chroma_weight_l0_flag; + uint32_t luma_weight_l1_flag; + uint32_t chroma_weight_l1_flag; +} StdVideoEncodeH264WeightTableFlags; + +typedef struct StdVideoEncodeH265WeightTableFlags +{ + uint16_t luma_weight_l0_flag; + uint16_t chroma_weight_l0_flag; + uint16_t luma_weight_l1_flag; + uint16_t chroma_weight_l1_flag; +} StdVideoEncodeH265WeightTableFlags; + +typedef struct StdVideoH264HrdParameters +{ + uint8_t cpb_cnt_minus1; + uint8_t bit_rate_scale; + uint8_t cpb_size_scale; + uint8_t reserved1; + uint32_t bit_rate_value_minus1[STD_VIDEO_H264_CPB_CNT_LIST_SIZE]; + uint32_t cpb_size_value_minus1[STD_VIDEO_H264_CPB_CNT_LIST_SIZE]; + uint8_t cbr_flag[STD_VIDEO_H264_CPB_CNT_LIST_SIZE]; + uint32_t initial_cpb_removal_delay_length_minus1; + uint32_t cpb_removal_delay_length_minus1; + uint32_t dpb_output_delay_length_minus1; + uint32_t time_offset_length; +} StdVideoH264HrdParameters; + +typedef struct StdVideoH264SpsVuiFlags +{ + uint32_t aspect_ratio_info_present_flag:1; + uint32_t overscan_info_present_flag:1; + uint32_t overscan_appropriate_flag:1; + uint32_t video_signal_type_present_flag:1; + uint32_t video_full_range_flag:1; + uint32_t color_description_present_flag:1; + uint32_t chroma_loc_info_present_flag:1; + uint32_t timing_info_present_flag:1; + uint32_t fixed_frame_rate_flag:1; + uint32_t bitstream_restriction_flag:1; + uint32_t nal_hrd_parameters_present_flag:1; + uint32_t vcl_hrd_parameters_present_flag:1; +} StdVideoH264SpsVuiFlags; + +typedef struct StdVideoH265HrdParameters +{ + StdVideoH265HrdFlags flags; + uint8_t tick_divisor_minus2; + uint8_t du_cpb_removal_delay_increment_length_minus1; + uint8_t dpb_output_delay_du_length_minus1; + uint8_t bit_rate_scale; + uint8_t cpb_size_scale; + uint8_t cpb_size_du_scale; + uint8_t initial_cpb_removal_delay_length_minus1; + uint8_t au_cpb_removal_delay_length_minus1; + uint8_t dpb_output_delay_length_minus1; + uint8_t cpb_cnt_minus1[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE]; + uint16_t elemental_duration_in_tc_minus1[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE]; + uint16_t reserved[3]; + const StdVideoH265SubLayerHrdParameters *pSubLayerHrdParametersNal; + const StdVideoH265SubLayerHrdParameters *pSubLayerHrdParametersVcl; +} StdVideoH265HrdParameters; + +typedef struct StdVideoH265ProfileTierLevelFlags +{ + uint32_t general_tier_flag:1; + uint32_t general_progressive_source_flag:1; + uint32_t general_interlaced_source_flag:1; + uint32_t general_non_packed_constraint_flag:1; + uint32_t general_frame_only_constraint_flag:1; +} StdVideoH265ProfileTierLevelFlags; + +typedef struct StdVideoH265ShortTermRefPicSetFlags +{ + uint32_t inter_ref_pic_set_prediction_flag:1; + uint32_t delta_rps_sign:1; +} StdVideoH265ShortTermRefPicSetFlags; + +typedef struct StdVideoH265SpsVuiFlags +{ + uint32_t aspect_ratio_info_present_flag:1; + uint32_t overscan_info_present_flag:1; + uint32_t overscan_appropriate_flag:1; + uint32_t video_signal_type_present_flag:1; + uint32_t video_full_range_flag:1; + uint32_t colour_description_present_flag:1; + uint32_t chroma_loc_info_present_flag:1; + uint32_t neutral_chroma_indication_flag:1; + uint32_t field_seq_flag:1; + uint32_t frame_field_info_present_flag:1; + uint32_t default_display_window_flag:1; + uint32_t vui_timing_info_present_flag:1; + uint32_t vui_poc_proportional_to_timing_flag:1; + uint32_t vui_hrd_parameters_present_flag:1; + uint32_t bitstream_restriction_flag:1; + uint32_t tiles_fixed_structure_flag:1; + uint32_t motion_vectors_over_pic_boundaries_flag:1; + uint32_t restricted_ref_pic_lists_flag:1; +} StdVideoH265SpsVuiFlags; + +typedef union VkDeviceOrHostAddressConstKHR +{ + VkDeviceAddress WINE_VK_ALIGN(8) deviceAddress; + const void *hostAddress; +} VkDeviceOrHostAddressConstKHR; + +typedef struct VkGeometryAABBNV +{ + VkStructureType sType; + const void *pNext; + VkBuffer WINE_VK_ALIGN(8) aabbData; + uint32_t numAABBs; + uint32_t stride; + VkDeviceSize WINE_VK_ALIGN(8) offset; +} VkGeometryAABBNV; + +typedef struct VkGeometryTrianglesNV +{ + VkStructureType sType; + const void *pNext; + VkBuffer WINE_VK_ALIGN(8) vertexData; + VkDeviceSize WINE_VK_ALIGN(8) vertexOffset; + uint32_t vertexCount; + VkDeviceSize WINE_VK_ALIGN(8) vertexStride; + VkFormat vertexFormat; + VkBuffer WINE_VK_ALIGN(8) indexData; + VkDeviceSize WINE_VK_ALIGN(8) indexOffset; + uint32_t indexCount; + VkIndexType indexType; + VkBuffer WINE_VK_ALIGN(8) transformData; + VkDeviceSize WINE_VK_ALIGN(8) transformOffset; +} VkGeometryTrianglesNV; + +typedef struct VkPushConstantRange +{ + VkShaderStageFlags stageFlags; + uint32_t offset; + uint32_t size; +} VkPushConstantRange; + +typedef struct VkSpecializationMapEntry +{ + uint32_t constantID; + uint32_t offset; + size_t size; +} VkSpecializationMapEntry;
typedef struct StdVideoAV1ColorConfigFlags { @@ -6967,12 +7127,6 @@ typedef struct StdVideoAV1FilmGrainFlags uint32_t reserved:28; } StdVideoAV1FilmGrainFlags;
-typedef struct StdVideoAV1GlobalMotion -{ - uint8_t GmType[STD_VIDEO_AV1_NUM_REF_FRAMES]; - int32_t gm_params[STD_VIDEO_AV1_NUM_REF_FRAMES][STD_VIDEO_AV1_GLOBAL_MOTION_PARAMS]; -} StdVideoAV1GlobalMotion; - typedef struct StdVideoAV1LoopFilterFlags { uint32_t loop_filter_delta_enabled:1; @@ -6980,12 +7134,6 @@ typedef struct StdVideoAV1LoopFilterFlags uint32_t reserved:30; } StdVideoAV1LoopFilterFlags;
-typedef struct StdVideoAV1LoopRestoration -{ - StdVideoAV1FrameRestorationType FrameRestorationType[STD_VIDEO_AV1_MAX_NUM_PLANES]; - uint16_t LoopRestorationSize[STD_VIDEO_AV1_MAX_NUM_PLANES]; -} StdVideoAV1LoopRestoration; - typedef struct StdVideoAV1QuantizationFlags { uint32_t using_qmatrix:1; @@ -6993,36 +7141,6 @@ typedef struct StdVideoAV1QuantizationFlags uint32_t reserved:30; } StdVideoAV1QuantizationFlags;
-typedef struct StdVideoAV1Segmentation -{ - uint8_t FeatureEnabled[STD_VIDEO_AV1_MAX_SEGMENTS]; - int16_t FeatureData[STD_VIDEO_AV1_MAX_SEGMENTS][STD_VIDEO_AV1_SEG_LVL_MAX]; -} StdVideoAV1Segmentation; - -typedef struct StdVideoAV1SequenceHeaderFlags -{ - uint32_t still_picture:1; - uint32_t reduced_still_picture_header:1; - uint32_t use_128x128_superblock:1; - uint32_t enable_filter_intra:1; - uint32_t enable_intra_edge_filter:1; - uint32_t enable_interintra_compound:1; - uint32_t enable_masked_compound:1; - uint32_t enable_warped_motion:1; - uint32_t enable_dual_filter:1; - uint32_t enable_order_hint:1; - uint32_t enable_jnt_comp:1; - uint32_t enable_ref_frame_mvs:1; - uint32_t frame_id_numbers_present_flag:1; - uint32_t enable_superres:1; - uint32_t enable_cdef:1; - uint32_t enable_restoration:1; - uint32_t film_grain_params_present:1; - uint32_t timing_info_present_flag:1; - uint32_t initial_display_delay_present_flag:1; - uint32_t reserved:13; -} StdVideoAV1SequenceHeaderFlags; - typedef struct StdVideoAV1TileInfoFlags { uint32_t uniform_tile_spacing_flag:1; @@ -7035,172 +7153,12 @@ typedef struct StdVideoAV1TimingInfoFlags uint32_t reserved:31; } StdVideoAV1TimingInfoFlags;
-typedef struct StdVideoDecodeAV1PictureInfoFlags +typedef struct StdVideoEncodeH264RefListModEntry { - uint32_t error_resilient_mode:1; - uint32_t disable_cdf_update:1; - uint32_t use_superres:1; - uint32_t render_and_frame_size_different:1; - uint32_t allow_screen_content_tools:1; - uint32_t is_filter_switchable:1; - uint32_t force_integer_mv:1; - uint32_t frame_size_override_flag:1; - uint32_t buffer_removal_time_present_flag:1; - uint32_t allow_intrabc:1; - uint32_t frame_refs_short_signaling:1; - uint32_t allow_high_precision_mv:1; - uint32_t is_motion_mode_switchable:1; - uint32_t use_ref_frame_mvs:1; - uint32_t disable_frame_end_update_cdf:1; - uint32_t allow_warped_motion:1; - uint32_t reduced_tx_set:1; - uint32_t reference_select:1; - uint32_t skip_mode_present:1; - uint32_t delta_q_present:1; - uint32_t delta_lf_present:1; - uint32_t delta_lf_multi:1; - uint32_t segmentation_enabled:1; - uint32_t segmentation_update_map:1; - uint32_t segmentation_temporal_update:1; - uint32_t segmentation_update_data:1; - uint32_t UsesLr:1; - uint32_t usesChromaLr:1; - uint32_t apply_grain:1; - uint32_t reserved:3; -} StdVideoDecodeAV1PictureInfoFlags; - -typedef struct StdVideoDecodeAV1ReferenceInfoFlags -{ - uint32_t disable_frame_end_update_cdf:1; - uint32_t segmentation_enabled:1; - uint32_t reserved:30; -} StdVideoDecodeAV1ReferenceInfoFlags; - -typedef struct StdVideoDecodeH264PictureInfoFlags -{ - uint32_t field_pic_flag:1; - uint32_t is_intra:1; - uint32_t IdrPicFlag:1; - uint32_t bottom_field_flag:1; - uint32_t is_reference:1; - uint32_t complementary_field_pair:1; -} StdVideoDecodeH264PictureInfoFlags; - -typedef struct StdVideoDecodeH264ReferenceInfoFlags -{ - uint32_t top_field_flag:1; - uint32_t bottom_field_flag:1; - uint32_t used_for_long_term_reference:1; - uint32_t is_non_existing:1; -} StdVideoDecodeH264ReferenceInfoFlags; - -typedef struct StdVideoDecodeH265PictureInfoFlags -{ - uint32_t IrapPicFlag:1; - uint32_t IdrPicFlag:1; - uint32_t IsReference:1; - uint32_t short_term_ref_pic_set_sps_flag:1; -} StdVideoDecodeH265PictureInfoFlags; - -typedef struct StdVideoDecodeH265ReferenceInfoFlags -{ - uint32_t used_for_long_term_reference:1; - uint32_t unused_for_reference:1; -} StdVideoDecodeH265ReferenceInfoFlags; - -typedef struct StdVideoDecodeVP9PictureInfoFlags -{ - uint32_t error_resilient_mode:1; - uint32_t intra_only:1; - uint32_t allow_high_precision_mv:1; - uint32_t refresh_frame_context:1; - uint32_t frame_parallel_decoding_mode:1; - uint32_t segmentation_enabled:1; - uint32_t show_frame:1; - uint32_t UsePrevFrameMvs:1; - uint32_t reserved:24; -} StdVideoDecodeVP9PictureInfoFlags; - -typedef struct StdVideoEncodeAV1DecoderModelInfo -{ - uint8_t buffer_delay_length_minus_1; - uint8_t buffer_removal_time_length_minus_1; - uint8_t frame_presentation_time_length_minus_1; - uint8_t reserved1; - uint32_t num_units_in_decoding_tick; -} StdVideoEncodeAV1DecoderModelInfo; - -typedef struct StdVideoEncodeAV1ExtensionHeader -{ - uint8_t temporal_id; - uint8_t spatial_id; -} StdVideoEncodeAV1ExtensionHeader; - -typedef struct StdVideoEncodeAV1OperatingPointInfoFlags -{ - uint32_t decoder_model_present_for_this_op:1; - uint32_t low_delay_mode_flag:1; - uint32_t initial_display_delay_present_for_this_op:1; - uint32_t reserved:29; -} StdVideoEncodeAV1OperatingPointInfoFlags; - -typedef struct StdVideoEncodeAV1PictureInfoFlags -{ - uint32_t error_resilient_mode:1; - uint32_t disable_cdf_update:1; - uint32_t use_superres:1; - uint32_t render_and_frame_size_different:1; - uint32_t allow_screen_content_tools:1; - uint32_t is_filter_switchable:1; - uint32_t force_integer_mv:1; - uint32_t frame_size_override_flag:1; - uint32_t buffer_removal_time_present_flag:1; - uint32_t allow_intrabc:1; - uint32_t frame_refs_short_signaling:1; - uint32_t allow_high_precision_mv:1; - uint32_t is_motion_mode_switchable:1; - uint32_t use_ref_frame_mvs:1; - uint32_t disable_frame_end_update_cdf:1; - uint32_t allow_warped_motion:1; - uint32_t reduced_tx_set:1; - uint32_t skip_mode_present:1; - uint32_t delta_q_present:1; - uint32_t delta_lf_present:1; - uint32_t delta_lf_multi:1; - uint32_t segmentation_enabled:1; - uint32_t segmentation_update_map:1; - uint32_t segmentation_temporal_update:1; - uint32_t segmentation_update_data:1; - uint32_t UsesLr:1; - uint32_t usesChromaLr:1; - uint32_t show_frame:1; - uint32_t showable_frame:1; - uint32_t reserved:3; -} StdVideoEncodeAV1PictureInfoFlags; - -typedef struct StdVideoEncodeAV1ReferenceInfoFlags -{ - uint32_t disable_frame_end_update_cdf:1; - uint32_t segmentation_enabled:1; - uint32_t reserved:30; -} StdVideoEncodeAV1ReferenceInfoFlags; - -typedef struct StdVideoEncodeH264PictureInfoFlags -{ - uint32_t IdrPicFlag:1; - uint32_t is_reference:1; - uint32_t no_output_of_prior_pics_flag:1; - uint32_t long_term_reference_flag:1; - uint32_t adaptive_ref_pic_marking_mode_flag:1; - uint32_t reserved:27; -} StdVideoEncodeH264PictureInfoFlags; - -typedef struct StdVideoEncodeH264RefListModEntry -{ - StdVideoH264ModificationOfPicNumsIdc modification_of_pic_nums_idc; - uint16_t abs_diff_pic_num_minus1; - uint16_t long_term_pic_num; -} StdVideoEncodeH264RefListModEntry; + StdVideoH264ModificationOfPicNumsIdc modification_of_pic_nums_idc; + uint16_t abs_diff_pic_num_minus1; + uint16_t long_term_pic_num; +} StdVideoEncodeH264RefListModEntry;
typedef struct StdVideoEncodeH264RefPicMarkingEntry { @@ -7211,12 +7169,6 @@ typedef struct StdVideoEncodeH264RefPicMarkingEntry uint16_t max_long_term_frame_idx_plus1; } StdVideoEncodeH264RefPicMarkingEntry;
-typedef struct StdVideoEncodeH264ReferenceInfoFlags -{ - uint32_t used_for_long_term_reference:1; - uint32_t reserved:31; -} StdVideoEncodeH264ReferenceInfoFlags; - typedef struct StdVideoEncodeH264ReferenceListsInfoFlags { uint32_t ref_pic_list_modification_flag_l0:1; @@ -7231,45 +7183,20 @@ typedef struct StdVideoEncodeH264SliceHeaderFlags uint32_t reserved:30; } StdVideoEncodeH264SliceHeaderFlags;
-typedef struct StdVideoEncodeH264WeightTableFlags -{ - uint32_t luma_weight_l0_flag; - uint32_t chroma_weight_l0_flag; - uint32_t luma_weight_l1_flag; - uint32_t chroma_weight_l1_flag; -} StdVideoEncodeH264WeightTableFlags; - -typedef struct StdVideoEncodeH265LongTermRefPics -{ - uint8_t num_long_term_sps; - uint8_t num_long_term_pics; - uint8_t lt_idx_sps[STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS]; - uint8_t poc_lsb_lt[STD_VIDEO_H265_MAX_LONG_TERM_PICS]; - uint16_t used_by_curr_pic_lt_flag; - uint8_t delta_poc_msb_present_flag[STD_VIDEO_H265_MAX_DELTA_POC]; - uint8_t delta_poc_msb_cycle_lt[STD_VIDEO_H265_MAX_DELTA_POC]; -} StdVideoEncodeH265LongTermRefPics; - -typedef struct StdVideoEncodeH265PictureInfoFlags -{ - uint32_t is_reference:1; - uint32_t IrapPicFlag:1; - uint32_t used_for_long_term_reference:1; - uint32_t discardable_flag:1; - uint32_t cross_layer_bla_flag:1; - uint32_t pic_output_flag:1; - uint32_t no_output_of_prior_pics_flag:1; - uint32_t short_term_ref_pic_set_sps_flag:1; - uint32_t slice_temporal_mvp_enabled_flag:1; - uint32_t reserved:23; -} StdVideoEncodeH265PictureInfoFlags; - -typedef struct StdVideoEncodeH265ReferenceInfoFlags +typedef struct StdVideoEncodeH264WeightTable { - uint32_t used_for_long_term_reference:1; - uint32_t unused_for_reference:1; - uint32_t reserved:30; -} StdVideoEncodeH265ReferenceInfoFlags; + StdVideoEncodeH264WeightTableFlags flags; + uint8_t luma_log2_weight_denom; + uint8_t chroma_log2_weight_denom; + int8_t luma_weight_l0[STD_VIDEO_H264_MAX_NUM_LIST_REF]; + int8_t luma_offset_l0[STD_VIDEO_H264_MAX_NUM_LIST_REF]; + int8_t chroma_weight_l0[STD_VIDEO_H264_MAX_NUM_LIST_REF][STD_VIDEO_H264_MAX_CHROMA_PLANES]; + int8_t chroma_offset_l0[STD_VIDEO_H264_MAX_NUM_LIST_REF][STD_VIDEO_H264_MAX_CHROMA_PLANES]; + int8_t luma_weight_l1[STD_VIDEO_H264_MAX_NUM_LIST_REF]; + int8_t luma_offset_l1[STD_VIDEO_H264_MAX_NUM_LIST_REF]; + int8_t chroma_weight_l1[STD_VIDEO_H264_MAX_NUM_LIST_REF][STD_VIDEO_H264_MAX_CHROMA_PLANES]; + int8_t chroma_offset_l1[STD_VIDEO_H264_MAX_NUM_LIST_REF][STD_VIDEO_H264_MAX_CHROMA_PLANES]; +} StdVideoEncodeH264WeightTable;
typedef struct StdVideoEncodeH265ReferenceListsInfoFlags { @@ -7295,28 +7222,20 @@ typedef struct StdVideoEncodeH265SliceSegmentHeaderFlags uint32_t reserved:20; } StdVideoEncodeH265SliceSegmentHeaderFlags;
-typedef struct StdVideoEncodeH265WeightTableFlags -{ - uint16_t luma_weight_l0_flag; - uint16_t chroma_weight_l0_flag; - uint16_t luma_weight_l1_flag; - uint16_t chroma_weight_l1_flag; -} StdVideoEncodeH265WeightTableFlags; - -typedef struct StdVideoH264HrdParameters +typedef struct StdVideoEncodeH265WeightTable { - uint8_t cpb_cnt_minus1; - uint8_t bit_rate_scale; - uint8_t cpb_size_scale; - uint8_t reserved1; - uint32_t bit_rate_value_minus1[STD_VIDEO_H264_CPB_CNT_LIST_SIZE]; - uint32_t cpb_size_value_minus1[STD_VIDEO_H264_CPB_CNT_LIST_SIZE]; - uint8_t cbr_flag[STD_VIDEO_H264_CPB_CNT_LIST_SIZE]; - uint32_t initial_cpb_removal_delay_length_minus1; - uint32_t cpb_removal_delay_length_minus1; - uint32_t dpb_output_delay_length_minus1; - uint32_t time_offset_length; -} StdVideoH264HrdParameters; + StdVideoEncodeH265WeightTableFlags flags; + uint8_t luma_log2_weight_denom; + int8_t delta_chroma_log2_weight_denom; + int8_t delta_luma_weight_l0[STD_VIDEO_H265_MAX_NUM_LIST_REF]; + int8_t luma_offset_l0[STD_VIDEO_H265_MAX_NUM_LIST_REF]; + int8_t delta_chroma_weight_l0[STD_VIDEO_H265_MAX_NUM_LIST_REF][STD_VIDEO_H265_MAX_CHROMA_PLANES]; + int8_t delta_chroma_offset_l0[STD_VIDEO_H265_MAX_NUM_LIST_REF][STD_VIDEO_H265_MAX_CHROMA_PLANES]; + int8_t delta_luma_weight_l1[STD_VIDEO_H265_MAX_NUM_LIST_REF]; + int8_t luma_offset_l1[STD_VIDEO_H265_MAX_NUM_LIST_REF]; + int8_t delta_chroma_weight_l1[STD_VIDEO_H265_MAX_NUM_LIST_REF][STD_VIDEO_H265_MAX_CHROMA_PLANES]; + int8_t delta_chroma_offset_l1[STD_VIDEO_H265_MAX_NUM_LIST_REF][STD_VIDEO_H265_MAX_CHROMA_PLANES]; +} StdVideoEncodeH265WeightTable;
typedef struct StdVideoH264PpsFlags { @@ -7338,6 +7257,26 @@ typedef struct StdVideoH264ScalingLists uint8_t ScalingList8x8[STD_VIDEO_H264_SCALING_LIST_8X8_NUM_LISTS][STD_VIDEO_H264_SCALING_LIST_8X8_NUM_ELEMENTS]; } StdVideoH264ScalingLists;
+typedef struct StdVideoH264SequenceParameterSetVui +{ + StdVideoH264SpsVuiFlags flags; + StdVideoH264AspectRatioIdc aspect_ratio_idc; + uint16_t sar_width; + uint16_t sar_height; + uint8_t video_format; + uint8_t colour_primaries; + uint8_t transfer_characteristics; + uint8_t matrix_coefficients; + uint32_t num_units_in_tick; + uint32_t time_scale; + uint8_t max_num_reorder_frames; + uint8_t max_dec_frame_buffering; + uint8_t chroma_sample_loc_type_top_field; + uint8_t chroma_sample_loc_type_bottom_field; + uint32_t reserved1; + const StdVideoH264HrdParameters *pHrdParameters; +} StdVideoH264SequenceParameterSetVui; + typedef struct StdVideoH264SpsFlags { uint32_t constraint_set0_flag:1; @@ -7358,40 +7297,13 @@ typedef struct StdVideoH264SpsFlags uint32_t vui_parameters_present_flag:1; } StdVideoH264SpsFlags;
-typedef struct StdVideoH264SpsVuiFlags -{ - uint32_t aspect_ratio_info_present_flag:1; - uint32_t overscan_info_present_flag:1; - uint32_t overscan_appropriate_flag:1; - uint32_t video_signal_type_present_flag:1; - uint32_t video_full_range_flag:1; - uint32_t color_description_present_flag:1; - uint32_t chroma_loc_info_present_flag:1; - uint32_t timing_info_present_flag:1; - uint32_t fixed_frame_rate_flag:1; - uint32_t bitstream_restriction_flag:1; - uint32_t nal_hrd_parameters_present_flag:1; - uint32_t vcl_hrd_parameters_present_flag:1; -} StdVideoH264SpsVuiFlags; - -typedef struct StdVideoH265DecPicBufMgr +typedef struct StdVideoH265DecPicBufMgr { uint32_t max_latency_increase_plus1[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE]; uint8_t max_dec_pic_buffering_minus1[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE]; uint8_t max_num_reorder_pics[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE]; } StdVideoH265DecPicBufMgr;
-typedef struct StdVideoH265HrdFlags -{ - uint32_t nal_hrd_parameters_present_flag:1; - uint32_t vcl_hrd_parameters_present_flag:1; - uint32_t sub_pic_hrd_params_present_flag:1; - uint32_t sub_pic_cpb_params_in_pic_timing_sei_flag:1; - uint32_t fixed_pic_rate_general_flag:8; - uint32_t fixed_pic_rate_within_cvs_flag:8; - uint32_t low_delay_hrd_flag:8; -} StdVideoH265HrdFlags; - typedef struct StdVideoH265LongTermRefPicsSps { uint32_t used_by_curr_pic_lt_sps_flag; @@ -7438,14 +7350,12 @@ typedef struct StdVideoH265PredictorPaletteEntries uint16_t PredictorPaletteEntries[STD_VIDEO_H265_PREDICTOR_PALETTE_COMPONENTS_LIST_SIZE][STD_VIDEO_H265_PREDICTOR_PALETTE_COMP_ENTRIES_LIST_SIZE]; } StdVideoH265PredictorPaletteEntries;
-typedef struct StdVideoH265ProfileTierLevelFlags +typedef struct StdVideoH265ProfileTierLevel { - uint32_t general_tier_flag:1; - uint32_t general_progressive_source_flag:1; - uint32_t general_interlaced_source_flag:1; - uint32_t general_non_packed_constraint_flag:1; - uint32_t general_frame_only_constraint_flag:1; -} StdVideoH265ProfileTierLevelFlags; + StdVideoH265ProfileTierLevelFlags flags; + StdVideoH265ProfileIdc general_profile_idc; + StdVideoH265LevelIdc general_level_idc; +} StdVideoH265ProfileTierLevel;
typedef struct StdVideoH265ScalingLists { @@ -7457,11 +7367,53 @@ typedef struct StdVideoH265ScalingLists uint8_t ScalingListDCCoef32x32[STD_VIDEO_H265_SCALING_LIST_32X32_NUM_LISTS]; } StdVideoH265ScalingLists;
-typedef struct StdVideoH265ShortTermRefPicSetFlags +typedef struct StdVideoH265SequenceParameterSetVui { - uint32_t inter_ref_pic_set_prediction_flag:1; - uint32_t delta_rps_sign:1; -} StdVideoH265ShortTermRefPicSetFlags; + StdVideoH265SpsVuiFlags flags; + StdVideoH265AspectRatioIdc aspect_ratio_idc; + uint16_t sar_width; + uint16_t sar_height; + uint8_t video_format; + uint8_t colour_primaries; + uint8_t transfer_characteristics; + uint8_t matrix_coeffs; + uint8_t chroma_sample_loc_type_top_field; + uint8_t chroma_sample_loc_type_bottom_field; + uint8_t reserved1; + uint8_t reserved2; + uint16_t def_disp_win_left_offset; + uint16_t def_disp_win_right_offset; + uint16_t def_disp_win_top_offset; + uint16_t def_disp_win_bottom_offset; + uint32_t vui_num_units_in_tick; + uint32_t vui_time_scale; + uint32_t vui_num_ticks_poc_diff_one_minus1; + uint16_t min_spatial_segmentation_idc; + uint16_t reserved3; + uint8_t max_bytes_per_pic_denom; + uint8_t max_bits_per_min_cu_denom; + uint8_t log2_max_mv_length_horizontal; + uint8_t log2_max_mv_length_vertical; + const StdVideoH265HrdParameters *pHrdParameters; +} StdVideoH265SequenceParameterSetVui; + +typedef struct StdVideoH265ShortTermRefPicSet +{ + StdVideoH265ShortTermRefPicSetFlags flags; + uint32_t delta_idx_minus1; + uint16_t use_delta_flag; + uint16_t abs_delta_rps_minus1; + uint16_t used_by_curr_pic_flag; + uint16_t used_by_curr_pic_s0_flag; + uint16_t used_by_curr_pic_s1_flag; + uint16_t reserved1; + uint8_t reserved2; + uint8_t reserved3; + uint8_t num_negative_pics; + uint8_t num_positive_pics; + uint16_t delta_poc_s0_minus1[STD_VIDEO_H265_MAX_DPB_SIZE]; + uint16_t delta_poc_s1_minus1[STD_VIDEO_H265_MAX_DPB_SIZE]; +} StdVideoH265ShortTermRefPicSet;
typedef struct StdVideoH265SpsFlags { @@ -7497,37 +7449,6 @@ typedef struct StdVideoH265SpsFlags uint32_t intra_boundary_filtering_disabled_flag:1; } StdVideoH265SpsFlags;
-typedef struct StdVideoH265SpsVuiFlags -{ - uint32_t aspect_ratio_info_present_flag:1; - uint32_t overscan_info_present_flag:1; - uint32_t overscan_appropriate_flag:1; - uint32_t video_signal_type_present_flag:1; - uint32_t video_full_range_flag:1; - uint32_t colour_description_present_flag:1; - uint32_t chroma_loc_info_present_flag:1; - uint32_t neutral_chroma_indication_flag:1; - uint32_t field_seq_flag:1; - uint32_t frame_field_info_present_flag:1; - uint32_t default_display_window_flag:1; - uint32_t vui_timing_info_present_flag:1; - uint32_t vui_poc_proportional_to_timing_flag:1; - uint32_t vui_hrd_parameters_present_flag:1; - uint32_t bitstream_restriction_flag:1; - uint32_t tiles_fixed_structure_flag:1; - uint32_t motion_vectors_over_pic_boundaries_flag:1; - uint32_t restricted_ref_pic_lists_flag:1; -} StdVideoH265SpsVuiFlags; - -typedef struct StdVideoH265SubLayerHrdParameters -{ - uint32_t bit_rate_value_minus1[STD_VIDEO_H265_CPB_CNT_LIST_SIZE]; - uint32_t cpb_size_value_minus1[STD_VIDEO_H265_CPB_CNT_LIST_SIZE]; - uint32_t cpb_size_du_value_minus1[STD_VIDEO_H265_CPB_CNT_LIST_SIZE]; - uint32_t bit_rate_du_value_minus1[STD_VIDEO_H265_CPB_CNT_LIST_SIZE]; - uint32_t cbr_flag; -} StdVideoH265SubLayerHrdParameters; - typedef struct StdVideoH265VpsFlags { uint32_t vps_temporal_id_nesting_flag:1; @@ -7558,1402 +7479,1746 @@ typedef struct StdVideoVP9SegmentationFlags uint32_t reserved:28; } StdVideoVP9SegmentationFlags;
-typedef struct VkAabbPositionsKHR -{ - float minX; - float minY; - float minZ; - float maxX; - float maxY; - float maxZ; -} VkAabbPositionsKHR; -typedef VkAabbPositionsKHR VkAabbPositionsNV; - -typedef struct VkAccelerationStructureBuildRangeInfoKHR -{ - uint32_t primitiveCount; - uint32_t primitiveOffset; - uint32_t firstVertex; - uint32_t transformOffset; -} VkAccelerationStructureBuildRangeInfoKHR; - -typedef struct VkAccelerationStructureBuildSizesInfoKHR +typedef struct VkAccelerationStructureGeometryAabbsDataKHR { VkStructureType sType; const void *pNext; - VkDeviceSize WINE_VK_ALIGN(8) accelerationStructureSize; - VkDeviceSize WINE_VK_ALIGN(8) updateScratchSize; - VkDeviceSize WINE_VK_ALIGN(8) buildScratchSize; -} VkAccelerationStructureBuildSizesInfoKHR; + VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) data; + VkDeviceSize WINE_VK_ALIGN(8) stride; +} VkAccelerationStructureGeometryAabbsDataKHR;
-typedef struct VkAccelerationStructureCaptureDescriptorDataInfoEXT +typedef struct VkAccelerationStructureGeometryInstancesDataKHR { VkStructureType sType; const void *pNext; - VkAccelerationStructureKHR WINE_VK_ALIGN(8) accelerationStructure; - VkAccelerationStructureNV WINE_VK_ALIGN(8) accelerationStructureNV; -} VkAccelerationStructureCaptureDescriptorDataInfoEXT; + VkBool32 arrayOfPointers; + VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) data; +} VkAccelerationStructureGeometryInstancesDataKHR;
-typedef struct VkAccelerationStructureCreateInfoKHR +typedef struct VkAccelerationStructureGeometryTrianglesDataKHR { VkStructureType sType; const void *pNext; - VkAccelerationStructureCreateFlagsKHR createFlags; - VkBuffer WINE_VK_ALIGN(8) buffer; - VkDeviceSize WINE_VK_ALIGN(8) offset; - VkDeviceSize WINE_VK_ALIGN(8) size; - VkAccelerationStructureTypeKHR type; - VkDeviceAddress WINE_VK_ALIGN(8) deviceAddress; -} VkAccelerationStructureCreateInfoKHR; + VkFormat vertexFormat; + VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) vertexData; + VkDeviceSize WINE_VK_ALIGN(8) vertexStride; + uint32_t maxVertex; + VkIndexType indexType; + VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) indexData; + VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) transformData; +} VkAccelerationStructureGeometryTrianglesDataKHR;
-typedef struct VkAccelerationStructureDeviceAddressInfoKHR +typedef union VkClearColorValue { - VkStructureType sType; - const void *pNext; - VkAccelerationStructureKHR WINE_VK_ALIGN(8) accelerationStructure; -} VkAccelerationStructureDeviceAddressInfoKHR; + float float32[4]; + int32_t int32[4]; + uint32_t uint32[4]; +} VkClearColorValue;
-typedef struct VkAccelerationStructureMemoryRequirementsInfoNV +typedef struct VkClearDepthStencilValue { - VkStructureType sType; - const void *pNext; - VkAccelerationStructureMemoryRequirementsTypeNV type; - VkAccelerationStructureNV WINE_VK_ALIGN(8) accelerationStructure; -} VkAccelerationStructureMemoryRequirementsInfoNV; + float depth; + uint32_t stencil; +} VkClearDepthStencilValue;
-typedef struct VkAccelerationStructureMotionInfoNV +typedef struct VkClusterAccelerationStructureClustersBottomLevelInputNV { VkStructureType sType; - const void *pNext; - uint32_t maxInstances; - VkAccelerationStructureMotionInfoFlagsNV flags; -} VkAccelerationStructureMotionInfoNV; + void *pNext; + uint32_t maxTotalClusterCount; + uint32_t maxClusterCountPerAccelerationStructure; +} VkClusterAccelerationStructureClustersBottomLevelInputNV;
-typedef struct VkAccelerationStructureVersionInfoKHR +typedef struct VkClusterAccelerationStructureMoveObjectsInputNV { VkStructureType sType; - const void *pNext; - const uint8_t *pVersionData; -} VkAccelerationStructureVersionInfoKHR; + void *pNext; + VkClusterAccelerationStructureTypeNV type; + VkBool32 noMoveOverlap; + VkDeviceSize WINE_VK_ALIGN(8) maxMovedBytes; +} VkClusterAccelerationStructureMoveObjectsInputNV;
-typedef struct VkAcquireNextImageInfoKHR +typedef struct VkClusterAccelerationStructureTriangleClusterInputNV { VkStructureType sType; - const void *pNext; - VkSwapchainKHR WINE_VK_ALIGN(8) swapchain; - uint64_t WINE_VK_ALIGN(8) timeout; - VkSemaphore WINE_VK_ALIGN(8) semaphore; - VkFence WINE_VK_ALIGN(8) fence; - uint32_t deviceMask; -} VkAcquireNextImageInfoKHR; + void *pNext; + VkFormat vertexFormat; + uint32_t maxGeometryIndexValue; + uint32_t maxClusterUniqueGeometryCount; + uint32_t maxClusterTriangleCount; + uint32_t maxClusterVertexCount; + uint32_t maxTotalTriangleCount; + uint32_t maxTotalVertexCount; + uint32_t minPositionTruncateBitCount; +} VkClusterAccelerationStructureTriangleClusterInputNV;
-typedef struct VkAcquireProfilingLockInfoKHR +typedef struct VkExtent2D { - VkStructureType sType; - const void *pNext; - VkAcquireProfilingLockFlagsKHR flags; - uint64_t WINE_VK_ALIGN(8) timeout; -} VkAcquireProfilingLockInfoKHR; + uint32_t width; + uint32_t height; +} VkExtent2D;
-typedef struct VkAllocationCallbacks +typedef struct VkExtent3D { - void *pUserData; - PFN_vkAllocationFunction pfnAllocation; - PFN_vkReallocationFunction pfnReallocation; - PFN_vkFreeFunction pfnFree; - PFN_vkInternalAllocationNotification pfnInternalAllocation; - PFN_vkInternalFreeNotification pfnInternalFree; -} VkAllocationCallbacks; + uint32_t width; + uint32_t height; + uint32_t depth; +} VkExtent3D;
-typedef struct VkAntiLagPresentationInfoAMD +typedef struct VkGeometryDataNV { - VkStructureType sType; - void *pNext; - VkAntiLagStageAMD stage; - uint64_t WINE_VK_ALIGN(8) frameIndex; -} VkAntiLagPresentationInfoAMD; + VkGeometryTrianglesNV WINE_VK_ALIGN(8) triangles; + VkGeometryAABBNV WINE_VK_ALIGN(8) aabbs; +} VkGeometryDataNV;
-typedef struct VkApplicationInfo +typedef struct VkImageSubresource { - VkStructureType sType; - const void *pNext; - const char *pApplicationName; - uint32_t applicationVersion; - const char *pEngineName; - uint32_t engineVersion; - uint32_t apiVersion; -} VkApplicationInfo; - -typedef struct VkAttachmentDescription -{ - VkAttachmentDescriptionFlags flags; - VkFormat format; - VkSampleCountFlagBits samples; - VkAttachmentLoadOp loadOp; - VkAttachmentStoreOp storeOp; - VkAttachmentLoadOp stencilLoadOp; - VkAttachmentStoreOp stencilStoreOp; - VkImageLayout initialLayout; - VkImageLayout finalLayout; -} VkAttachmentDescription; + VkImageAspectFlags aspectMask; + uint32_t mipLevel; + uint32_t arrayLayer; +} VkImageSubresource;
-typedef struct VkAttachmentDescription2 +typedef struct VkIndirectCommandsExecutionSetTokenEXT { - VkStructureType sType; - const void *pNext; - VkAttachmentDescriptionFlags flags; - VkFormat format; - VkSampleCountFlagBits samples; - VkAttachmentLoadOp loadOp; - VkAttachmentStoreOp storeOp; - VkAttachmentLoadOp stencilLoadOp; - VkAttachmentStoreOp stencilStoreOp; - VkImageLayout initialLayout; - VkImageLayout finalLayout; -} VkAttachmentDescription2; -typedef VkAttachmentDescription2 VkAttachmentDescription2KHR; + VkIndirectExecutionSetInfoTypeEXT type; + VkShaderStageFlags shaderStages; +} VkIndirectCommandsExecutionSetTokenEXT;
-typedef struct VkAttachmentDescriptionStencilLayout +typedef struct VkIndirectCommandsIndexBufferTokenEXT { - VkStructureType sType; - void *pNext; - VkImageLayout stencilInitialLayout; - VkImageLayout stencilFinalLayout; -} VkAttachmentDescriptionStencilLayout; -typedef VkAttachmentDescriptionStencilLayout VkAttachmentDescriptionStencilLayoutKHR; + VkIndirectCommandsInputModeFlagBitsEXT mode; +} VkIndirectCommandsIndexBufferTokenEXT;
-typedef struct VkAttachmentFeedbackLoopInfoEXT +typedef struct VkIndirectCommandsPushConstantTokenEXT { - VkStructureType sType; - const void *pNext; - VkBool32 feedbackLoopEnable; -} VkAttachmentFeedbackLoopInfoEXT; + VkPushConstantRange updateRange; +} VkIndirectCommandsPushConstantTokenEXT;
-typedef struct VkAttachmentReference +typedef struct VkIndirectCommandsVertexBufferTokenEXT { - uint32_t attachment; - VkImageLayout layout; -} VkAttachmentReference; + uint32_t vertexBindingUnit; +} VkIndirectCommandsVertexBufferTokenEXT;
-typedef struct VkAttachmentReference2 +typedef struct VkIndirectExecutionSetShaderLayoutInfoEXT { VkStructureType sType; const void *pNext; - uint32_t attachment; - VkImageLayout layout; - VkImageAspectFlags aspectMask; -} VkAttachmentReference2; -typedef VkAttachmentReference2 VkAttachmentReference2KHR; + uint32_t setLayoutCount; + const VkDescriptorSetLayout *pSetLayouts; +} VkIndirectExecutionSetShaderLayoutInfoEXT;
-typedef struct VkAttachmentReferenceStencilLayout +typedef struct VkOffset2D { - VkStructureType sType; - void *pNext; - VkImageLayout stencilLayout; -} VkAttachmentReferenceStencilLayout; -typedef VkAttachmentReferenceStencilLayout VkAttachmentReferenceStencilLayoutKHR; + int32_t x; + int32_t y; +} VkOffset2D;
-typedef struct VkAttachmentSampleCountInfoAMD +typedef struct VkOffset3D { - VkStructureType sType; - const void *pNext; - uint32_t colorAttachmentCount; - const VkSampleCountFlagBits *pColorAttachmentSamples; - VkSampleCountFlagBits depthStencilAttachmentSamples; -} VkAttachmentSampleCountInfoAMD; -typedef VkAttachmentSampleCountInfoAMD VkAttachmentSampleCountInfoNV; + int32_t x; + int32_t y; + int32_t z; +} VkOffset3D;
-typedef struct VkBaseInStructure +typedef struct VkPhysicalDeviceLimits { - VkStructureType sType; - const struct VkBaseInStructure *pNext; -} VkBaseInStructure; + uint32_t maxImageDimension1D; + uint32_t maxImageDimension2D; + uint32_t maxImageDimension3D; + uint32_t maxImageDimensionCube; + uint32_t maxImageArrayLayers; + uint32_t maxTexelBufferElements; + uint32_t maxUniformBufferRange; + uint32_t maxStorageBufferRange; + uint32_t maxPushConstantsSize; + uint32_t maxMemoryAllocationCount; + uint32_t maxSamplerAllocationCount; + VkDeviceSize WINE_VK_ALIGN(8) bufferImageGranularity; + VkDeviceSize WINE_VK_ALIGN(8) sparseAddressSpaceSize; + uint32_t maxBoundDescriptorSets; + uint32_t maxPerStageDescriptorSamplers; + uint32_t maxPerStageDescriptorUniformBuffers; + uint32_t maxPerStageDescriptorStorageBuffers; + uint32_t maxPerStageDescriptorSampledImages; + uint32_t maxPerStageDescriptorStorageImages; + uint32_t maxPerStageDescriptorInputAttachments; + uint32_t maxPerStageResources; + uint32_t maxDescriptorSetSamplers; + uint32_t maxDescriptorSetUniformBuffers; + uint32_t maxDescriptorSetUniformBuffersDynamic; + uint32_t maxDescriptorSetStorageBuffers; + uint32_t maxDescriptorSetStorageBuffersDynamic; + uint32_t maxDescriptorSetSampledImages; + uint32_t maxDescriptorSetStorageImages; + uint32_t maxDescriptorSetInputAttachments; + uint32_t maxVertexInputAttributes; + uint32_t maxVertexInputBindings; + uint32_t maxVertexInputAttributeOffset; + uint32_t maxVertexInputBindingStride; + uint32_t maxVertexOutputComponents; + uint32_t maxTessellationGenerationLevel; + uint32_t maxTessellationPatchSize; + uint32_t maxTessellationControlPerVertexInputComponents; + uint32_t maxTessellationControlPerVertexOutputComponents; + uint32_t maxTessellationControlPerPatchOutputComponents; + uint32_t maxTessellationControlTotalOutputComponents; + uint32_t maxTessellationEvaluationInputComponents; + uint32_t maxTessellationEvaluationOutputComponents; + uint32_t maxGeometryShaderInvocations; + uint32_t maxGeometryInputComponents; + uint32_t maxGeometryOutputComponents; + uint32_t maxGeometryOutputVertices; + uint32_t maxGeometryTotalOutputComponents; + uint32_t maxFragmentInputComponents; + uint32_t maxFragmentOutputAttachments; + uint32_t maxFragmentDualSrcAttachments; + uint32_t maxFragmentCombinedOutputResources; + uint32_t maxComputeSharedMemorySize; + uint32_t maxComputeWorkGroupCount[3]; + uint32_t maxComputeWorkGroupInvocations; + uint32_t maxComputeWorkGroupSize[3]; + uint32_t subPixelPrecisionBits; + uint32_t subTexelPrecisionBits; + uint32_t mipmapPrecisionBits; + uint32_t maxDrawIndexedIndexValue; + uint32_t maxDrawIndirectCount; + float maxSamplerLodBias; + float maxSamplerAnisotropy; + uint32_t maxViewports; + uint32_t maxViewportDimensions[2]; + float viewportBoundsRange[2]; + uint32_t viewportSubPixelBits; + size_t minMemoryMapAlignment; + VkDeviceSize WINE_VK_ALIGN(8) minTexelBufferOffsetAlignment; + VkDeviceSize WINE_VK_ALIGN(8) minUniformBufferOffsetAlignment; + VkDeviceSize WINE_VK_ALIGN(8) minStorageBufferOffsetAlignment; + int32_t minTexelOffset; + uint32_t maxTexelOffset; + int32_t minTexelGatherOffset; + uint32_t maxTexelGatherOffset; + float minInterpolationOffset; + float maxInterpolationOffset; + uint32_t subPixelInterpolationOffsetBits; + uint32_t maxFramebufferWidth; + uint32_t maxFramebufferHeight; + uint32_t maxFramebufferLayers; + VkSampleCountFlags framebufferColorSampleCounts; + VkSampleCountFlags framebufferDepthSampleCounts; + VkSampleCountFlags framebufferStencilSampleCounts; + VkSampleCountFlags framebufferNoAttachmentsSampleCounts; + uint32_t maxColorAttachments; + VkSampleCountFlags sampledImageColorSampleCounts; + VkSampleCountFlags sampledImageIntegerSampleCounts; + VkSampleCountFlags sampledImageDepthSampleCounts; + VkSampleCountFlags sampledImageStencilSampleCounts; + VkSampleCountFlags storageImageSampleCounts; + uint32_t maxSampleMaskWords; + VkBool32 timestampComputeAndGraphics; + float timestampPeriod; + uint32_t maxClipDistances; + uint32_t maxCullDistances; + uint32_t maxCombinedClipAndCullDistances; + uint32_t discreteQueuePriorities; + float pointSizeRange[2]; + float lineWidthRange[2]; + float pointSizeGranularity; + float lineWidthGranularity; + VkBool32 strictLines; + VkBool32 standardSampleLocations; + VkDeviceSize WINE_VK_ALIGN(8) optimalBufferCopyOffsetAlignment; + VkDeviceSize WINE_VK_ALIGN(8) optimalBufferCopyRowPitchAlignment; + VkDeviceSize WINE_VK_ALIGN(8) nonCoherentAtomSize; +} VkPhysicalDeviceLimits;
-typedef struct VkBaseOutStructure +typedef struct VkPhysicalDeviceSparseProperties { - VkStructureType sType; - struct VkBaseOutStructure *pNext; -} VkBaseOutStructure; + VkBool32 residencyStandard2DBlockShape; + VkBool32 residencyStandard2DMultisampleBlockShape; + VkBool32 residencyStandard3DBlockShape; + VkBool32 residencyAlignedMipSize; + VkBool32 residencyNonResidentStrict; +} VkPhysicalDeviceSparseProperties;
-typedef struct VkBindAccelerationStructureMemoryInfoNV +typedef struct VkSRTDataNV { - VkStructureType sType; - const void *pNext; - VkAccelerationStructureNV WINE_VK_ALIGN(8) accelerationStructure; - VkDeviceMemory WINE_VK_ALIGN(8) memory; - VkDeviceSize WINE_VK_ALIGN(8) memoryOffset; - uint32_t deviceIndexCount; - const uint32_t *pDeviceIndices; -} VkBindAccelerationStructureMemoryInfoNV; + float sx; + float a; + float b; + float pvx; + float sy; + float c; + float pvy; + float sz; + float pvz; + float qx; + float qy; + float qz; + float qw; + float tx; + float ty; + float tz; +} VkSRTDataNV;
-typedef struct VkBindBufferMemoryDeviceGroupInfo +typedef struct VkSampleLocationEXT { - VkStructureType sType; - const void *pNext; - uint32_t deviceIndexCount; - const uint32_t *pDeviceIndices; -} VkBindBufferMemoryDeviceGroupInfo; -typedef VkBindBufferMemoryDeviceGroupInfo VkBindBufferMemoryDeviceGroupInfoKHR; - -typedef struct VkBindBufferMemoryInfo -{ - VkStructureType sType; - const void *pNext; - VkBuffer WINE_VK_ALIGN(8) buffer; - VkDeviceMemory WINE_VK_ALIGN(8) memory; - VkDeviceSize WINE_VK_ALIGN(8) memoryOffset; -} VkBindBufferMemoryInfo; -typedef VkBindBufferMemoryInfo VkBindBufferMemoryInfoKHR; + float x; + float y; +} VkSampleLocationEXT;
-typedef struct VkBindDataGraphPipelineSessionMemoryInfoARM +typedef struct VkSpecializationInfo { - VkStructureType sType; - const void *pNext; - VkDataGraphPipelineSessionARM WINE_VK_ALIGN(8) session; - VkDataGraphPipelineSessionBindPointARM bindPoint; - uint32_t objectIndex; - VkDeviceMemory WINE_VK_ALIGN(8) memory; - VkDeviceSize WINE_VK_ALIGN(8) memoryOffset; -} VkBindDataGraphPipelineSessionMemoryInfoARM; + uint32_t mapEntryCount; + const VkSpecializationMapEntry *pMapEntries; + size_t dataSize; + const void *pData; +} VkSpecializationInfo;
-typedef struct VkBindDescriptorBufferEmbeddedSamplersInfoEXT +typedef struct VkTransformMatrixKHR { - VkStructureType sType; - const void *pNext; - VkShaderStageFlags stageFlags; - VkPipelineLayout WINE_VK_ALIGN(8) layout; - uint32_t set; -} VkBindDescriptorBufferEmbeddedSamplersInfoEXT; + float matrix[3][4]; +} VkTransformMatrixKHR; +typedef VkTransformMatrixKHR VkTransformMatrixNV;
-typedef struct VkBindDescriptorSetsInfo +typedef struct VkVertexInputAttributeDescription { - VkStructureType sType; - const void *pNext; - VkShaderStageFlags stageFlags; - VkPipelineLayout WINE_VK_ALIGN(8) layout; - uint32_t firstSet; - uint32_t descriptorSetCount; - const VkDescriptorSet *pDescriptorSets; - uint32_t dynamicOffsetCount; - const uint32_t *pDynamicOffsets; -} VkBindDescriptorSetsInfo; -typedef VkBindDescriptorSetsInfo VkBindDescriptorSetsInfoKHR; + uint32_t location; + uint32_t binding; + VkFormat format; + uint32_t offset; +} VkVertexInputAttributeDescription;
-typedef struct VkBindImageMemoryInfo +typedef struct VkVertexInputBindingDescription { - VkStructureType sType; - const void *pNext; - VkImage WINE_VK_ALIGN(8) image; - VkDeviceMemory WINE_VK_ALIGN(8) memory; - VkDeviceSize WINE_VK_ALIGN(8) memoryOffset; -} VkBindImageMemoryInfo; -typedef VkBindImageMemoryInfo VkBindImageMemoryInfoKHR; + uint32_t binding; + uint32_t stride; + VkVertexInputRate inputRate; +} VkVertexInputBindingDescription;
-typedef struct VkBindImageMemorySwapchainInfoKHR +typedef struct StdVideoAV1CDEF { - VkStructureType sType; - const void *pNext; - VkSwapchainKHR WINE_VK_ALIGN(8) swapchain; - uint32_t imageIndex; -} VkBindImageMemorySwapchainInfoKHR; + uint8_t cdef_damping_minus_3; + uint8_t cdef_bits; + uint8_t cdef_y_pri_strength[STD_VIDEO_AV1_MAX_CDEF_FILTER_STRENGTHS]; + uint8_t cdef_y_sec_strength[STD_VIDEO_AV1_MAX_CDEF_FILTER_STRENGTHS]; + uint8_t cdef_uv_pri_strength[STD_VIDEO_AV1_MAX_CDEF_FILTER_STRENGTHS]; + uint8_t cdef_uv_sec_strength[STD_VIDEO_AV1_MAX_CDEF_FILTER_STRENGTHS]; +} StdVideoAV1CDEF;
-typedef struct VkBindImagePlaneMemoryInfo +typedef struct StdVideoAV1ColorConfig { - VkStructureType sType; - const void *pNext; - VkImageAspectFlagBits planeAspect; -} VkBindImagePlaneMemoryInfo; -typedef VkBindImagePlaneMemoryInfo VkBindImagePlaneMemoryInfoKHR; + StdVideoAV1ColorConfigFlags flags; + uint8_t BitDepth; + uint8_t subsampling_x; + uint8_t subsampling_y; + uint8_t reserved1; + StdVideoAV1ColorPrimaries color_primaries; + StdVideoAV1TransferCharacteristics transfer_characteristics; + StdVideoAV1MatrixCoefficients matrix_coefficients; + StdVideoAV1ChromaSamplePosition chroma_sample_position; +} StdVideoAV1ColorConfig;
-typedef struct VkBindIndexBufferIndirectCommandEXT +typedef struct StdVideoAV1FilmGrain { - VkDeviceAddress WINE_VK_ALIGN(8) bufferAddress; - uint32_t size; - VkIndexType indexType; -} VkBindIndexBufferIndirectCommandEXT; + StdVideoAV1FilmGrainFlags flags; + uint8_t grain_scaling_minus_8; + uint8_t ar_coeff_lag; + uint8_t ar_coeff_shift_minus_6; + uint8_t grain_scale_shift; + uint16_t grain_seed; + uint8_t film_grain_params_ref_idx; + uint8_t num_y_points; + uint8_t point_y_value[STD_VIDEO_AV1_MAX_NUM_Y_POINTS]; + uint8_t point_y_scaling[STD_VIDEO_AV1_MAX_NUM_Y_POINTS]; + uint8_t num_cb_points; + uint8_t point_cb_value[STD_VIDEO_AV1_MAX_NUM_CB_POINTS]; + uint8_t point_cb_scaling[STD_VIDEO_AV1_MAX_NUM_CB_POINTS]; + uint8_t num_cr_points; + uint8_t point_cr_value[STD_VIDEO_AV1_MAX_NUM_CR_POINTS]; + uint8_t point_cr_scaling[STD_VIDEO_AV1_MAX_NUM_CR_POINTS]; + int8_t ar_coeffs_y_plus_128[STD_VIDEO_AV1_MAX_NUM_POS_LUMA]; + int8_t ar_coeffs_cb_plus_128[STD_VIDEO_AV1_MAX_NUM_POS_CHROMA]; + int8_t ar_coeffs_cr_plus_128[STD_VIDEO_AV1_MAX_NUM_POS_CHROMA]; + uint8_t cb_mult; + uint8_t cb_luma_mult; + uint16_t cb_offset; + uint8_t cr_mult; + uint8_t cr_luma_mult; + uint16_t cr_offset; +} StdVideoAV1FilmGrain;
-typedef struct VkBindIndexBufferIndirectCommandNV +typedef struct StdVideoAV1GlobalMotion { - VkDeviceAddress WINE_VK_ALIGN(8) bufferAddress; - uint32_t size; - VkIndexType indexType; -} VkBindIndexBufferIndirectCommandNV; + uint8_t GmType[STD_VIDEO_AV1_NUM_REF_FRAMES]; + int32_t gm_params[STD_VIDEO_AV1_NUM_REF_FRAMES][STD_VIDEO_AV1_GLOBAL_MOTION_PARAMS]; +} StdVideoAV1GlobalMotion;
-typedef struct VkBindMemoryStatus +typedef struct StdVideoAV1LoopFilter { - VkStructureType sType; - const void *pNext; - VkResult *pResult; -} VkBindMemoryStatus; -typedef VkBindMemoryStatus VkBindMemoryStatusKHR; + StdVideoAV1LoopFilterFlags flags; + uint8_t loop_filter_level[STD_VIDEO_AV1_MAX_LOOP_FILTER_STRENGTHS]; + uint8_t loop_filter_sharpness; + uint8_t update_ref_delta; + int8_t loop_filter_ref_deltas[STD_VIDEO_AV1_TOTAL_REFS_PER_FRAME]; + uint8_t update_mode_delta; + int8_t loop_filter_mode_deltas[STD_VIDEO_AV1_LOOP_FILTER_ADJUSTMENTS]; +} StdVideoAV1LoopFilter;
-typedef struct VkBindPipelineIndirectCommandNV +typedef struct StdVideoAV1LoopRestoration { - VkDeviceAddress WINE_VK_ALIGN(8) pipelineAddress; -} VkBindPipelineIndirectCommandNV; + StdVideoAV1FrameRestorationType FrameRestorationType[STD_VIDEO_AV1_MAX_NUM_PLANES]; + uint16_t LoopRestorationSize[STD_VIDEO_AV1_MAX_NUM_PLANES]; +} StdVideoAV1LoopRestoration;
-typedef struct VkBindShaderGroupIndirectCommandNV +typedef struct StdVideoAV1Quantization { - uint32_t groupIndex; -} VkBindShaderGroupIndirectCommandNV; + StdVideoAV1QuantizationFlags flags; + uint8_t base_q_idx; + int8_t DeltaQYDc; + int8_t DeltaQUDc; + int8_t DeltaQUAc; + int8_t DeltaQVDc; + int8_t DeltaQVAc; + uint8_t qm_y; + uint8_t qm_u; + uint8_t qm_v; +} StdVideoAV1Quantization;
-typedef struct VkBindTensorMemoryInfoARM +typedef struct StdVideoAV1Segmentation { - VkStructureType sType; - const void *pNext; - VkTensorARM WINE_VK_ALIGN(8) tensor; - VkDeviceMemory WINE_VK_ALIGN(8) memory; - VkDeviceSize WINE_VK_ALIGN(8) memoryOffset; -} VkBindTensorMemoryInfoARM; + uint8_t FeatureEnabled[STD_VIDEO_AV1_MAX_SEGMENTS]; + int16_t FeatureData[STD_VIDEO_AV1_MAX_SEGMENTS][STD_VIDEO_AV1_SEG_LVL_MAX]; +} StdVideoAV1Segmentation;
-typedef struct VkBindVertexBufferIndirectCommandEXT +typedef struct StdVideoAV1SequenceHeaderFlags { - VkDeviceAddress WINE_VK_ALIGN(8) bufferAddress; - uint32_t size; - uint32_t stride; -} VkBindVertexBufferIndirectCommandEXT; + uint32_t still_picture:1; + uint32_t reduced_still_picture_header:1; + uint32_t use_128x128_superblock:1; + uint32_t enable_filter_intra:1; + uint32_t enable_intra_edge_filter:1; + uint32_t enable_interintra_compound:1; + uint32_t enable_masked_compound:1; + uint32_t enable_warped_motion:1; + uint32_t enable_dual_filter:1; + uint32_t enable_order_hint:1; + uint32_t enable_jnt_comp:1; + uint32_t enable_ref_frame_mvs:1; + uint32_t frame_id_numbers_present_flag:1; + uint32_t enable_superres:1; + uint32_t enable_cdef:1; + uint32_t enable_restoration:1; + uint32_t film_grain_params_present:1; + uint32_t timing_info_present_flag:1; + uint32_t initial_display_delay_present_flag:1; + uint32_t reserved:13; +} StdVideoAV1SequenceHeaderFlags;
-typedef struct VkBindVertexBufferIndirectCommandNV +typedef struct StdVideoAV1TileInfo { - VkDeviceAddress WINE_VK_ALIGN(8) bufferAddress; - uint32_t size; - uint32_t stride; -} VkBindVertexBufferIndirectCommandNV; + StdVideoAV1TileInfoFlags flags; + uint8_t TileCols; + uint8_t TileRows; + uint16_t context_update_tile_id; + uint8_t tile_size_bytes_minus_1; + uint8_t reserved1[7]; + const uint16_t *pMiColStarts; + const uint16_t *pMiRowStarts; + const uint16_t *pWidthInSbsMinus1; + const uint16_t *pHeightInSbsMinus1; +} StdVideoAV1TileInfo;
-typedef struct VkBindVideoSessionMemoryInfoKHR +typedef struct StdVideoAV1TimingInfo { - VkStructureType sType; - const void *pNext; - uint32_t memoryBindIndex; - VkDeviceMemory WINE_VK_ALIGN(8) memory; - VkDeviceSize WINE_VK_ALIGN(8) memoryOffset; - VkDeviceSize WINE_VK_ALIGN(8) memorySize; -} VkBindVideoSessionMemoryInfoKHR; + StdVideoAV1TimingInfoFlags flags; + uint32_t num_units_in_display_tick; + uint32_t time_scale; + uint32_t num_ticks_per_picture_minus_1; +} StdVideoAV1TimingInfo;
-typedef struct VkBlitImageCubicWeightsInfoQCOM +typedef struct StdVideoDecodeAV1PictureInfoFlags { - VkStructureType sType; - const void *pNext; - VkCubicFilterWeightsQCOM cubicWeights; -} VkBlitImageCubicWeightsInfoQCOM; - -typedef struct VkBufferCaptureDescriptorDataInfoEXT -{ - VkStructureType sType; - const void *pNext; - VkBuffer WINE_VK_ALIGN(8) buffer; -} VkBufferCaptureDescriptorDataInfoEXT; + uint32_t error_resilient_mode:1; + uint32_t disable_cdf_update:1; + uint32_t use_superres:1; + uint32_t render_and_frame_size_different:1; + uint32_t allow_screen_content_tools:1; + uint32_t is_filter_switchable:1; + uint32_t force_integer_mv:1; + uint32_t frame_size_override_flag:1; + uint32_t buffer_removal_time_present_flag:1; + uint32_t allow_intrabc:1; + uint32_t frame_refs_short_signaling:1; + uint32_t allow_high_precision_mv:1; + uint32_t is_motion_mode_switchable:1; + uint32_t use_ref_frame_mvs:1; + uint32_t disable_frame_end_update_cdf:1; + uint32_t allow_warped_motion:1; + uint32_t reduced_tx_set:1; + uint32_t reference_select:1; + uint32_t skip_mode_present:1; + uint32_t delta_q_present:1; + uint32_t delta_lf_present:1; + uint32_t delta_lf_multi:1; + uint32_t segmentation_enabled:1; + uint32_t segmentation_update_map:1; + uint32_t segmentation_temporal_update:1; + uint32_t segmentation_update_data:1; + uint32_t UsesLr:1; + uint32_t usesChromaLr:1; + uint32_t apply_grain:1; + uint32_t reserved:3; +} StdVideoDecodeAV1PictureInfoFlags;
-typedef struct VkBufferCopy +typedef struct StdVideoDecodeAV1ReferenceInfoFlags { - VkDeviceSize WINE_VK_ALIGN(8) srcOffset; - VkDeviceSize WINE_VK_ALIGN(8) dstOffset; - VkDeviceSize WINE_VK_ALIGN(8) size; -} VkBufferCopy; + uint32_t disable_frame_end_update_cdf:1; + uint32_t segmentation_enabled:1; + uint32_t reserved:30; +} StdVideoDecodeAV1ReferenceInfoFlags;
-typedef struct VkBufferCopy2 +typedef struct StdVideoDecodeH264PictureInfoFlags { - VkStructureType sType; - const void *pNext; - VkDeviceSize WINE_VK_ALIGN(8) srcOffset; - VkDeviceSize WINE_VK_ALIGN(8) dstOffset; - VkDeviceSize WINE_VK_ALIGN(8) size; -} VkBufferCopy2; -typedef VkBufferCopy2 VkBufferCopy2KHR; + uint32_t field_pic_flag:1; + uint32_t is_intra:1; + uint32_t IdrPicFlag:1; + uint32_t bottom_field_flag:1; + uint32_t is_reference:1; + uint32_t complementary_field_pair:1; +} StdVideoDecodeH264PictureInfoFlags;
-typedef struct VkBufferCreateInfo +typedef struct StdVideoDecodeH264ReferenceInfoFlags { - VkStructureType sType; - const void *pNext; - VkBufferCreateFlags flags; - VkDeviceSize WINE_VK_ALIGN(8) size; - VkBufferUsageFlags usage; - VkSharingMode sharingMode; - uint32_t queueFamilyIndexCount; - const uint32_t *pQueueFamilyIndices; -} VkBufferCreateInfo; + uint32_t top_field_flag:1; + uint32_t bottom_field_flag:1; + uint32_t used_for_long_term_reference:1; + uint32_t is_non_existing:1; +} StdVideoDecodeH264ReferenceInfoFlags;
-typedef struct VkBufferDeviceAddressCreateInfoEXT +typedef struct StdVideoDecodeH265PictureInfoFlags { - VkStructureType sType; - const void *pNext; - VkDeviceAddress WINE_VK_ALIGN(8) deviceAddress; -} VkBufferDeviceAddressCreateInfoEXT; + uint32_t IrapPicFlag:1; + uint32_t IdrPicFlag:1; + uint32_t IsReference:1; + uint32_t short_term_ref_pic_set_sps_flag:1; +} StdVideoDecodeH265PictureInfoFlags;
-typedef struct VkBufferDeviceAddressInfo +typedef struct StdVideoDecodeH265ReferenceInfoFlags { - VkStructureType sType; - const void *pNext; - VkBuffer WINE_VK_ALIGN(8) buffer; -} VkBufferDeviceAddressInfo; -typedef VkBufferDeviceAddressInfo VkBufferDeviceAddressInfoKHR; -typedef VkBufferDeviceAddressInfo VkBufferDeviceAddressInfoEXT; + uint32_t used_for_long_term_reference:1; + uint32_t unused_for_reference:1; +} StdVideoDecodeH265ReferenceInfoFlags;
-typedef struct VkBufferMemoryBarrier +typedef struct StdVideoDecodeVP9PictureInfoFlags { - VkStructureType sType; - const void *pNext; - VkAccessFlags srcAccessMask; - VkAccessFlags dstAccessMask; - uint32_t srcQueueFamilyIndex; - uint32_t dstQueueFamilyIndex; - VkBuffer WINE_VK_ALIGN(8) buffer; - VkDeviceSize WINE_VK_ALIGN(8) offset; - VkDeviceSize WINE_VK_ALIGN(8) size; -} VkBufferMemoryBarrier; + uint32_t error_resilient_mode:1; + uint32_t intra_only:1; + uint32_t allow_high_precision_mv:1; + uint32_t refresh_frame_context:1; + uint32_t frame_parallel_decoding_mode:1; + uint32_t segmentation_enabled:1; + uint32_t show_frame:1; + uint32_t UsePrevFrameMvs:1; + uint32_t reserved:24; +} StdVideoDecodeVP9PictureInfoFlags;
-typedef struct VkBufferMemoryBarrier2 +typedef struct StdVideoEncodeAV1ExtensionHeader { - VkStructureType sType; - const void *pNext; - VkPipelineStageFlags2 WINE_VK_ALIGN(8) srcStageMask; - VkAccessFlags2 WINE_VK_ALIGN(8) srcAccessMask; - VkPipelineStageFlags2 WINE_VK_ALIGN(8) dstStageMask; - VkAccessFlags2 WINE_VK_ALIGN(8) dstAccessMask; - uint32_t srcQueueFamilyIndex; - uint32_t dstQueueFamilyIndex; - VkBuffer WINE_VK_ALIGN(8) buffer; - VkDeviceSize WINE_VK_ALIGN(8) offset; - VkDeviceSize WINE_VK_ALIGN(8) size; -} VkBufferMemoryBarrier2; -typedef VkBufferMemoryBarrier2 VkBufferMemoryBarrier2KHR; + uint8_t temporal_id; + uint8_t spatial_id; +} StdVideoEncodeAV1ExtensionHeader;
-typedef struct VkBufferMemoryRequirementsInfo2 +typedef struct StdVideoEncodeAV1OperatingPointInfoFlags { - VkStructureType sType; - const void *pNext; - VkBuffer WINE_VK_ALIGN(8) buffer; -} VkBufferMemoryRequirementsInfo2; -typedef VkBufferMemoryRequirementsInfo2 VkBufferMemoryRequirementsInfo2KHR; + uint32_t decoder_model_present_for_this_op:1; + uint32_t low_delay_mode_flag:1; + uint32_t initial_display_delay_present_for_this_op:1; + uint32_t reserved:29; +} StdVideoEncodeAV1OperatingPointInfoFlags;
-typedef struct VkBufferOpaqueCaptureAddressCreateInfo +typedef struct StdVideoEncodeAV1PictureInfoFlags { - VkStructureType sType; - const void *pNext; - uint64_t WINE_VK_ALIGN(8) opaqueCaptureAddress; -} VkBufferOpaqueCaptureAddressCreateInfo; -typedef VkBufferOpaqueCaptureAddressCreateInfo VkBufferOpaqueCaptureAddressCreateInfoKHR; + uint32_t error_resilient_mode:1; + uint32_t disable_cdf_update:1; + uint32_t use_superres:1; + uint32_t render_and_frame_size_different:1; + uint32_t allow_screen_content_tools:1; + uint32_t is_filter_switchable:1; + uint32_t force_integer_mv:1; + uint32_t frame_size_override_flag:1; + uint32_t buffer_removal_time_present_flag:1; + uint32_t allow_intrabc:1; + uint32_t frame_refs_short_signaling:1; + uint32_t allow_high_precision_mv:1; + uint32_t is_motion_mode_switchable:1; + uint32_t use_ref_frame_mvs:1; + uint32_t disable_frame_end_update_cdf:1; + uint32_t allow_warped_motion:1; + uint32_t reduced_tx_set:1; + uint32_t skip_mode_present:1; + uint32_t delta_q_present:1; + uint32_t delta_lf_present:1; + uint32_t delta_lf_multi:1; + uint32_t segmentation_enabled:1; + uint32_t segmentation_update_map:1; + uint32_t segmentation_temporal_update:1; + uint32_t segmentation_update_data:1; + uint32_t UsesLr:1; + uint32_t usesChromaLr:1; + uint32_t show_frame:1; + uint32_t showable_frame:1; + uint32_t reserved:3; +} StdVideoEncodeAV1PictureInfoFlags;
-typedef struct VkBufferUsageFlags2CreateInfo +typedef struct StdVideoEncodeAV1ReferenceInfoFlags { - VkStructureType sType; - const void *pNext; - VkBufferUsageFlags2 WINE_VK_ALIGN(8) usage; -} VkBufferUsageFlags2CreateInfo; -typedef VkBufferUsageFlags2CreateInfo VkBufferUsageFlags2CreateInfoKHR; + uint32_t disable_frame_end_update_cdf:1; + uint32_t segmentation_enabled:1; + uint32_t reserved:30; +} StdVideoEncodeAV1ReferenceInfoFlags;
-typedef struct VkBufferViewCreateInfo +typedef struct StdVideoEncodeH264PictureInfoFlags { - VkStructureType sType; - const void *pNext; - VkBufferViewCreateFlags flags; - VkBuffer WINE_VK_ALIGN(8) buffer; - VkFormat format; - VkDeviceSize WINE_VK_ALIGN(8) offset; - VkDeviceSize WINE_VK_ALIGN(8) range; -} VkBufferViewCreateInfo; + uint32_t IdrPicFlag:1; + uint32_t is_reference:1; + uint32_t no_output_of_prior_pics_flag:1; + uint32_t long_term_reference_flag:1; + uint32_t adaptive_ref_pic_marking_mode_flag:1; + uint32_t reserved:27; +} StdVideoEncodeH264PictureInfoFlags;
-typedef struct VkCalibratedTimestampInfoKHR +typedef struct StdVideoEncodeH264ReferenceInfoFlags { - VkStructureType sType; - const void *pNext; - VkTimeDomainKHR timeDomain; -} VkCalibratedTimestampInfoKHR; -typedef VkCalibratedTimestampInfoKHR VkCalibratedTimestampInfoEXT; + uint32_t used_for_long_term_reference:1; + uint32_t reserved:31; +} StdVideoEncodeH264ReferenceInfoFlags;
-typedef struct VkCheckpointData2NV +typedef struct StdVideoEncodeH264ReferenceListsInfo { - VkStructureType sType; - void *pNext; - VkPipelineStageFlags2 WINE_VK_ALIGN(8) stage; - void *pCheckpointMarker; -} VkCheckpointData2NV; + StdVideoEncodeH264ReferenceListsInfoFlags flags; + uint8_t num_ref_idx_l0_active_minus1; + uint8_t num_ref_idx_l1_active_minus1; + uint8_t RefPicList0[STD_VIDEO_H264_MAX_NUM_LIST_REF]; + uint8_t RefPicList1[STD_VIDEO_H264_MAX_NUM_LIST_REF]; + uint8_t refList0ModOpCount; + uint8_t refList1ModOpCount; + uint8_t refPicMarkingOpCount; + uint8_t reserved1[7]; + const StdVideoEncodeH264RefListModEntry *pRefList0ModOperations; + const StdVideoEncodeH264RefListModEntry *pRefList1ModOperations; + const StdVideoEncodeH264RefPicMarkingEntry *pRefPicMarkingOperations; +} StdVideoEncodeH264ReferenceListsInfo;
-typedef struct VkCheckpointDataNV +typedef struct StdVideoEncodeH264SliceHeader { - VkStructureType sType; - void *pNext; - VkPipelineStageFlagBits stage; - void *pCheckpointMarker; -} VkCheckpointDataNV; + StdVideoEncodeH264SliceHeaderFlags flags; + uint32_t first_mb_in_slice; + StdVideoH264SliceType slice_type; + int8_t slice_alpha_c0_offset_div2; + int8_t slice_beta_offset_div2; + int8_t slice_qp_delta; + uint8_t reserved1; + StdVideoH264CabacInitIdc cabac_init_idc; + StdVideoH264DisableDeblockingFilterIdc disable_deblocking_filter_idc; + const StdVideoEncodeH264WeightTable *pWeightTable; +} StdVideoEncodeH264SliceHeader;
-typedef union VkClearColorValue +typedef struct StdVideoEncodeH265LongTermRefPics { - float float32[4]; - int32_t int32[4]; - uint32_t uint32[4]; -} VkClearColorValue; + uint8_t num_long_term_sps; + uint8_t num_long_term_pics; + uint8_t lt_idx_sps[STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS]; + uint8_t poc_lsb_lt[STD_VIDEO_H265_MAX_LONG_TERM_PICS]; + uint16_t used_by_curr_pic_lt_flag; + uint8_t delta_poc_msb_present_flag[STD_VIDEO_H265_MAX_DELTA_POC]; + uint8_t delta_poc_msb_cycle_lt[STD_VIDEO_H265_MAX_DELTA_POC]; +} StdVideoEncodeH265LongTermRefPics;
-typedef struct VkClearDepthStencilValue +typedef struct StdVideoEncodeH265PictureInfoFlags { - float depth; - uint32_t stencil; -} VkClearDepthStencilValue; + uint32_t is_reference:1; + uint32_t IrapPicFlag:1; + uint32_t used_for_long_term_reference:1; + uint32_t discardable_flag:1; + uint32_t cross_layer_bla_flag:1; + uint32_t pic_output_flag:1; + uint32_t no_output_of_prior_pics_flag:1; + uint32_t short_term_ref_pic_set_sps_flag:1; + uint32_t slice_temporal_mvp_enabled_flag:1; + uint32_t reserved:23; +} StdVideoEncodeH265PictureInfoFlags;
-typedef union VkClearValue +typedef struct StdVideoEncodeH265ReferenceInfoFlags { - VkClearColorValue color; - VkClearDepthStencilValue depthStencil; -} VkClearValue; + uint32_t used_for_long_term_reference:1; + uint32_t unused_for_reference:1; + uint32_t reserved:30; +} StdVideoEncodeH265ReferenceInfoFlags;
-typedef struct VkClusterAccelerationStructureBuildClustersBottomLevelInfoNV +typedef struct StdVideoEncodeH265ReferenceListsInfo { - uint32_t clusterReferencesCount; - uint32_t clusterReferencesStride; - VkDeviceAddress WINE_VK_ALIGN(8) clusterReferences; -} VkClusterAccelerationStructureBuildClustersBottomLevelInfoNV; + StdVideoEncodeH265ReferenceListsInfoFlags flags; + uint8_t num_ref_idx_l0_active_minus1; + uint8_t num_ref_idx_l1_active_minus1; + uint8_t RefPicList0[STD_VIDEO_H265_MAX_NUM_LIST_REF]; + uint8_t RefPicList1[STD_VIDEO_H265_MAX_NUM_LIST_REF]; + uint8_t list_entry_l0[STD_VIDEO_H265_MAX_NUM_LIST_REF]; + uint8_t list_entry_l1[STD_VIDEO_H265_MAX_NUM_LIST_REF]; +} StdVideoEncodeH265ReferenceListsInfo;
-typedef struct VkClusterAccelerationStructureClustersBottomLevelInputNV +typedef struct StdVideoEncodeH265SliceSegmentHeader { - VkStructureType sType; - void *pNext; - uint32_t maxTotalClusterCount; - uint32_t maxClusterCountPerAccelerationStructure; -} VkClusterAccelerationStructureClustersBottomLevelInputNV; + StdVideoEncodeH265SliceSegmentHeaderFlags flags; + StdVideoH265SliceType slice_type; + uint32_t slice_segment_address; + uint8_t collocated_ref_idx; + uint8_t MaxNumMergeCand; + int8_t slice_cb_qp_offset; + int8_t slice_cr_qp_offset; + int8_t slice_beta_offset_div2; + int8_t slice_tc_offset_div2; + int8_t slice_act_y_qp_offset; + int8_t slice_act_cb_qp_offset; + int8_t slice_act_cr_qp_offset; + int8_t slice_qp_delta; + uint16_t reserved1; + const StdVideoEncodeH265WeightTable *pWeightTable; +} StdVideoEncodeH265SliceSegmentHeader;
-typedef struct VkClusterAccelerationStructureGeometryIndexAndGeometryFlagsNV +typedef struct StdVideoH264PictureParameterSet { - uint32_t geometryIndex:24; - uint32_t reserved:5; - uint32_t geometryFlags:3; -} VkClusterAccelerationStructureGeometryIndexAndGeometryFlagsNV; + StdVideoH264PpsFlags flags; + uint8_t seq_parameter_set_id; + uint8_t pic_parameter_set_id; + uint8_t num_ref_idx_l0_default_active_minus1; + uint8_t num_ref_idx_l1_default_active_minus1; + StdVideoH264WeightedBipredIdc weighted_bipred_idc; + int8_t pic_init_qp_minus26; + int8_t pic_init_qs_minus26; + int8_t chroma_qp_index_offset; + int8_t second_chroma_qp_index_offset; + const StdVideoH264ScalingLists *pScalingLists; +} StdVideoH264PictureParameterSet;
-typedef struct VkClusterAccelerationStructureGetTemplateIndicesInfoNV +typedef struct StdVideoH264SequenceParameterSet { - VkDeviceAddress WINE_VK_ALIGN(8) clusterTemplateAddress; -} VkClusterAccelerationStructureGetTemplateIndicesInfoNV; + StdVideoH264SpsFlags flags; + StdVideoH264ProfileIdc profile_idc; + StdVideoH264LevelIdc level_idc; + StdVideoH264ChromaFormatIdc chroma_format_idc; + uint8_t seq_parameter_set_id; + uint8_t bit_depth_luma_minus8; + uint8_t bit_depth_chroma_minus8; + uint8_t log2_max_frame_num_minus4; + StdVideoH264PocType pic_order_cnt_type; + int32_t offset_for_non_ref_pic; + int32_t offset_for_top_to_bottom_field; + uint8_t log2_max_pic_order_cnt_lsb_minus4; + uint8_t num_ref_frames_in_pic_order_cnt_cycle; + uint8_t max_num_ref_frames; + uint8_t reserved1; + uint32_t pic_width_in_mbs_minus1; + uint32_t pic_height_in_map_units_minus1; + uint32_t frame_crop_left_offset; + uint32_t frame_crop_right_offset; + uint32_t frame_crop_top_offset; + uint32_t frame_crop_bottom_offset; + uint32_t reserved2; + const int32_t *pOffsetForRefFrame; + const StdVideoH264ScalingLists *pScalingLists; + const StdVideoH264SequenceParameterSetVui *pSequenceParameterSetVui; +} StdVideoH264SequenceParameterSet;
-typedef struct VkClusterAccelerationStructureMoveObjectsInfoNV +typedef struct StdVideoH265PictureParameterSet { - VkDeviceAddress WINE_VK_ALIGN(8) srcAccelerationStructure; -} VkClusterAccelerationStructureMoveObjectsInfoNV; + StdVideoH265PpsFlags flags; + uint8_t pps_pic_parameter_set_id; + uint8_t pps_seq_parameter_set_id; + uint8_t sps_video_parameter_set_id; + uint8_t num_extra_slice_header_bits; + uint8_t num_ref_idx_l0_default_active_minus1; + uint8_t num_ref_idx_l1_default_active_minus1; + int8_t init_qp_minus26; + uint8_t diff_cu_qp_delta_depth; + int8_t pps_cb_qp_offset; + int8_t pps_cr_qp_offset; + int8_t pps_beta_offset_div2; + int8_t pps_tc_offset_div2; + uint8_t log2_parallel_merge_level_minus2; + uint8_t log2_max_transform_skip_block_size_minus2; + uint8_t diff_cu_chroma_qp_offset_depth; + uint8_t chroma_qp_offset_list_len_minus1; + int8_t cb_qp_offset_list[STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE]; + int8_t cr_qp_offset_list[STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE]; + uint8_t log2_sao_offset_scale_luma; + uint8_t log2_sao_offset_scale_chroma; + int8_t pps_act_y_qp_offset_plus5; + int8_t pps_act_cb_qp_offset_plus5; + int8_t pps_act_cr_qp_offset_plus3; + uint8_t pps_num_palette_predictor_initializers; + uint8_t luma_bit_depth_entry_minus8; + uint8_t chroma_bit_depth_entry_minus8; + uint8_t num_tile_columns_minus1; + uint8_t num_tile_rows_minus1; + uint8_t reserved1; + uint8_t reserved2; + uint16_t column_width_minus1[STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_COLS_LIST_SIZE]; + uint16_t row_height_minus1[STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_ROWS_LIST_SIZE]; + uint32_t reserved3; + const StdVideoH265ScalingLists *pScalingLists; + const StdVideoH265PredictorPaletteEntries *pPredictorPaletteEntries; +} StdVideoH265PictureParameterSet;
-typedef struct VkClusterAccelerationStructureMoveObjectsInputNV +typedef struct StdVideoH265SequenceParameterSet { - VkStructureType sType; - void *pNext; - VkClusterAccelerationStructureTypeNV type; - VkBool32 noMoveOverlap; - VkDeviceSize WINE_VK_ALIGN(8) maxMovedBytes; -} VkClusterAccelerationStructureMoveObjectsInputNV; + StdVideoH265SpsFlags flags; + StdVideoH265ChromaFormatIdc chroma_format_idc; + uint32_t pic_width_in_luma_samples; + uint32_t pic_height_in_luma_samples; + uint8_t sps_video_parameter_set_id; + uint8_t sps_max_sub_layers_minus1; + uint8_t sps_seq_parameter_set_id; + uint8_t bit_depth_luma_minus8; + uint8_t bit_depth_chroma_minus8; + uint8_t log2_max_pic_order_cnt_lsb_minus4; + uint8_t log2_min_luma_coding_block_size_minus3; + uint8_t log2_diff_max_min_luma_coding_block_size; + uint8_t log2_min_luma_transform_block_size_minus2; + uint8_t log2_diff_max_min_luma_transform_block_size; + uint8_t max_transform_hierarchy_depth_inter; + uint8_t max_transform_hierarchy_depth_intra; + uint8_t num_short_term_ref_pic_sets; + uint8_t num_long_term_ref_pics_sps; + uint8_t pcm_sample_bit_depth_luma_minus1; + uint8_t pcm_sample_bit_depth_chroma_minus1; + uint8_t log2_min_pcm_luma_coding_block_size_minus3; + uint8_t log2_diff_max_min_pcm_luma_coding_block_size; + uint8_t reserved1; + uint8_t reserved2; + uint8_t palette_max_size; + uint8_t delta_palette_max_predictor_size; + uint8_t motion_vector_resolution_control_idc; + uint8_t sps_num_palette_predictor_initializers_minus1; + uint32_t conf_win_left_offset; + uint32_t conf_win_right_offset; + uint32_t conf_win_top_offset; + uint32_t conf_win_bottom_offset; + const StdVideoH265ProfileTierLevel *pProfileTierLevel; + const StdVideoH265DecPicBufMgr *pDecPicBufMgr; + const StdVideoH265ScalingLists *pScalingLists; + const StdVideoH265ShortTermRefPicSet *pShortTermRefPicSet; + const StdVideoH265LongTermRefPicsSps *pLongTermRefPicsSps; + const StdVideoH265SequenceParameterSetVui *pSequenceParameterSetVui; + const StdVideoH265PredictorPaletteEntries *pPredictorPaletteEntries; +} StdVideoH265SequenceParameterSet;
-typedef struct VkClusterAccelerationStructureTriangleClusterInputNV +typedef struct StdVideoH265VideoParameterSet { - VkStructureType sType; - void *pNext; - VkFormat vertexFormat; - uint32_t maxGeometryIndexValue; - uint32_t maxClusterUniqueGeometryCount; - uint32_t maxClusterTriangleCount; - uint32_t maxClusterVertexCount; - uint32_t maxTotalTriangleCount; - uint32_t maxTotalVertexCount; - uint32_t minPositionTruncateBitCount; -} VkClusterAccelerationStructureTriangleClusterInputNV; + StdVideoH265VpsFlags flags; + uint8_t vps_video_parameter_set_id; + uint8_t vps_max_sub_layers_minus1; + uint8_t reserved1; + uint8_t reserved2; + uint32_t vps_num_units_in_tick; + uint32_t vps_time_scale; + uint32_t vps_num_ticks_poc_diff_one_minus1; + uint32_t reserved3; + const StdVideoH265DecPicBufMgr *pDecPicBufMgr; + const StdVideoH265HrdParameters *pHrdParameters; + const StdVideoH265ProfileTierLevel *pProfileTierLevel; +} StdVideoH265VideoParameterSet;
-typedef struct VkCoarseSampleLocationNV +typedef struct StdVideoVP9ColorConfig { - uint32_t pixelX; - uint32_t pixelY; - uint32_t sample; -} VkCoarseSampleLocationNV; + StdVideoVP9ColorConfigFlags flags; + uint8_t BitDepth; + uint8_t subsampling_x; + uint8_t subsampling_y; + uint8_t reserved1; + StdVideoVP9ColorSpace color_space; +} StdVideoVP9ColorConfig;
-typedef struct VkCoarseSampleOrderCustomNV +typedef struct StdVideoVP9LoopFilter { - VkShadingRatePaletteEntryNV shadingRate; - uint32_t sampleCount; - uint32_t sampleLocationCount; - const VkCoarseSampleLocationNV *pSampleLocations; -} VkCoarseSampleOrderCustomNV; + StdVideoVP9LoopFilterFlags flags; + uint8_t loop_filter_level; + uint8_t loop_filter_sharpness; + uint8_t update_ref_delta; + int8_t loop_filter_ref_deltas[STD_VIDEO_VP9_MAX_REF_FRAMES]; + uint8_t update_mode_delta; + int8_t loop_filter_mode_deltas[STD_VIDEO_VP9_LOOP_FILTER_ADJUSTMENTS]; +} StdVideoVP9LoopFilter;
-typedef struct VkColorBlendAdvancedEXT +typedef struct StdVideoVP9Segmentation { - VkBlendOp advancedBlendOp; - VkBool32 srcPremultiplied; - VkBool32 dstPremultiplied; - VkBlendOverlapEXT blendOverlap; - VkBool32 clampResults; -} VkColorBlendAdvancedEXT; + StdVideoVP9SegmentationFlags flags; + uint8_t segmentation_tree_probs[STD_VIDEO_VP9_MAX_SEGMENTATION_TREE_PROBS]; + uint8_t segmentation_pred_prob[STD_VIDEO_VP9_MAX_SEGMENTATION_PRED_PROB]; + uint8_t FeatureEnabled[STD_VIDEO_VP9_MAX_SEGMENTS]; + int16_t FeatureData[STD_VIDEO_VP9_MAX_SEGMENTS][STD_VIDEO_VP9_SEG_LVL_MAX]; +} StdVideoVP9Segmentation;
-typedef struct VkColorBlendEquationEXT +typedef union VkAccelerationStructureGeometryDataKHR { - VkBlendFactor srcColorBlendFactor; - VkBlendFactor dstColorBlendFactor; - VkBlendOp colorBlendOp; - VkBlendFactor srcAlphaBlendFactor; - VkBlendFactor dstAlphaBlendFactor; - VkBlendOp alphaBlendOp; -} VkColorBlendEquationEXT; + VkAccelerationStructureGeometryTrianglesDataKHR WINE_VK_ALIGN(8) triangles; + VkAccelerationStructureGeometryAabbsDataKHR WINE_VK_ALIGN(8) aabbs; + VkAccelerationStructureGeometryInstancesDataKHR WINE_VK_ALIGN(8) instances; +} VkAccelerationStructureGeometryDataKHR;
-typedef struct VkCommandBufferAllocateInfo +typedef struct VkAccelerationStructureInstanceKHR { - VkStructureType sType; - const void *pNext; - VkCommandPool WINE_VK_ALIGN(8) commandPool; - VkCommandBufferLevel level; - uint32_t commandBufferCount; -} VkCommandBufferAllocateInfo; + VkTransformMatrixKHR transform; + uint32_t instanceCustomIndex:24; + uint32_t mask:8; + uint32_t instanceShaderBindingTableRecordOffset:24; + VkGeometryInstanceFlagsKHR flags:8; + uint64_t WINE_VK_ALIGN(8) accelerationStructureReference; +} VkAccelerationStructureInstanceKHR; +typedef VkAccelerationStructureInstanceKHR VkAccelerationStructureInstanceNV;
-typedef struct VkCommandBufferInheritanceConditionalRenderingInfoEXT +typedef struct VkAccelerationStructureMatrixMotionInstanceNV { - VkStructureType sType; - const void *pNext; - VkBool32 conditionalRenderingEnable; -} VkCommandBufferInheritanceConditionalRenderingInfoEXT; + VkTransformMatrixKHR transformT0; + VkTransformMatrixKHR transformT1; + uint32_t instanceCustomIndex:24; + uint32_t mask:8; + uint32_t instanceShaderBindingTableRecordOffset:24; + VkGeometryInstanceFlagsKHR flags:8; + uint64_t WINE_VK_ALIGN(8) accelerationStructureReference; +} VkAccelerationStructureMatrixMotionInstanceNV;
-typedef struct VkCommandBufferInheritanceInfo +typedef struct VkAccelerationStructureSRTMotionInstanceNV { - VkStructureType sType; - const void *pNext; - VkRenderPass WINE_VK_ALIGN(8) renderPass; - uint32_t subpass; - VkFramebuffer WINE_VK_ALIGN(8) framebuffer; - VkBool32 occlusionQueryEnable; - VkQueryControlFlags queryFlags; - VkQueryPipelineStatisticFlags pipelineStatistics; -} VkCommandBufferInheritanceInfo; + VkSRTDataNV transformT0; + VkSRTDataNV transformT1; + uint32_t instanceCustomIndex:24; + uint32_t mask:8; + uint32_t instanceShaderBindingTableRecordOffset:24; + VkGeometryInstanceFlagsKHR flags:8; + uint64_t WINE_VK_ALIGN(8) accelerationStructureReference; +} VkAccelerationStructureSRTMotionInstanceNV;
-typedef struct VkCommandBufferInheritanceRenderingInfo +typedef struct VkAttachmentReference { - VkStructureType sType; - const void *pNext; - VkRenderingFlags flags; - uint32_t viewMask; - uint32_t colorAttachmentCount; - const VkFormat *pColorAttachmentFormats; - VkFormat depthAttachmentFormat; - VkFormat stencilAttachmentFormat; - VkSampleCountFlagBits rasterizationSamples; -} VkCommandBufferInheritanceRenderingInfo; -typedef VkCommandBufferInheritanceRenderingInfo VkCommandBufferInheritanceRenderingInfoKHR; + uint32_t attachment; + VkImageLayout layout; +} VkAttachmentReference;
-typedef struct VkCommandBufferSubmitInfo +typedef struct VkAttachmentReference2 { VkStructureType sType; const void *pNext; - VkCommandBuffer commandBuffer; - uint32_t deviceMask; -} VkCommandBufferSubmitInfo; -typedef VkCommandBufferSubmitInfo VkCommandBufferSubmitInfoKHR; + uint32_t attachment; + VkImageLayout layout; + VkImageAspectFlags aspectMask; +} VkAttachmentReference2; +typedef VkAttachmentReference2 VkAttachmentReference2KHR;
-typedef struct VkCommandPoolCreateInfo +typedef union VkClearValue { - VkStructureType sType; - const void *pNext; - VkCommandPoolCreateFlags flags; - uint32_t queueFamilyIndex; -} VkCommandPoolCreateInfo; + VkClearColorValue color; + VkClearDepthStencilValue depthStencil; +} VkClearValue;
-typedef struct VkComponentMapping +typedef union VkClusterAccelerationStructureOpInputNV { - VkComponentSwizzle r; - VkComponentSwizzle g; - VkComponentSwizzle b; - VkComponentSwizzle a; -} VkComponentMapping; + VkClusterAccelerationStructureClustersBottomLevelInputNV *pClustersBottomLevel; + VkClusterAccelerationStructureTriangleClusterInputNV *pTriangleClusters; + VkClusterAccelerationStructureMoveObjectsInputNV *pMoveObjects; +} VkClusterAccelerationStructureOpInputNV;
-typedef struct VkComputePipelineIndirectBufferInfoNV +typedef struct VkCoarseSampleLocationNV { - VkStructureType sType; - const void *pNext; - VkDeviceAddress WINE_VK_ALIGN(8) deviceAddress; - VkDeviceSize WINE_VK_ALIGN(8) size; - VkDeviceAddress WINE_VK_ALIGN(8) pipelineDeviceAddressCaptureReplay; -} VkComputePipelineIndirectBufferInfoNV; + uint32_t pixelX; + uint32_t pixelY; + uint32_t sample; +} VkCoarseSampleLocationNV;
-typedef struct VkConditionalRenderingBeginInfoEXT +typedef struct VkDescriptorAddressInfoEXT { VkStructureType sType; - const void *pNext; + void *pNext; + VkDeviceAddress WINE_VK_ALIGN(8) address; + VkDeviceSize WINE_VK_ALIGN(8) range; + VkFormat format; +} VkDescriptorAddressInfoEXT; + +typedef struct VkDescriptorBufferInfo +{ VkBuffer WINE_VK_ALIGN(8) buffer; VkDeviceSize WINE_VK_ALIGN(8) offset; - VkConditionalRenderingFlagsEXT flags; -} VkConditionalRenderingBeginInfoEXT; + VkDeviceSize WINE_VK_ALIGN(8) range; +} VkDescriptorBufferInfo;
-typedef struct VkConformanceVersion +typedef struct VkDescriptorImageInfo { - uint8_t major; - uint8_t minor; - uint8_t subminor; - uint8_t patch; -} VkConformanceVersion; -typedef VkConformanceVersion VkConformanceVersionKHR; + VkSampler WINE_VK_ALIGN(8) sampler; + VkImageView WINE_VK_ALIGN(8) imageView; + VkImageLayout imageLayout; +} VkDescriptorImageInfo;
-typedef struct VkCooperativeMatrixFlexibleDimensionsPropertiesNV +typedef struct VkGeometryNV { VkStructureType sType; - void *pNext; - uint32_t MGranularity; - uint32_t NGranularity; - uint32_t KGranularity; - VkComponentTypeKHR AType; - VkComponentTypeKHR BType; - VkComponentTypeKHR CType; - VkComponentTypeKHR ResultType; - VkBool32 saturatingAccumulation; - VkScopeKHR scope; - uint32_t workgroupInvocations; -} VkCooperativeMatrixFlexibleDimensionsPropertiesNV; + const void *pNext; + VkGeometryTypeKHR geometryType; + VkGeometryDataNV WINE_VK_ALIGN(8) geometry; + VkGeometryFlagsKHR flags; +} VkGeometryNV;
-typedef struct VkCooperativeMatrixPropertiesKHR +typedef struct VkImageCreateInfo { VkStructureType sType; - void *pNext; - uint32_t MSize; - uint32_t NSize; - uint32_t KSize; - VkComponentTypeKHR AType; - VkComponentTypeKHR BType; - VkComponentTypeKHR CType; - VkComponentTypeKHR ResultType; - VkBool32 saturatingAccumulation; - VkScopeKHR scope; -} VkCooperativeMatrixPropertiesKHR; + const void *pNext; + VkImageCreateFlags flags; + VkImageType imageType; + VkFormat format; + VkExtent3D extent; + uint32_t mipLevels; + uint32_t arrayLayers; + VkSampleCountFlagBits samples; + VkImageTiling tiling; + VkImageUsageFlags usage; + VkSharingMode sharingMode; + uint32_t queueFamilyIndexCount; + const uint32_t *pQueueFamilyIndices; + VkImageLayout initialLayout; +} VkImageCreateInfo;
-typedef struct VkCooperativeMatrixPropertiesNV +typedef struct VkImageSubresourceLayers { - VkStructureType sType; - void *pNext; - uint32_t MSize; - uint32_t NSize; - uint32_t KSize; - VkComponentTypeNV AType; - VkComponentTypeNV BType; - VkComponentTypeNV CType; - VkComponentTypeNV DType; - VkScopeNV scope; -} VkCooperativeMatrixPropertiesNV; + VkImageAspectFlags aspectMask; + uint32_t mipLevel; + uint32_t baseArrayLayer; + uint32_t layerCount; +} VkImageSubresourceLayers;
-typedef struct VkCooperativeVectorPropertiesNV +typedef struct VkImageSubresourceRange { - VkStructureType sType; - void *pNext; - VkComponentTypeKHR inputType; - VkComponentTypeKHR inputInterpretation; - VkComponentTypeKHR matrixInterpretation; - VkComponentTypeKHR biasInterpretation; - VkComponentTypeKHR resultType; - VkBool32 transpose; -} VkCooperativeVectorPropertiesNV; + VkImageAspectFlags aspectMask; + uint32_t baseMipLevel; + uint32_t levelCount; + uint32_t baseArrayLayer; + uint32_t layerCount; +} VkImageSubresourceRange;
-typedef struct VkCopyAccelerationStructureInfoKHR +typedef union VkIndirectCommandsTokenDataEXT { - VkStructureType sType; - const void *pNext; - VkAccelerationStructureKHR WINE_VK_ALIGN(8) src; - VkAccelerationStructureKHR WINE_VK_ALIGN(8) dst; - VkCopyAccelerationStructureModeKHR mode; -} VkCopyAccelerationStructureInfoKHR; + const VkIndirectCommandsPushConstantTokenEXT *pPushConstant; + const VkIndirectCommandsVertexBufferTokenEXT *pVertexBuffer; + const VkIndirectCommandsIndexBufferTokenEXT *pIndexBuffer; + const VkIndirectCommandsExecutionSetTokenEXT *pExecutionSet; +} VkIndirectCommandsTokenDataEXT;
-typedef struct VkCopyBufferInfo2 +typedef struct VkIndirectExecutionSetPipelineInfoEXT { VkStructureType sType; const void *pNext; - VkBuffer WINE_VK_ALIGN(8) srcBuffer; - VkBuffer WINE_VK_ALIGN(8) dstBuffer; - uint32_t regionCount; - const VkBufferCopy2 *pRegions; -} VkCopyBufferInfo2; -typedef VkCopyBufferInfo2 VkCopyBufferInfo2KHR; + VkPipeline WINE_VK_ALIGN(8) initialPipeline; + uint32_t maxPipelineCount; +} VkIndirectExecutionSetPipelineInfoEXT;
-typedef struct VkCopyCommandTransformInfoQCOM +typedef struct VkIndirectExecutionSetShaderInfoEXT { VkStructureType sType; const void *pNext; - VkSurfaceTransformFlagBitsKHR transform; -} VkCopyCommandTransformInfoQCOM; + uint32_t shaderCount; + const VkShaderEXT *pInitialShaders; + const VkIndirectExecutionSetShaderLayoutInfoEXT *pSetLayoutInfos; + uint32_t maxShaderCount; + uint32_t pushConstantRangeCount; + const VkPushConstantRange *pPushConstantRanges; +} VkIndirectExecutionSetShaderInfoEXT;
-typedef struct VkCopyDescriptorSet +typedef struct VkMemoryHeap { - VkStructureType sType; - const void *pNext; - VkDescriptorSet WINE_VK_ALIGN(8) srcSet; - uint32_t srcBinding; - uint32_t srcArrayElement; - VkDescriptorSet WINE_VK_ALIGN(8) dstSet; - uint32_t dstBinding; - uint32_t dstArrayElement; - uint32_t descriptorCount; -} VkCopyDescriptorSet; + VkDeviceSize WINE_VK_ALIGN(8) size; + VkMemoryHeapFlags flags; +} VkMemoryHeap;
-typedef struct VkCopyMemoryIndirectCommandNV +typedef struct VkMemoryType { - VkDeviceAddress WINE_VK_ALIGN(8) srcAddress; - VkDeviceAddress WINE_VK_ALIGN(8) dstAddress; - VkDeviceSize WINE_VK_ALIGN(8) size; -} VkCopyMemoryIndirectCommandNV; + VkMemoryPropertyFlags propertyFlags; + uint32_t heapIndex; +} VkMemoryType;
-typedef struct VkCopyMicromapInfoEXT +typedef struct VkPhysicalDeviceProperties { - VkStructureType sType; - const void *pNext; - VkMicromapEXT WINE_VK_ALIGN(8) src; - VkMicromapEXT WINE_VK_ALIGN(8) dst; - VkCopyMicromapModeEXT mode; -} VkCopyMicromapInfoEXT; + uint32_t apiVersion; + uint32_t driverVersion; + uint32_t vendorID; + uint32_t deviceID; + VkPhysicalDeviceType deviceType; + char deviceName[VK_MAX_PHYSICAL_DEVICE_NAME_SIZE]; + uint8_t pipelineCacheUUID[VK_UUID_SIZE]; + VkPhysicalDeviceLimits WINE_VK_ALIGN(8) limits; + VkPhysicalDeviceSparseProperties sparseProperties; +} VkPhysicalDeviceProperties;
-typedef struct VkCuFunctionCreateInfoNVX +typedef struct VkPipelineBinaryDataKHR { - VkStructureType sType; - const void *pNext; - VkCuModuleNVX WINE_VK_ALIGN(8) module; - const char *pName; -} VkCuFunctionCreateInfoNVX; + size_t dataSize; + void *pData; +} VkPipelineBinaryDataKHR;
-typedef struct VkCuLaunchInfoNVX +typedef struct VkPipelineBinaryKeyKHR { VkStructureType sType; - const void *pNext; - VkCuFunctionNVX WINE_VK_ALIGN(8) function; - uint32_t gridDimX; - uint32_t gridDimY; - uint32_t gridDimZ; - uint32_t blockDimX; - uint32_t blockDimY; - uint32_t blockDimZ; - uint32_t sharedMemBytes; - size_t paramCount; - const void * const *pParams; - size_t extraCount; - const void * const *pExtras; -} VkCuLaunchInfoNVX; + void *pNext; + uint32_t keySize; + uint8_t key[VK_MAX_PIPELINE_BINARY_KEY_SIZE_KHR]; +} VkPipelineBinaryKeyKHR;
-typedef struct VkCuModuleCreateInfoNVX +typedef struct VkPipelineColorBlendAttachmentState { - VkStructureType sType; - const void *pNext; - size_t dataSize; - const void *pData; -} VkCuModuleCreateInfoNVX; + VkBool32 blendEnable; + VkBlendFactor srcColorBlendFactor; + VkBlendFactor dstColorBlendFactor; + VkBlendOp colorBlendOp; + VkBlendFactor srcAlphaBlendFactor; + VkBlendFactor dstAlphaBlendFactor; + VkBlendOp alphaBlendOp; + VkColorComponentFlags colorWriteMask; +} VkPipelineColorBlendAttachmentState;
-typedef struct VkCuModuleTexturingModeCreateInfoNVX +typedef struct VkPipelineShaderStageCreateInfo { VkStructureType sType; const void *pNext; - VkBool32 use64bitTexturing; -} VkCuModuleTexturingModeCreateInfoNVX; + VkPipelineShaderStageCreateFlags flags; + VkShaderStageFlagBits stage; + VkShaderModule WINE_VK_ALIGN(8) module; + const char *pName; + const VkSpecializationInfo *pSpecializationInfo; +} VkPipelineShaderStageCreateInfo;
-typedef struct VkDataGraphPipelineCompilerControlCreateInfoARM +typedef struct VkPipelineTessellationStateCreateInfo { VkStructureType sType; const void *pNext; - const char *pVendorOptions; -} VkDataGraphPipelineCompilerControlCreateInfoARM; + VkPipelineTessellationStateCreateFlags flags; + uint32_t patchControlPoints; +} VkPipelineTessellationStateCreateInfo;
-typedef struct VkDataGraphPipelineConstantARM +typedef struct VkPipelineVertexInputStateCreateInfo { VkStructureType sType; const void *pNext; - uint32_t id; - const void *pConstantData; -} VkDataGraphPipelineConstantARM; + VkPipelineVertexInputStateCreateFlags flags; + uint32_t vertexBindingDescriptionCount; + const VkVertexInputBindingDescription *pVertexBindingDescriptions; + uint32_t vertexAttributeDescriptionCount; + const VkVertexInputAttributeDescription *pVertexAttributeDescriptions; +} VkPipelineVertexInputStateCreateInfo;
-typedef struct VkDataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM +typedef struct VkRect2D { - VkStructureType sType; - const void *pNext; - uint32_t dimension; - uint32_t zeroCount; - uint32_t groupSize; -} VkDataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM; + VkOffset2D offset; + VkExtent2D extent; +} VkRect2D;
-typedef struct VkDataGraphPipelineDispatchInfoARM +typedef struct VkRectLayerKHR { - VkStructureType sType; - void *pNext; - VkDataGraphPipelineDispatchFlagsARM WINE_VK_ALIGN(8) flags; -} VkDataGraphPipelineDispatchInfoARM; + VkOffset2D offset; + VkExtent2D extent; + uint32_t layer; +} VkRectLayerKHR;
-typedef struct VkDataGraphPipelineIdentifierCreateInfoARM +typedef struct VkSampleLocationsInfoEXT { VkStructureType sType; const void *pNext; - uint32_t identifierSize; - const uint8_t *pIdentifier; -} VkDataGraphPipelineIdentifierCreateInfoARM; + VkSampleCountFlagBits sampleLocationsPerPixel; + VkExtent2D sampleLocationGridSize; + uint32_t sampleLocationsCount; + const VkSampleLocationEXT *pSampleLocations; +} VkSampleLocationsInfoEXT;
-typedef struct VkDataGraphPipelineInfoARM +typedef struct VkSparseImageFormatProperties { - VkStructureType sType; - const void *pNext; - VkPipeline WINE_VK_ALIGN(8) dataGraphPipeline; -} VkDataGraphPipelineInfoARM; + VkImageAspectFlags aspectMask; + VkExtent3D imageGranularity; + VkSparseImageFormatFlags flags; +} VkSparseImageFormatProperties;
-typedef struct VkDataGraphPipelinePropertyQueryResultARM +typedef struct VkSparseImageMemoryBind { - VkStructureType sType; - const void *pNext; - VkDataGraphPipelinePropertyARM property; - VkBool32 isText; - size_t dataSize; - void *pData; -} VkDataGraphPipelinePropertyQueryResultARM; + VkImageSubresource subresource; + VkOffset3D offset; + VkExtent3D extent; + VkDeviceMemory WINE_VK_ALIGN(8) memory; + VkDeviceSize WINE_VK_ALIGN(8) memoryOffset; + VkSparseMemoryBindFlags flags; +} VkSparseImageMemoryBind;
-typedef struct VkDataGraphPipelineResourceInfoARM +typedef struct VkSparseMemoryBind { - VkStructureType sType; - const void *pNext; - uint32_t descriptorSet; - uint32_t binding; - uint32_t arrayElement; -} VkDataGraphPipelineResourceInfoARM; + VkDeviceSize WINE_VK_ALIGN(8) resourceOffset; + VkDeviceSize WINE_VK_ALIGN(8) size; + VkDeviceMemory WINE_VK_ALIGN(8) memory; + VkDeviceSize WINE_VK_ALIGN(8) memoryOffset; + VkSparseMemoryBindFlags flags; +} VkSparseMemoryBind;
-typedef struct VkDataGraphPipelineSessionBindPointRequirementARM +typedef struct VkStencilOpState { - VkStructureType sType; - const void *pNext; - VkDataGraphPipelineSessionBindPointARM bindPoint; - VkDataGraphPipelineSessionBindPointTypeARM bindPointType; - uint32_t numObjects; -} VkDataGraphPipelineSessionBindPointRequirementARM; + VkStencilOp failOp; + VkStencilOp passOp; + VkStencilOp depthFailOp; + VkCompareOp compareOp; + uint32_t compareMask; + uint32_t writeMask; + uint32_t reference; +} VkStencilOpState;
-typedef struct VkDataGraphPipelineSessionBindPointRequirementsInfoARM +typedef struct VkTensorDescriptionARM { VkStructureType sType; const void *pNext; - VkDataGraphPipelineSessionARM WINE_VK_ALIGN(8) session; -} VkDataGraphPipelineSessionBindPointRequirementsInfoARM; - -typedef struct VkDataGraphPipelineSessionCreateInfoARM -{ - VkStructureType sType; - const void *pNext; - VkDataGraphPipelineSessionCreateFlagsARM WINE_VK_ALIGN(8) flags; - VkPipeline WINE_VK_ALIGN(8) dataGraphPipeline; -} VkDataGraphPipelineSessionCreateInfoARM; - -typedef struct VkDataGraphPipelineSessionMemoryRequirementsInfoARM -{ - VkStructureType sType; - const void *pNext; - VkDataGraphPipelineSessionARM WINE_VK_ALIGN(8) session; - VkDataGraphPipelineSessionBindPointARM bindPoint; - uint32_t objectIndex; -} VkDataGraphPipelineSessionMemoryRequirementsInfoARM; - -typedef struct VkDebugMarkerMarkerInfoEXT -{ - VkStructureType sType; - const void *pNext; - const char *pMarkerName; - float color[4]; -} VkDebugMarkerMarkerInfoEXT; - -typedef struct VkDebugMarkerObjectNameInfoEXT -{ - VkStructureType sType; - const void *pNext; - VkDebugReportObjectTypeEXT objectType; - uint64_t WINE_VK_ALIGN(8) object; - const char *pObjectName; -} VkDebugMarkerObjectNameInfoEXT; + VkTensorTilingARM tiling; + VkFormat format; + uint32_t dimensionCount; + const int64_t *pDimensions; + const int64_t *pStrides; + VkTensorUsageFlagsARM WINE_VK_ALIGN(8) usage; +} VkTensorDescriptionARM;
-typedef struct VkDebugMarkerObjectTagInfoEXT +typedef struct VkVideoPictureResourceInfoKHR { VkStructureType sType; const void *pNext; - VkDebugReportObjectTypeEXT objectType; - uint64_t WINE_VK_ALIGN(8) object; - uint64_t WINE_VK_ALIGN(8) tagName; - size_t tagSize; - const void *pTag; -} VkDebugMarkerObjectTagInfoEXT; + VkOffset2D codedOffset; + VkExtent2D codedExtent; + uint32_t baseArrayLayer; + VkImageView WINE_VK_ALIGN(8) imageViewBinding; +} VkVideoPictureResourceInfoKHR;
-typedef struct VkDebugReportCallbackCreateInfoEXT +typedef struct VkViewport { - VkStructureType sType; - const void *pNext; - VkDebugReportFlagsEXT flags; - PFN_vkDebugReportCallbackEXT pfnCallback; - void *pUserData; -} VkDebugReportCallbackCreateInfoEXT; + float x; + float y; + float width; + float height; + float minDepth; + float maxDepth; +} VkViewport;
-typedef struct VkDebugUtilsLabelEXT +typedef struct StdVideoAV1SequenceHeader { - VkStructureType sType; - const void *pNext; - const char *pLabelName; - float color[4]; -} VkDebugUtilsLabelEXT; + StdVideoAV1SequenceHeaderFlags flags; + StdVideoAV1Profile seq_profile; + uint8_t frame_width_bits_minus_1; + uint8_t frame_height_bits_minus_1; + uint16_t max_frame_width_minus_1; + uint16_t max_frame_height_minus_1; + uint8_t delta_frame_id_length_minus_2; + uint8_t additional_frame_id_length_minus_1; + uint8_t order_hint_bits_minus_1; + uint8_t seq_force_integer_mv; + uint8_t seq_force_screen_content_tools; + uint8_t reserved1[5]; + const StdVideoAV1ColorConfig *pColorConfig; + const StdVideoAV1TimingInfo *pTimingInfo; +} StdVideoAV1SequenceHeader;
-typedef struct VkDebugUtilsMessengerCreateInfoEXT +typedef struct StdVideoDecodeAV1PictureInfo { - VkStructureType sType; - const void *pNext; - VkDebugUtilsMessengerCreateFlagsEXT flags; - VkDebugUtilsMessageSeverityFlagsEXT messageSeverity; - VkDebugUtilsMessageTypeFlagsEXT messageType; - PFN_vkDebugUtilsMessengerCallbackEXT pfnUserCallback; - void *pUserData; -} VkDebugUtilsMessengerCreateInfoEXT; + StdVideoDecodeAV1PictureInfoFlags flags; + StdVideoAV1FrameType frame_type; + uint32_t current_frame_id; + uint8_t OrderHint; + uint8_t primary_ref_frame; + uint8_t refresh_frame_flags; + uint8_t reserved1; + StdVideoAV1InterpolationFilter interpolation_filter; + StdVideoAV1TxMode TxMode; + uint8_t delta_q_res; + uint8_t delta_lf_res; + uint8_t SkipModeFrame[STD_VIDEO_AV1_SKIP_MODE_FRAMES]; + uint8_t coded_denom; + uint8_t reserved2[3]; + uint8_t OrderHints[STD_VIDEO_AV1_NUM_REF_FRAMES]; + uint32_t expectedFrameId[STD_VIDEO_AV1_NUM_REF_FRAMES]; + const StdVideoAV1TileInfo *pTileInfo; + const StdVideoAV1Quantization *pQuantization; + const StdVideoAV1Segmentation *pSegmentation; + const StdVideoAV1LoopFilter *pLoopFilter; + const StdVideoAV1CDEF *pCDEF; + const StdVideoAV1LoopRestoration *pLoopRestoration; + const StdVideoAV1GlobalMotion *pGlobalMotion; + const StdVideoAV1FilmGrain *pFilmGrain; +} StdVideoDecodeAV1PictureInfo;
-typedef struct VkDebugUtilsObjectNameInfoEXT +typedef struct StdVideoDecodeAV1ReferenceInfo { - VkStructureType sType; - const void *pNext; - VkObjectType objectType; - uint64_t WINE_VK_ALIGN(8) objectHandle; - const char *pObjectName; -} VkDebugUtilsObjectNameInfoEXT; + StdVideoDecodeAV1ReferenceInfoFlags flags; + uint8_t frame_type; + uint8_t RefFrameSignBias; + uint8_t OrderHint; + uint8_t SavedOrderHints[STD_VIDEO_AV1_NUM_REF_FRAMES]; +} StdVideoDecodeAV1ReferenceInfo;
-typedef struct VkDebugUtilsObjectTagInfoEXT +typedef struct StdVideoDecodeH264PictureInfo { - VkStructureType sType; - const void *pNext; - VkObjectType objectType; - uint64_t WINE_VK_ALIGN(8) objectHandle; - uint64_t WINE_VK_ALIGN(8) tagName; - size_t tagSize; - const void *pTag; -} VkDebugUtilsObjectTagInfoEXT; + StdVideoDecodeH264PictureInfoFlags flags; + uint8_t seq_parameter_set_id; + uint8_t pic_parameter_set_id; + uint8_t reserved1; + uint8_t reserved2; + uint16_t frame_num; + uint16_t idr_pic_id; + int32_t PicOrderCnt[STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE]; +} StdVideoDecodeH264PictureInfo;
-typedef struct VkDecompressMemoryRegionNV +typedef struct StdVideoDecodeH264ReferenceInfo { - VkDeviceAddress WINE_VK_ALIGN(8) srcAddress; - VkDeviceAddress WINE_VK_ALIGN(8) dstAddress; - VkDeviceSize WINE_VK_ALIGN(8) compressedSize; - VkDeviceSize WINE_VK_ALIGN(8) decompressedSize; - VkMemoryDecompressionMethodFlagsNV WINE_VK_ALIGN(8) decompressionMethod; -} VkDecompressMemoryRegionNV; + StdVideoDecodeH264ReferenceInfoFlags flags; + uint16_t FrameNum; + uint16_t reserved; + int32_t PicOrderCnt[STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE]; +} StdVideoDecodeH264ReferenceInfo;
-typedef struct VkDedicatedAllocationBufferCreateInfoNV +typedef struct StdVideoDecodeH265PictureInfo { - VkStructureType sType; - const void *pNext; - VkBool32 dedicatedAllocation; -} VkDedicatedAllocationBufferCreateInfoNV; + StdVideoDecodeH265PictureInfoFlags flags; + uint8_t sps_video_parameter_set_id; + uint8_t pps_seq_parameter_set_id; + uint8_t pps_pic_parameter_set_id; + uint8_t NumDeltaPocsOfRefRpsIdx; + int32_t PicOrderCntVal; + uint16_t NumBitsForSTRefPicSetInSlice; + uint16_t reserved; + uint8_t RefPicSetStCurrBefore[STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE]; + uint8_t RefPicSetStCurrAfter[STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE]; + uint8_t RefPicSetLtCurr[STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE]; +} StdVideoDecodeH265PictureInfo;
-typedef struct VkDedicatedAllocationImageCreateInfoNV +typedef struct StdVideoDecodeH265ReferenceInfo { - VkStructureType sType; - const void *pNext; - VkBool32 dedicatedAllocation; -} VkDedicatedAllocationImageCreateInfoNV; + StdVideoDecodeH265ReferenceInfoFlags flags; + int32_t PicOrderCntVal; +} StdVideoDecodeH265ReferenceInfo;
-typedef struct VkDedicatedAllocationMemoryAllocateInfoNV +typedef struct StdVideoDecodeVP9PictureInfo { - VkStructureType sType; - const void *pNext; - VkImage WINE_VK_ALIGN(8) image; - VkBuffer WINE_VK_ALIGN(8) buffer; -} VkDedicatedAllocationMemoryAllocateInfoNV; + StdVideoDecodeVP9PictureInfoFlags flags; + StdVideoVP9Profile profile; + StdVideoVP9FrameType frame_type; + uint8_t frame_context_idx; + uint8_t reset_frame_context; + uint8_t refresh_frame_flags; + uint8_t ref_frame_sign_bias_mask; + StdVideoVP9InterpolationFilter interpolation_filter; + uint8_t base_q_idx; + int8_t delta_q_y_dc; + int8_t delta_q_uv_dc; + int8_t delta_q_uv_ac; + uint8_t tile_cols_log2; + uint8_t tile_rows_log2; + uint16_t reserved1[3]; + const StdVideoVP9ColorConfig *pColorConfig; + const StdVideoVP9LoopFilter *pLoopFilter; + const StdVideoVP9Segmentation *pSegmentation; +} StdVideoDecodeVP9PictureInfo;
-typedef struct VkDepthBiasInfoEXT +typedef struct StdVideoEncodeAV1DecoderModelInfo { - VkStructureType sType; - const void *pNext; - float depthBiasConstantFactor; - float depthBiasClamp; - float depthBiasSlopeFactor; -} VkDepthBiasInfoEXT; + uint8_t buffer_delay_length_minus_1; + uint8_t buffer_removal_time_length_minus_1; + uint8_t frame_presentation_time_length_minus_1; + uint8_t reserved1; + uint32_t num_units_in_decoding_tick; +} StdVideoEncodeAV1DecoderModelInfo;
-typedef struct VkDepthBiasRepresentationInfoEXT +typedef struct StdVideoEncodeAV1OperatingPointInfo { - VkStructureType sType; - const void *pNext; - VkDepthBiasRepresentationEXT depthBiasRepresentation; - VkBool32 depthBiasExact; -} VkDepthBiasRepresentationInfoEXT; + StdVideoEncodeAV1OperatingPointInfoFlags flags; + uint16_t operating_point_idc; + uint8_t seq_level_idx; + uint8_t seq_tier; + uint32_t decoder_buffer_delay; + uint32_t encoder_buffer_delay; + uint8_t initial_display_delay_minus_1; +} StdVideoEncodeAV1OperatingPointInfo;
-typedef struct VkDepthClampRangeEXT +typedef struct StdVideoEncodeAV1PictureInfo { - float minDepthClamp; - float maxDepthClamp; -} VkDepthClampRangeEXT; + StdVideoEncodeAV1PictureInfoFlags flags; + StdVideoAV1FrameType frame_type; + uint32_t frame_presentation_time; + uint32_t current_frame_id; + uint8_t order_hint; + uint8_t primary_ref_frame; + uint8_t refresh_frame_flags; + uint8_t coded_denom; + uint16_t render_width_minus_1; + uint16_t render_height_minus_1; + StdVideoAV1InterpolationFilter interpolation_filter; + StdVideoAV1TxMode TxMode; + uint8_t delta_q_res; + uint8_t delta_lf_res; + uint8_t ref_order_hint[STD_VIDEO_AV1_NUM_REF_FRAMES]; + int8_t ref_frame_idx[STD_VIDEO_AV1_REFS_PER_FRAME]; + uint8_t reserved1[3]; + uint32_t delta_frame_id_minus_1[STD_VIDEO_AV1_REFS_PER_FRAME]; + const StdVideoAV1TileInfo *pTileInfo; + const StdVideoAV1Quantization *pQuantization; + const StdVideoAV1Segmentation *pSegmentation; + const StdVideoAV1LoopFilter *pLoopFilter; + const StdVideoAV1CDEF *pCDEF; + const StdVideoAV1LoopRestoration *pLoopRestoration; + const StdVideoAV1GlobalMotion *pGlobalMotion; + const StdVideoEncodeAV1ExtensionHeader *pExtensionHeader; + const uint32_t *pBufferRemovalTimes; +} StdVideoEncodeAV1PictureInfo;
-typedef struct VkDescriptorAddressInfoEXT +typedef struct StdVideoEncodeAV1ReferenceInfo { - VkStructureType sType; - void *pNext; - VkDeviceAddress WINE_VK_ALIGN(8) address; - VkDeviceSize WINE_VK_ALIGN(8) range; - VkFormat format; -} VkDescriptorAddressInfoEXT; + StdVideoEncodeAV1ReferenceInfoFlags flags; + uint32_t RefFrameId; + StdVideoAV1FrameType frame_type; + uint8_t OrderHint; + uint8_t reserved1[3]; + const StdVideoEncodeAV1ExtensionHeader *pExtensionHeader; +} StdVideoEncodeAV1ReferenceInfo;
-typedef struct VkDescriptorBufferBindingInfoEXT +typedef struct StdVideoEncodeH264PictureInfo { - VkStructureType sType; - const void *pNext; - VkDeviceAddress WINE_VK_ALIGN(8) address; - VkBufferUsageFlags usage; -} VkDescriptorBufferBindingInfoEXT; + StdVideoEncodeH264PictureInfoFlags flags; + uint8_t seq_parameter_set_id; + uint8_t pic_parameter_set_id; + uint16_t idr_pic_id; + StdVideoH264PictureType primary_pic_type; + uint32_t frame_num; + int32_t PicOrderCnt; + uint8_t temporal_id; + uint8_t reserved1[3]; + const StdVideoEncodeH264ReferenceListsInfo *pRefLists; +} StdVideoEncodeH264PictureInfo;
-typedef struct VkDescriptorBufferBindingPushDescriptorBufferHandleEXT +typedef struct StdVideoEncodeH264ReferenceInfo { - VkStructureType sType; - const void *pNext; - VkBuffer WINE_VK_ALIGN(8) buffer; -} VkDescriptorBufferBindingPushDescriptorBufferHandleEXT; + StdVideoEncodeH264ReferenceInfoFlags flags; + StdVideoH264PictureType primary_pic_type; + uint32_t FrameNum; + int32_t PicOrderCnt; + uint16_t long_term_pic_num; + uint16_t long_term_frame_idx; + uint8_t temporal_id; +} StdVideoEncodeH264ReferenceInfo;
-typedef struct VkDescriptorBufferInfo +typedef struct StdVideoEncodeH265PictureInfo { - VkBuffer WINE_VK_ALIGN(8) buffer; - VkDeviceSize WINE_VK_ALIGN(8) offset; - VkDeviceSize WINE_VK_ALIGN(8) range; -} VkDescriptorBufferInfo; + StdVideoEncodeH265PictureInfoFlags flags; + StdVideoH265PictureType pic_type; + uint8_t sps_video_parameter_set_id; + uint8_t pps_seq_parameter_set_id; + uint8_t pps_pic_parameter_set_id; + uint8_t short_term_ref_pic_set_idx; + int32_t PicOrderCntVal; + uint8_t TemporalId; + uint8_t reserved1[7]; + const StdVideoEncodeH265ReferenceListsInfo *pRefLists; + const StdVideoH265ShortTermRefPicSet *pShortTermRefPicSet; + const StdVideoEncodeH265LongTermRefPics *pLongTermRefPics; +} StdVideoEncodeH265PictureInfo;
-typedef struct VkDescriptorGetTensorInfoARM +typedef struct StdVideoEncodeH265ReferenceInfo { - VkStructureType sType; - const void *pNext; - VkTensorViewARM WINE_VK_ALIGN(8) tensorView; -} VkDescriptorGetTensorInfoARM; + StdVideoEncodeH265ReferenceInfoFlags flags; + StdVideoH265PictureType pic_type; + int32_t PicOrderCntVal; + uint8_t TemporalId; +} StdVideoEncodeH265ReferenceInfo;
-typedef struct VkDescriptorImageInfo +typedef struct VkAccelerationStructureGeometryKHR { - VkSampler WINE_VK_ALIGN(8) sampler; - VkImageView WINE_VK_ALIGN(8) imageView; - VkImageLayout imageLayout; -} VkDescriptorImageInfo; + VkStructureType sType; + const void *pNext; + VkGeometryTypeKHR geometryType; + VkAccelerationStructureGeometryDataKHR WINE_VK_ALIGN(8) geometry; + VkGeometryFlagsKHR flags; +} VkAccelerationStructureGeometryKHR;
-typedef struct VkDescriptorPoolInlineUniformBlockCreateInfo +typedef struct VkAccelerationStructureInfoNV { VkStructureType sType; const void *pNext; - uint32_t maxInlineUniformBlockBindings; -} VkDescriptorPoolInlineUniformBlockCreateInfo; -typedef VkDescriptorPoolInlineUniformBlockCreateInfo VkDescriptorPoolInlineUniformBlockCreateInfoEXT; + VkAccelerationStructureTypeNV type; + VkBuildAccelerationStructureFlagsNV flags; + uint32_t instanceCount; + uint32_t geometryCount; + const VkGeometryNV *pGeometries; +} VkAccelerationStructureInfoNV;
-typedef struct VkDescriptorPoolSize +typedef union VkAccelerationStructureMotionInstanceDataNV { - VkDescriptorType type; - uint32_t descriptorCount; -} VkDescriptorPoolSize; + VkAccelerationStructureInstanceKHR WINE_VK_ALIGN(8) staticInstance; + VkAccelerationStructureMatrixMotionInstanceNV WINE_VK_ALIGN(8) matrixMotionInstance; + VkAccelerationStructureSRTMotionInstanceNV WINE_VK_ALIGN(8) srtMotionInstance; +} VkAccelerationStructureMotionInstanceDataNV;
-typedef struct VkDescriptorSetAllocateInfo +typedef struct VkAntiLagPresentationInfoAMD { VkStructureType sType; - const void *pNext; - VkDescriptorPool WINE_VK_ALIGN(8) descriptorPool; - uint32_t descriptorSetCount; - const VkDescriptorSetLayout *pSetLayouts; -} VkDescriptorSetAllocateInfo; + void *pNext; + VkAntiLagStageAMD stage; + uint64_t WINE_VK_ALIGN(8) frameIndex; +} VkAntiLagPresentationInfoAMD;
-typedef struct VkDescriptorSetBindingReferenceVALVE +typedef struct VkApplicationInfo { VkStructureType sType; const void *pNext; - VkDescriptorSetLayout WINE_VK_ALIGN(8) descriptorSetLayout; - uint32_t binding; -} VkDescriptorSetBindingReferenceVALVE; + const char *pApplicationName; + uint32_t applicationVersion; + const char *pEngineName; + uint32_t engineVersion; + uint32_t apiVersion; +} VkApplicationInfo;
-typedef struct VkDescriptorSetLayoutBinding +typedef struct VkAttachmentDescription { - uint32_t binding; - VkDescriptorType descriptorType; - uint32_t descriptorCount; - VkShaderStageFlags stageFlags; - const VkSampler *pImmutableSamplers; -} VkDescriptorSetLayoutBinding; + VkAttachmentDescriptionFlags flags; + VkFormat format; + VkSampleCountFlagBits samples; + VkAttachmentLoadOp loadOp; + VkAttachmentStoreOp storeOp; + VkAttachmentLoadOp stencilLoadOp; + VkAttachmentStoreOp stencilStoreOp; + VkImageLayout initialLayout; + VkImageLayout finalLayout; +} VkAttachmentDescription;
-typedef struct VkDescriptorSetLayoutBindingFlagsCreateInfo +typedef struct VkAttachmentDescription2 { VkStructureType sType; const void *pNext; - uint32_t bindingCount; - const VkDescriptorBindingFlags *pBindingFlags; -} VkDescriptorSetLayoutBindingFlagsCreateInfo; -typedef VkDescriptorSetLayoutBindingFlagsCreateInfo VkDescriptorSetLayoutBindingFlagsCreateInfoEXT; + VkAttachmentDescriptionFlags flags; + VkFormat format; + VkSampleCountFlagBits samples; + VkAttachmentLoadOp loadOp; + VkAttachmentStoreOp storeOp; + VkAttachmentLoadOp stencilLoadOp; + VkAttachmentStoreOp stencilStoreOp; + VkImageLayout initialLayout; + VkImageLayout finalLayout; +} VkAttachmentDescription2; +typedef VkAttachmentDescription2 VkAttachmentDescription2KHR;
-typedef struct VkDescriptorSetLayoutCreateInfo +typedef struct VkAttachmentSampleLocationsEXT { - VkStructureType sType; - const void *pNext; - VkDescriptorSetLayoutCreateFlags flags; - uint32_t bindingCount; - const VkDescriptorSetLayoutBinding *pBindings; -} VkDescriptorSetLayoutCreateInfo; + uint32_t attachmentIndex; + VkSampleLocationsInfoEXT sampleLocationsInfo; +} VkAttachmentSampleLocationsEXT;
-typedef struct VkDescriptorSetLayoutHostMappingInfoVALVE +typedef struct VkBufferCopy2 { VkStructureType sType; - void *pNext; - size_t descriptorOffset; - uint32_t descriptorSize; -} VkDescriptorSetLayoutHostMappingInfoVALVE; + const void *pNext; + VkDeviceSize WINE_VK_ALIGN(8) srcOffset; + VkDeviceSize WINE_VK_ALIGN(8) dstOffset; + VkDeviceSize WINE_VK_ALIGN(8) size; +} VkBufferCopy2; +typedef VkBufferCopy2 VkBufferCopy2KHR;
-typedef struct VkDescriptorSetLayoutSupport +typedef struct VkBufferCreateInfo { VkStructureType sType; - void *pNext; - VkBool32 supported; -} VkDescriptorSetLayoutSupport; -typedef VkDescriptorSetLayoutSupport VkDescriptorSetLayoutSupportKHR; + const void *pNext; + VkBufferCreateFlags flags; + VkDeviceSize WINE_VK_ALIGN(8) size; + VkBufferUsageFlags usage; + VkSharingMode sharingMode; + uint32_t queueFamilyIndexCount; + const uint32_t *pQueueFamilyIndices; +} VkBufferCreateInfo;
-typedef struct VkDescriptorSetVariableDescriptorCountAllocateInfo +typedef struct VkBufferImageCopy2 { VkStructureType sType; const void *pNext; - uint32_t descriptorSetCount; - const uint32_t *pDescriptorCounts; -} VkDescriptorSetVariableDescriptorCountAllocateInfo; -typedef VkDescriptorSetVariableDescriptorCountAllocateInfo VkDescriptorSetVariableDescriptorCountAllocateInfoEXT; + VkDeviceSize WINE_VK_ALIGN(8) bufferOffset; + uint32_t bufferRowLength; + uint32_t bufferImageHeight; + VkImageSubresourceLayers imageSubresource; + VkOffset3D imageOffset; + VkExtent3D imageExtent; +} VkBufferImageCopy2; +typedef VkBufferImageCopy2 VkBufferImageCopy2KHR;
-typedef struct VkDescriptorSetVariableDescriptorCountLayoutSupport +typedef struct VkBufferMemoryBarrier2 { VkStructureType sType; - void *pNext; - uint32_t maxVariableDescriptorCount; -} VkDescriptorSetVariableDescriptorCountLayoutSupport; -typedef VkDescriptorSetVariableDescriptorCountLayoutSupport VkDescriptorSetVariableDescriptorCountLayoutSupportEXT; - -typedef struct VkDescriptorUpdateTemplateEntry -{ - uint32_t dstBinding; - uint32_t dstArrayElement; - uint32_t descriptorCount; - VkDescriptorType descriptorType; - size_t offset; - size_t stride; -} VkDescriptorUpdateTemplateEntry; -typedef VkDescriptorUpdateTemplateEntry VkDescriptorUpdateTemplateEntryKHR; + const void *pNext; + VkPipelineStageFlags2 WINE_VK_ALIGN(8) srcStageMask; + VkAccessFlags2 WINE_VK_ALIGN(8) srcAccessMask; + VkPipelineStageFlags2 WINE_VK_ALIGN(8) dstStageMask; + VkAccessFlags2 WINE_VK_ALIGN(8) dstAccessMask; + uint32_t srcQueueFamilyIndex; + uint32_t dstQueueFamilyIndex; + VkBuffer WINE_VK_ALIGN(8) buffer; + VkDeviceSize WINE_VK_ALIGN(8) offset; + VkDeviceSize WINE_VK_ALIGN(8) size; +} VkBufferMemoryBarrier2; +typedef VkBufferMemoryBarrier2 VkBufferMemoryBarrier2KHR;
-typedef struct VkDeviceAddressBindingCallbackDataEXT +typedef struct VkClusterAccelerationStructureGeometryIndexAndGeometryFlagsNV +{ + uint32_t geometryIndex:24; + uint32_t reserved:5; + uint32_t geometryFlags:3; +} VkClusterAccelerationStructureGeometryIndexAndGeometryFlagsNV; + +typedef struct VkClusterAccelerationStructureInputInfoNV { VkStructureType sType; void *pNext; - VkDeviceAddressBindingFlagsEXT flags; - VkDeviceAddress WINE_VK_ALIGN(8) baseAddress; - VkDeviceSize WINE_VK_ALIGN(8) size; - VkDeviceAddressBindingTypeEXT bindingType; -} VkDeviceAddressBindingCallbackDataEXT; + uint32_t maxAccelerationStructureCount; + VkBuildAccelerationStructureFlagsKHR flags; + VkClusterAccelerationStructureOpTypeNV opType; + VkClusterAccelerationStructureOpModeNV opMode; + VkClusterAccelerationStructureOpInputNV opInput; +} VkClusterAccelerationStructureInputInfoNV;
-typedef struct VkDeviceBufferMemoryRequirements +typedef struct VkCoarseSampleOrderCustomNV { - VkStructureType sType; - const void *pNext; - const VkBufferCreateInfo *pCreateInfo; -} VkDeviceBufferMemoryRequirements; -typedef VkDeviceBufferMemoryRequirements VkDeviceBufferMemoryRequirementsKHR; + VkShadingRatePaletteEntryNV shadingRate; + uint32_t sampleCount; + uint32_t sampleLocationCount; + const VkCoarseSampleLocationNV *pSampleLocations; +} VkCoarseSampleOrderCustomNV;
-typedef struct VkDeviceDiagnosticsConfigCreateInfoNV +typedef struct VkCommandBufferInheritanceInfo { VkStructureType sType; const void *pNext; - VkDeviceDiagnosticsConfigFlagsNV flags; -} VkDeviceDiagnosticsConfigCreateInfoNV; - -typedef struct VkDeviceFaultAddressInfoEXT -{ - VkDeviceFaultAddressTypeEXT addressType; - VkDeviceAddress WINE_VK_ALIGN(8) reportedAddress; - VkDeviceSize WINE_VK_ALIGN(8) addressPrecision; -} VkDeviceFaultAddressInfoEXT; + VkRenderPass WINE_VK_ALIGN(8) renderPass; + uint32_t subpass; + VkFramebuffer WINE_VK_ALIGN(8) framebuffer; + VkBool32 occlusionQueryEnable; + VkQueryControlFlags queryFlags; + VkQueryPipelineStatisticFlags pipelineStatistics; +} VkCommandBufferInheritanceInfo;
-typedef struct VkDeviceFaultCountsEXT +typedef struct VkCommandBufferSubmitInfo { VkStructureType sType; - void *pNext; - uint32_t addressInfoCount; - uint32_t vendorInfoCount; - VkDeviceSize WINE_VK_ALIGN(8) vendorBinarySize; -} VkDeviceFaultCountsEXT; + const void *pNext; + VkCommandBuffer commandBuffer; + uint32_t deviceMask; +} VkCommandBufferSubmitInfo; +typedef VkCommandBufferSubmitInfo VkCommandBufferSubmitInfoKHR;
-typedef struct VkDeviceFaultVendorBinaryHeaderVersionOneEXT +typedef struct VkComponentMapping { - uint32_t headerSize; - VkDeviceFaultVendorBinaryHeaderVersionEXT headerVersion; - uint32_t vendorID; - uint32_t deviceID; - uint32_t driverVersion; - uint8_t pipelineCacheUUID[VK_UUID_SIZE]; - uint32_t applicationNameOffset; - uint32_t applicationVersion; - uint32_t engineNameOffset; - uint32_t engineVersion; - uint32_t apiVersion; -} VkDeviceFaultVendorBinaryHeaderVersionOneEXT; + VkComponentSwizzle r; + VkComponentSwizzle g; + VkComponentSwizzle b; + VkComponentSwizzle a; +} VkComponentMapping;
-typedef struct VkDeviceFaultVendorInfoEXT +typedef struct VkConformanceVersion { - char description[VK_MAX_DESCRIPTION_SIZE]; - uint64_t WINE_VK_ALIGN(8) vendorFaultCode; - uint64_t WINE_VK_ALIGN(8) vendorFaultData; -} VkDeviceFaultVendorInfoEXT; + uint8_t major; + uint8_t minor; + uint8_t subminor; + uint8_t patch; +} VkConformanceVersion; +typedef VkConformanceVersion VkConformanceVersionKHR;
-typedef struct VkDeviceGroupBindSparseInfo +typedef struct VkDataGraphPipelineConstantARM { VkStructureType sType; const void *pNext; - uint32_t resourceDeviceIndex; - uint32_t memoryDeviceIndex; -} VkDeviceGroupBindSparseInfo; -typedef VkDeviceGroupBindSparseInfo VkDeviceGroupBindSparseInfoKHR; + uint32_t id; + const void *pConstantData; +} VkDataGraphPipelineConstantARM;
-typedef struct VkDeviceGroupCommandBufferBeginInfo +typedef struct VkDataGraphPipelineResourceInfoARM { VkStructureType sType; const void *pNext; - uint32_t deviceMask; -} VkDeviceGroupCommandBufferBeginInfo; -typedef VkDeviceGroupCommandBufferBeginInfo VkDeviceGroupCommandBufferBeginInfoKHR; + uint32_t descriptorSet; + uint32_t binding; + uint32_t arrayElement; +} VkDataGraphPipelineResourceInfoARM;
-typedef struct VkDeviceGroupDeviceCreateInfo +typedef struct VkDebugUtilsLabelEXT { VkStructureType sType; const void *pNext; - uint32_t physicalDeviceCount; - const VkPhysicalDevice *pPhysicalDevices; -} VkDeviceGroupDeviceCreateInfo; -typedef VkDeviceGroupDeviceCreateInfo VkDeviceGroupDeviceCreateInfoKHR; + const char *pLabelName; + float color[4]; +} VkDebugUtilsLabelEXT;
-typedef struct VkDeviceGroupPresentCapabilitiesKHR +typedef struct VkDebugUtilsObjectNameInfoEXT { VkStructureType sType; - void *pNext; - uint32_t presentMask[VK_MAX_DEVICE_GROUP_SIZE]; - VkDeviceGroupPresentModeFlagsKHR modes; -} VkDeviceGroupPresentCapabilitiesKHR; + const void *pNext; + VkObjectType objectType; + uint64_t WINE_VK_ALIGN(8) objectHandle; + const char *pObjectName; +} VkDebugUtilsObjectNameInfoEXT;
-typedef struct VkDeviceGroupPresentInfoKHR +typedef struct VkDepthClampRangeEXT { - VkStructureType sType; - const void *pNext; - uint32_t swapchainCount; - const uint32_t *pDeviceMasks; - VkDeviceGroupPresentModeFlagBitsKHR mode; -} VkDeviceGroupPresentInfoKHR; + float minDepthClamp; + float maxDepthClamp; +} VkDepthClampRangeEXT;
-typedef struct VkDeviceGroupSubmitInfo +typedef union VkDescriptorDataEXT { - VkStructureType sType; - const void *pNext; - uint32_t waitSemaphoreCount; - const uint32_t *pWaitSemaphoreDeviceIndices; - uint32_t commandBufferCount; - const uint32_t *pCommandBufferDeviceMasks; - uint32_t signalSemaphoreCount; - const uint32_t *pSignalSemaphoreDeviceIndices; -} VkDeviceGroupSubmitInfo; -typedef VkDeviceGroupSubmitInfo VkDeviceGroupSubmitInfoKHR; + const VkSampler *pSampler; + const VkDescriptorImageInfo *pCombinedImageSampler; + const VkDescriptorImageInfo *pInputAttachmentImage; + const VkDescriptorImageInfo *pSampledImage; + const VkDescriptorImageInfo *pStorageImage; + const VkDescriptorAddressInfoEXT *pUniformTexelBuffer; + const VkDescriptorAddressInfoEXT *pStorageTexelBuffer; + const VkDescriptorAddressInfoEXT *pUniformBuffer; + const VkDescriptorAddressInfoEXT *pStorageBuffer; + VkDeviceAddress WINE_VK_ALIGN(8) accelerationStructure; +} VkDescriptorDataEXT;
-typedef struct VkDeviceGroupSwapchainCreateInfoKHR +typedef struct VkDescriptorPoolSize { - VkStructureType sType; - const void *pNext; - VkDeviceGroupPresentModeFlagsKHR modes; -} VkDeviceGroupSwapchainCreateInfoKHR; + VkDescriptorType type; + uint32_t descriptorCount; +} VkDescriptorPoolSize;
-typedef struct VkDeviceMemoryOpaqueCaptureAddressInfo +typedef struct VkDescriptorSetLayoutBinding { - VkStructureType sType; - const void *pNext; - VkDeviceMemory WINE_VK_ALIGN(8) memory; -} VkDeviceMemoryOpaqueCaptureAddressInfo; -typedef VkDeviceMemoryOpaqueCaptureAddressInfo VkDeviceMemoryOpaqueCaptureAddressInfoKHR; + uint32_t binding; + VkDescriptorType descriptorType; + uint32_t descriptorCount; + VkShaderStageFlags stageFlags; + const VkSampler *pImmutableSamplers; +} VkDescriptorSetLayoutBinding;
-typedef struct VkDeviceMemoryOverallocationCreateInfoAMD +typedef struct VkDescriptorUpdateTemplateEntry { - VkStructureType sType; - const void *pNext; - VkMemoryOverallocationBehaviorAMD overallocationBehavior; -} VkDeviceMemoryOverallocationCreateInfoAMD; + uint32_t dstBinding; + uint32_t dstArrayElement; + uint32_t descriptorCount; + VkDescriptorType descriptorType; + size_t offset; + size_t stride; +} VkDescriptorUpdateTemplateEntry; +typedef VkDescriptorUpdateTemplateEntry VkDescriptorUpdateTemplateEntryKHR;
-typedef union VkDeviceOrHostAddressConstKHR +typedef struct VkDeviceFaultAddressInfoEXT { - VkDeviceAddress WINE_VK_ALIGN(8) deviceAddress; - const void *hostAddress; -} VkDeviceOrHostAddressConstKHR; + VkDeviceFaultAddressTypeEXT addressType; + VkDeviceAddress WINE_VK_ALIGN(8) reportedAddress; + VkDeviceSize WINE_VK_ALIGN(8) addressPrecision; +} VkDeviceFaultAddressInfoEXT; + +typedef struct VkDeviceFaultVendorInfoEXT +{ + char description[VK_MAX_DESCRIPTION_SIZE]; + uint64_t WINE_VK_ALIGN(8) vendorFaultCode; + uint64_t WINE_VK_ALIGN(8) vendorFaultData; +} VkDeviceFaultVendorInfoEXT;
typedef union VkDeviceOrHostAddressKHR { @@ -8961,21 +9226,6 @@ typedef union VkDeviceOrHostAddressKHR void *hostAddress; } VkDeviceOrHostAddressKHR;
-typedef struct VkDevicePipelineBinaryInternalCacheControlKHR -{ - VkStructureType sType; - const void *pNext; - VkBool32 disableInternalCache; -} VkDevicePipelineBinaryInternalCacheControlKHR; - -typedef struct VkDevicePrivateDataCreateInfo -{ - VkStructureType sType; - const void *pNext; - uint32_t privateDataSlotRequestCount; -} VkDevicePrivateDataCreateInfo; -typedef VkDevicePrivateDataCreateInfo VkDevicePrivateDataCreateInfoEXT; - typedef struct VkDeviceQueueCreateInfo { VkStructureType sType; @@ -8986,4472 +9236,4621 @@ typedef struct VkDeviceQueueCreateInfo const float *pQueuePriorities; } VkDeviceQueueCreateInfo;
-typedef struct VkDeviceQueueGlobalPriorityCreateInfo +typedef struct VkExtensionProperties { - VkStructureType sType; - const void *pNext; - VkQueueGlobalPriority globalPriority; -} VkDeviceQueueGlobalPriorityCreateInfo; -typedef VkDeviceQueueGlobalPriorityCreateInfo VkDeviceQueueGlobalPriorityCreateInfoKHR; -typedef VkDeviceQueueGlobalPriorityCreateInfo VkDeviceQueueGlobalPriorityCreateInfoEXT; - -typedef struct VkDeviceQueueInfo2 -{ - VkStructureType sType; - const void *pNext; - VkDeviceQueueCreateFlags flags; - uint32_t queueFamilyIndex; - uint32_t queueIndex; -} VkDeviceQueueInfo2; + char extensionName[VK_MAX_EXTENSION_NAME_SIZE]; + uint32_t specVersion; +} VkExtensionProperties;
-typedef struct VkDeviceQueueShaderCoreControlCreateInfoARM +typedef struct VkExternalMemoryProperties { - VkStructureType sType; - void *pNext; - uint32_t shaderCoreCount; -} VkDeviceQueueShaderCoreControlCreateInfoARM; + VkExternalMemoryFeatureFlags externalMemoryFeatures; + VkExternalMemoryHandleTypeFlags exportFromImportedHandleTypes; + VkExternalMemoryHandleTypeFlags compatibleHandleTypes; +} VkExternalMemoryProperties; +typedef VkExternalMemoryProperties VkExternalMemoryPropertiesKHR;
-typedef struct VkDispatchIndirectCommand +typedef struct VkFormatProperties { - uint32_t x; - uint32_t y; - uint32_t z; -} VkDispatchIndirectCommand; + VkFormatFeatureFlags linearTilingFeatures; + VkFormatFeatureFlags optimalTilingFeatures; + VkFormatFeatureFlags bufferFeatures; +} VkFormatProperties;
-typedef struct VkDispatchTileInfoQCOM +typedef struct VkFramebufferAttachmentImageInfo { VkStructureType sType; const void *pNext; -} VkDispatchTileInfoQCOM; + VkImageCreateFlags flags; + VkImageUsageFlags usage; + uint32_t width; + uint32_t height; + uint32_t layerCount; + uint32_t viewFormatCount; + const VkFormat *pViewFormats; +} VkFramebufferAttachmentImageInfo; +typedef VkFramebufferAttachmentImageInfo VkFramebufferAttachmentImageInfoKHR;
-typedef struct VkDrawIndexedIndirectCommand +typedef struct VkGraphicsShaderGroupCreateInfoNV { - uint32_t indexCount; - uint32_t instanceCount; - uint32_t firstIndex; - int32_t vertexOffset; - uint32_t firstInstance; -} VkDrawIndexedIndirectCommand; + VkStructureType sType; + const void *pNext; + uint32_t stageCount; + const VkPipelineShaderStageCreateInfo *pStages; + const VkPipelineVertexInputStateCreateInfo *pVertexInputState; + const VkPipelineTessellationStateCreateInfo *pTessellationState; +} VkGraphicsShaderGroupCreateInfoNV;
-typedef struct VkDrawIndirectCommand +typedef struct VkImageBlit2 { - uint32_t vertexCount; - uint32_t instanceCount; - uint32_t firstVertex; - uint32_t firstInstance; -} VkDrawIndirectCommand; + VkStructureType sType; + const void *pNext; + VkImageSubresourceLayers srcSubresource; + VkOffset3D srcOffsets[2]; + VkImageSubresourceLayers dstSubresource; + VkOffset3D dstOffsets[2]; +} VkImageBlit2; +typedef VkImageBlit2 VkImageBlit2KHR;
-typedef struct VkDrawIndirectCountIndirectCommandEXT +typedef struct VkImageCopy2 { - VkDeviceAddress WINE_VK_ALIGN(8) bufferAddress; - uint32_t stride; - uint32_t commandCount; -} VkDrawIndirectCountIndirectCommandEXT; + VkStructureType sType; + const void *pNext; + VkImageSubresourceLayers srcSubresource; + VkOffset3D srcOffset; + VkImageSubresourceLayers dstSubresource; + VkOffset3D dstOffset; + VkExtent3D extent; +} VkImageCopy2; +typedef VkImageCopy2 VkImageCopy2KHR;
-typedef struct VkDrawMeshTasksIndirectCommandEXT +typedef struct VkImageFormatProperties { - uint32_t groupCountX; - uint32_t groupCountY; - uint32_t groupCountZ; -} VkDrawMeshTasksIndirectCommandEXT; + VkExtent3D maxExtent; + uint32_t maxMipLevels; + uint32_t maxArrayLayers; + VkSampleCountFlags sampleCounts; + VkDeviceSize WINE_VK_ALIGN(8) maxResourceSize; +} VkImageFormatProperties;
-typedef struct VkDrawMeshTasksIndirectCommandNV +typedef struct VkImageMemoryBarrier2 { - uint32_t taskCount; - uint32_t firstTask; -} VkDrawMeshTasksIndirectCommandNV; + VkStructureType sType; + const void *pNext; + VkPipelineStageFlags2 WINE_VK_ALIGN(8) srcStageMask; + VkAccessFlags2 WINE_VK_ALIGN(8) srcAccessMask; + VkPipelineStageFlags2 WINE_VK_ALIGN(8) dstStageMask; + VkAccessFlags2 WINE_VK_ALIGN(8) dstAccessMask; + VkImageLayout oldLayout; + VkImageLayout newLayout; + uint32_t srcQueueFamilyIndex; + uint32_t dstQueueFamilyIndex; + VkImage WINE_VK_ALIGN(8) image; + VkImageSubresourceRange subresourceRange; +} VkImageMemoryBarrier2; +typedef VkImageMemoryBarrier2 VkImageMemoryBarrier2KHR;
-typedef struct VkEventCreateInfo +typedef struct VkImageResolve2 { VkStructureType sType; const void *pNext; - VkEventCreateFlags flags; -} VkEventCreateInfo; + VkImageSubresourceLayers srcSubresource; + VkOffset3D srcOffset; + VkImageSubresourceLayers dstSubresource; + VkOffset3D dstOffset; + VkExtent3D extent; +} VkImageResolve2; +typedef VkImageResolve2 VkImageResolve2KHR;
-typedef struct VkExportFenceCreateInfo +typedef struct VkImageSubresource2 { VkStructureType sType; - const void *pNext; - VkExternalFenceHandleTypeFlags handleTypes; -} VkExportFenceCreateInfo; -typedef VkExportFenceCreateInfo VkExportFenceCreateInfoKHR; + void *pNext; + VkImageSubresource imageSubresource; +} VkImageSubresource2; +typedef VkImageSubresource2 VkImageSubresource2KHR; +typedef VkImageSubresource2 VkImageSubresource2EXT;
-typedef struct VkExportMemoryAllocateInfo +typedef struct VkImageToMemoryCopy { VkStructureType sType; const void *pNext; - VkExternalMemoryHandleTypeFlags handleTypes; -} VkExportMemoryAllocateInfo; -typedef VkExportMemoryAllocateInfo VkExportMemoryAllocateInfoKHR; + void *pHostPointer; + uint32_t memoryRowLength; + uint32_t memoryImageHeight; + VkImageSubresourceLayers imageSubresource; + VkOffset3D imageOffset; + VkExtent3D imageExtent; +} VkImageToMemoryCopy; +typedef VkImageToMemoryCopy VkImageToMemoryCopyEXT;
-typedef struct VkExportMemoryWin32HandleInfoKHR +typedef struct VkIndirectCommandsLayoutTokenEXT { VkStructureType sType; const void *pNext; - const SECURITY_ATTRIBUTES *pAttributes; - DWORD dwAccess; - LPCWSTR name; -} VkExportMemoryWin32HandleInfoKHR; + VkIndirectCommandsTokenTypeEXT type; + VkIndirectCommandsTokenDataEXT data; + uint32_t offset; +} VkIndirectCommandsLayoutTokenEXT;
-typedef struct VkExportSemaphoreCreateInfo +typedef struct VkIndirectCommandsLayoutTokenNV { VkStructureType sType; const void *pNext; - VkExternalSemaphoreHandleTypeFlags handleTypes; -} VkExportSemaphoreCreateInfo; -typedef VkExportSemaphoreCreateInfo VkExportSemaphoreCreateInfoKHR; + VkIndirectCommandsTokenTypeNV tokenType; + uint32_t stream; + uint32_t offset; + uint32_t vertexBindingUnit; + VkBool32 vertexDynamicStride; + VkPipelineLayout WINE_VK_ALIGN(8) pushconstantPipelineLayout; + VkShaderStageFlags pushconstantShaderStageFlags; + uint32_t pushconstantOffset; + uint32_t pushconstantSize; + VkIndirectStateFlagsNV indirectStateFlags; + uint32_t indexTypeCount; + const VkIndexType *pIndexTypes; + const uint32_t *pIndexTypeValues; +} VkIndirectCommandsLayoutTokenNV;
-typedef struct VkExtensionProperties +typedef struct VkIndirectCommandsStreamNV { - char extensionName[VK_MAX_EXTENSION_NAME_SIZE]; - uint32_t specVersion; -} VkExtensionProperties; + VkBuffer WINE_VK_ALIGN(8) buffer; + VkDeviceSize WINE_VK_ALIGN(8) offset; +} VkIndirectCommandsStreamNV;
-typedef struct VkExtent2D +typedef union VkIndirectExecutionSetInfoEXT { - uint32_t width; - uint32_t height; -} VkExtent2D; + const VkIndirectExecutionSetPipelineInfoEXT *pPipelineInfo; + const VkIndirectExecutionSetShaderInfoEXT *pShaderInfo; +} VkIndirectExecutionSetInfoEXT;
-typedef struct VkExtent3D +typedef struct VkInputAttachmentAspectReference { - uint32_t width; - uint32_t height; - uint32_t depth; -} VkExtent3D; + uint32_t subpass; + uint32_t inputAttachmentIndex; + VkImageAspectFlags aspectMask; +} VkInputAttachmentAspectReference; +typedef VkInputAttachmentAspectReference VkInputAttachmentAspectReferenceKHR;
-typedef struct VkExternalFenceProperties +typedef struct VkLatencyTimingsFrameReportNV { VkStructureType sType; - void *pNext; - VkExternalFenceHandleTypeFlags exportFromImportedHandleTypes; - VkExternalFenceHandleTypeFlags compatibleHandleTypes; - VkExternalFenceFeatureFlags externalFenceFeatures; -} VkExternalFenceProperties; -typedef VkExternalFenceProperties VkExternalFencePropertiesKHR; + const void *pNext; + uint64_t WINE_VK_ALIGN(8) presentID; + uint64_t WINE_VK_ALIGN(8) inputSampleTimeUs; + uint64_t WINE_VK_ALIGN(8) simStartTimeUs; + uint64_t WINE_VK_ALIGN(8) simEndTimeUs; + uint64_t WINE_VK_ALIGN(8) renderSubmitStartTimeUs; + uint64_t WINE_VK_ALIGN(8) renderSubmitEndTimeUs; + uint64_t WINE_VK_ALIGN(8) presentStartTimeUs; + uint64_t WINE_VK_ALIGN(8) presentEndTimeUs; + uint64_t WINE_VK_ALIGN(8) driverStartTimeUs; + uint64_t WINE_VK_ALIGN(8) driverEndTimeUs; + uint64_t WINE_VK_ALIGN(8) osRenderQueueStartTimeUs; + uint64_t WINE_VK_ALIGN(8) osRenderQueueEndTimeUs; + uint64_t WINE_VK_ALIGN(8) gpuRenderStartTimeUs; + uint64_t WINE_VK_ALIGN(8) gpuRenderEndTimeUs; +} VkLatencyTimingsFrameReportNV;
-typedef struct VkExternalMemoryAcquireUnmodifiedEXT +typedef struct VkLayerSettingEXT { - VkStructureType sType; - const void *pNext; - VkBool32 acquireUnmodifiedMemory; -} VkExternalMemoryAcquireUnmodifiedEXT; + const char *pLayerName; + const char *pSettingName; + VkLayerSettingTypeEXT type; + uint32_t valueCount; + const void *pValues; +} VkLayerSettingEXT;
-typedef struct VkExternalMemoryBufferCreateInfo +typedef struct VkMemoryBarrier2 { VkStructureType sType; const void *pNext; - VkExternalMemoryHandleTypeFlags handleTypes; -} VkExternalMemoryBufferCreateInfo; -typedef VkExternalMemoryBufferCreateInfo VkExternalMemoryBufferCreateInfoKHR; + VkPipelineStageFlags2 WINE_VK_ALIGN(8) srcStageMask; + VkAccessFlags2 WINE_VK_ALIGN(8) srcAccessMask; + VkPipelineStageFlags2 WINE_VK_ALIGN(8) dstStageMask; + VkAccessFlags2 WINE_VK_ALIGN(8) dstAccessMask; +} VkMemoryBarrier2; +typedef VkMemoryBarrier2 VkMemoryBarrier2KHR;
-typedef struct VkExternalMemoryImageCreateInfo +typedef struct VkMemoryRequirements +{ + VkDeviceSize WINE_VK_ALIGN(8) size; + VkDeviceSize WINE_VK_ALIGN(8) alignment; + uint32_t memoryTypeBits; +} VkMemoryRequirements; + +typedef struct VkMemoryToImageCopy { VkStructureType sType; const void *pNext; - VkExternalMemoryHandleTypeFlags handleTypes; -} VkExternalMemoryImageCreateInfo; -typedef VkExternalMemoryImageCreateInfo VkExternalMemoryImageCreateInfoKHR; + const void *pHostPointer; + uint32_t memoryRowLength; + uint32_t memoryImageHeight; + VkImageSubresourceLayers imageSubresource; + VkOffset3D imageOffset; + VkExtent3D imageExtent; +} VkMemoryToImageCopy; +typedef VkMemoryToImageCopy VkMemoryToImageCopyEXT;
-typedef struct VkExternalMemoryProperties +typedef struct VkMicromapUsageEXT { - VkExternalMemoryFeatureFlags externalMemoryFeatures; - VkExternalMemoryHandleTypeFlags exportFromImportedHandleTypes; - VkExternalMemoryHandleTypeFlags compatibleHandleTypes; -} VkExternalMemoryProperties; -typedef VkExternalMemoryProperties VkExternalMemoryPropertiesKHR; + uint32_t count; + uint32_t subdivisionLevel; + uint32_t format; +} VkMicromapUsageEXT;
-typedef struct VkExternalMemoryTensorCreateInfoARM +typedef struct VkMutableDescriptorTypeListEXT { - VkStructureType sType; - const void *pNext; - VkExternalMemoryHandleTypeFlags handleTypes; -} VkExternalMemoryTensorCreateInfoARM; + uint32_t descriptorTypeCount; + const VkDescriptorType *pDescriptorTypes; +} VkMutableDescriptorTypeListEXT; +typedef VkMutableDescriptorTypeListEXT VkMutableDescriptorTypeListVALVE;
-typedef struct VkExternalSemaphoreProperties +typedef struct VkPartitionedAccelerationStructureInstancesInputNV { VkStructureType sType; void *pNext; - VkExternalSemaphoreHandleTypeFlags exportFromImportedHandleTypes; - VkExternalSemaphoreHandleTypeFlags compatibleHandleTypes; - VkExternalSemaphoreFeatureFlags externalSemaphoreFeatures; -} VkExternalSemaphoreProperties; -typedef VkExternalSemaphoreProperties VkExternalSemaphorePropertiesKHR; + VkBuildAccelerationStructureFlagsKHR flags; + uint32_t instanceCount; + uint32_t maxInstancePerPartitionCount; + uint32_t partitionCount; + uint32_t maxInstanceInGlobalPartitionCount; +} VkPartitionedAccelerationStructureInstancesInputNV;
-typedef struct VkExternalTensorPropertiesARM +typedef union VkPerformanceValueDataINTEL { - VkStructureType sType; - const void *pNext; - VkExternalMemoryProperties externalMemoryProperties; -} VkExternalTensorPropertiesARM; + uint32_t value32; + uint64_t WINE_VK_ALIGN(8) value64; + float valueFloat; + VkBool32 valueBool; + const char *valueString; +} VkPerformanceValueDataINTEL;
-typedef struct VkFenceCreateInfo +typedef struct VkPhysicalDeviceDataGraphOperationSupportARM { - VkStructureType sType; - const void *pNext; - VkFenceCreateFlags flags; -} VkFenceCreateInfo; + VkPhysicalDeviceDataGraphOperationTypeARM operationType; + char name[VK_MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM]; + uint32_t version; +} VkPhysicalDeviceDataGraphOperationSupportARM;
-typedef struct VkFilterCubicImageViewImageFormatPropertiesEXT +typedef struct VkPhysicalDeviceDataGraphProcessingEngineARM { - VkStructureType sType; - void *pNext; - VkBool32 filterCubic; - VkBool32 filterCubicMinmax; -} VkFilterCubicImageViewImageFormatPropertiesEXT; + VkPhysicalDeviceDataGraphProcessingEngineTypeARM type; + VkBool32 isForeign; +} VkPhysicalDeviceDataGraphProcessingEngineARM;
-typedef struct VkFormatProperties +typedef struct VkPhysicalDeviceFeatures { - VkFormatFeatureFlags linearTilingFeatures; - VkFormatFeatureFlags optimalTilingFeatures; - VkFormatFeatureFlags bufferFeatures; -} VkFormatProperties; + VkBool32 robustBufferAccess; + VkBool32 fullDrawIndexUint32; + VkBool32 imageCubeArray; + VkBool32 independentBlend; + VkBool32 geometryShader; + VkBool32 tessellationShader; + VkBool32 sampleRateShading; + VkBool32 dualSrcBlend; + VkBool32 logicOp; + VkBool32 multiDrawIndirect; + VkBool32 drawIndirectFirstInstance; + VkBool32 depthClamp; + VkBool32 depthBiasClamp; + VkBool32 fillModeNonSolid; + VkBool32 depthBounds; + VkBool32 wideLines; + VkBool32 largePoints; + VkBool32 alphaToOne; + VkBool32 multiViewport; + VkBool32 samplerAnisotropy; + VkBool32 textureCompressionETC2; + VkBool32 textureCompressionASTC_LDR; + VkBool32 textureCompressionBC; + VkBool32 occlusionQueryPrecise; + VkBool32 pipelineStatisticsQuery; + VkBool32 vertexPipelineStoresAndAtomics; + VkBool32 fragmentStoresAndAtomics; + VkBool32 shaderTessellationAndGeometryPointSize; + VkBool32 shaderImageGatherExtended; + VkBool32 shaderStorageImageExtendedFormats; + VkBool32 shaderStorageImageMultisample; + VkBool32 shaderStorageImageReadWithoutFormat; + VkBool32 shaderStorageImageWriteWithoutFormat; + VkBool32 shaderUniformBufferArrayDynamicIndexing; + VkBool32 shaderSampledImageArrayDynamicIndexing; + VkBool32 shaderStorageBufferArrayDynamicIndexing; + VkBool32 shaderStorageImageArrayDynamicIndexing; + VkBool32 shaderClipDistance; + VkBool32 shaderCullDistance; + VkBool32 shaderFloat64; + VkBool32 shaderInt64; + VkBool32 shaderInt16; + VkBool32 shaderResourceResidency; + VkBool32 shaderResourceMinLod; + VkBool32 sparseBinding; + VkBool32 sparseResidencyBuffer; + VkBool32 sparseResidencyImage2D; + VkBool32 sparseResidencyImage3D; + VkBool32 sparseResidency2Samples; + VkBool32 sparseResidency4Samples; + VkBool32 sparseResidency8Samples; + VkBool32 sparseResidency16Samples; + VkBool32 sparseResidencyAliased; + VkBool32 variableMultisampleRate; + VkBool32 inheritedQueries; +} VkPhysicalDeviceFeatures;
-typedef struct VkFormatProperties2 +typedef struct VkPhysicalDeviceMemoryProperties { - VkStructureType sType; - void *pNext; - VkFormatProperties formatProperties; -} VkFormatProperties2; -typedef VkFormatProperties2 VkFormatProperties2KHR; + uint32_t memoryTypeCount; + VkMemoryType memoryTypes[VK_MAX_MEMORY_TYPES]; + uint32_t memoryHeapCount; + VkMemoryHeap WINE_VK_ALIGN(8) memoryHeaps[VK_MAX_MEMORY_HEAPS]; +} VkPhysicalDeviceMemoryProperties;
-typedef struct VkFormatProperties3 +typedef struct VkPhysicalDeviceProperties2 { VkStructureType sType; void *pNext; - VkFormatFeatureFlags2 WINE_VK_ALIGN(8) linearTilingFeatures; - VkFormatFeatureFlags2 WINE_VK_ALIGN(8) optimalTilingFeatures; - VkFormatFeatureFlags2 WINE_VK_ALIGN(8) bufferFeatures; -} VkFormatProperties3; -typedef VkFormatProperties3 VkFormatProperties3KHR; + VkPhysicalDeviceProperties WINE_VK_ALIGN(8) properties; +} VkPhysicalDeviceProperties2; +typedef VkPhysicalDeviceProperties2 VkPhysicalDeviceProperties2KHR;
-typedef struct VkFragmentShadingRateAttachmentInfoKHR +typedef struct VkPipelineBinaryKeysAndDataKHR { - VkStructureType sType; - const void *pNext; - const VkAttachmentReference2 *pFragmentShadingRateAttachment; - VkExtent2D shadingRateAttachmentTexelSize; -} VkFragmentShadingRateAttachmentInfoKHR; + uint32_t binaryCount; + const VkPipelineBinaryKeyKHR *pPipelineBinaryKeys; + const VkPipelineBinaryDataKHR *pPipelineBinaryData; +} VkPipelineBinaryKeysAndDataKHR;
-typedef struct VkFrameBoundaryEXT +typedef struct VkPipelineCacheCreateInfo { VkStructureType sType; const void *pNext; - VkFrameBoundaryFlagsEXT flags; - uint64_t WINE_VK_ALIGN(8) frameID; - uint32_t imageCount; - const VkImage *pImages; - uint32_t bufferCount; - const VkBuffer *pBuffers; - uint64_t WINE_VK_ALIGN(8) tagName; - size_t tagSize; - const void *pTag; -} VkFrameBoundaryEXT; + VkPipelineCacheCreateFlags flags; + size_t initialDataSize; + const void *pInitialData; +} VkPipelineCacheCreateInfo;
-typedef struct VkFrameBoundaryTensorsARM +typedef struct VkPipelineCacheHeaderVersionOne { - VkStructureType sType; - const void *pNext; - uint32_t tensorCount; - const VkTensorARM *pTensors; -} VkFrameBoundaryTensorsARM; + uint32_t headerSize; + VkPipelineCacheHeaderVersion headerVersion; + uint32_t vendorID; + uint32_t deviceID; + uint8_t pipelineCacheUUID[VK_UUID_SIZE]; +} VkPipelineCacheHeaderVersionOne;
-typedef struct VkFramebufferAttachmentImageInfo +typedef struct VkPipelineColorBlendStateCreateInfo { VkStructureType sType; const void *pNext; - VkImageCreateFlags flags; - VkImageUsageFlags usage; - uint32_t width; - uint32_t height; - uint32_t layerCount; - uint32_t viewFormatCount; - const VkFormat *pViewFormats; -} VkFramebufferAttachmentImageInfo; -typedef VkFramebufferAttachmentImageInfo VkFramebufferAttachmentImageInfoKHR; + VkPipelineColorBlendStateCreateFlags flags; + VkBool32 logicOpEnable; + VkLogicOp logicOp; + uint32_t attachmentCount; + const VkPipelineColorBlendAttachmentState *pAttachments; + float blendConstants[4]; +} VkPipelineColorBlendStateCreateInfo;
-typedef struct VkFramebufferAttachmentsCreateInfo +typedef struct VkPipelineCreateInfoKHR { VkStructureType sType; - const void *pNext; - uint32_t attachmentImageInfoCount; - const VkFramebufferAttachmentImageInfo *pAttachmentImageInfos; -} VkFramebufferAttachmentsCreateInfo; -typedef VkFramebufferAttachmentsCreateInfo VkFramebufferAttachmentsCreateInfoKHR; + void *pNext; +} VkPipelineCreateInfoKHR;
-typedef struct VkFramebufferCreateInfo +typedef struct VkPipelineCreationFeedback +{ + VkPipelineCreationFeedbackFlags flags; + uint64_t WINE_VK_ALIGN(8) duration; +} VkPipelineCreationFeedback; +typedef VkPipelineCreationFeedback VkPipelineCreationFeedbackEXT; + +typedef struct VkPipelineDepthStencilStateCreateInfo { VkStructureType sType; const void *pNext; - VkFramebufferCreateFlags flags; - VkRenderPass WINE_VK_ALIGN(8) renderPass; - uint32_t attachmentCount; - const VkImageView *pAttachments; - uint32_t width; - uint32_t height; - uint32_t layers; -} VkFramebufferCreateInfo; - -typedef struct VkFramebufferMixedSamplesCombinationNV -{ - VkStructureType sType; - void *pNext; - VkCoverageReductionModeNV coverageReductionMode; - VkSampleCountFlagBits rasterizationSamples; - VkSampleCountFlags depthStencilSamples; - VkSampleCountFlags colorSamples; -} VkFramebufferMixedSamplesCombinationNV; + VkPipelineDepthStencilStateCreateFlags flags; + VkBool32 depthTestEnable; + VkBool32 depthWriteEnable; + VkCompareOp depthCompareOp; + VkBool32 depthBoundsTestEnable; + VkBool32 stencilTestEnable; + VkStencilOpState front; + VkStencilOpState back; + float minDepthBounds; + float maxDepthBounds; +} VkPipelineDepthStencilStateCreateInfo;
-typedef struct VkGeneratedCommandsInfoEXT +typedef struct VkPipelineDynamicStateCreateInfo { VkStructureType sType; const void *pNext; - VkShaderStageFlags shaderStages; - VkIndirectExecutionSetEXT WINE_VK_ALIGN(8) indirectExecutionSet; - VkIndirectCommandsLayoutEXT WINE_VK_ALIGN(8) indirectCommandsLayout; - VkDeviceAddress WINE_VK_ALIGN(8) indirectAddress; - VkDeviceSize WINE_VK_ALIGN(8) indirectAddressSize; - VkDeviceAddress WINE_VK_ALIGN(8) preprocessAddress; - VkDeviceSize WINE_VK_ALIGN(8) preprocessSize; - uint32_t maxSequenceCount; - VkDeviceAddress WINE_VK_ALIGN(8) sequenceCountAddress; - uint32_t maxDrawCount; -} VkGeneratedCommandsInfoEXT; + VkPipelineDynamicStateCreateFlags flags; + uint32_t dynamicStateCount; + const VkDynamicState *pDynamicStates; +} VkPipelineDynamicStateCreateInfo;
-typedef struct VkGeneratedCommandsMemoryRequirementsInfoEXT +typedef union VkPipelineExecutableStatisticValueKHR { - VkStructureType sType; - const void *pNext; - VkIndirectExecutionSetEXT WINE_VK_ALIGN(8) indirectExecutionSet; - VkIndirectCommandsLayoutEXT WINE_VK_ALIGN(8) indirectCommandsLayout; - uint32_t maxSequenceCount; - uint32_t maxDrawCount; -} VkGeneratedCommandsMemoryRequirementsInfoEXT; + VkBool32 b32; + int64_t i64; + uint64_t WINE_VK_ALIGN(8) u64; + double f64; +} VkPipelineExecutableStatisticValueKHR;
-typedef struct VkGeneratedCommandsMemoryRequirementsInfoNV +typedef struct VkPipelineInputAssemblyStateCreateInfo { VkStructureType sType; const void *pNext; - VkPipelineBindPoint pipelineBindPoint; - VkPipeline WINE_VK_ALIGN(8) pipeline; - VkIndirectCommandsLayoutNV WINE_VK_ALIGN(8) indirectCommandsLayout; - uint32_t maxSequencesCount; -} VkGeneratedCommandsMemoryRequirementsInfoNV; + VkPipelineInputAssemblyStateCreateFlags flags; + VkPrimitiveTopology topology; + VkBool32 primitiveRestartEnable; +} VkPipelineInputAssemblyStateCreateInfo;
-typedef struct VkGeneratedCommandsPipelineInfoEXT +typedef struct VkPipelineLibraryCreateInfoKHR { VkStructureType sType; - void *pNext; - VkPipeline WINE_VK_ALIGN(8) pipeline; -} VkGeneratedCommandsPipelineInfoEXT; + const void *pNext; + uint32_t libraryCount; + const VkPipeline *pLibraries; +} VkPipelineLibraryCreateInfoKHR;
-typedef struct VkGeneratedCommandsShaderInfoEXT +typedef struct VkPipelineMultisampleStateCreateInfo { VkStructureType sType; - void *pNext; - uint32_t shaderCount; - const VkShaderEXT *pShaders; -} VkGeneratedCommandsShaderInfoEXT; + const void *pNext; + VkPipelineMultisampleStateCreateFlags flags; + VkSampleCountFlagBits rasterizationSamples; + VkBool32 sampleShadingEnable; + float minSampleShading; + const VkSampleMask *pSampleMask; + VkBool32 alphaToCoverageEnable; + VkBool32 alphaToOneEnable; +} VkPipelineMultisampleStateCreateInfo;
-typedef struct VkGeometryAABBNV +typedef struct VkPipelineRasterizationStateCreateInfo { VkStructureType sType; const void *pNext; - VkBuffer WINE_VK_ALIGN(8) aabbData; - uint32_t numAABBs; - uint32_t stride; - VkDeviceSize WINE_VK_ALIGN(8) offset; -} VkGeometryAABBNV; + VkPipelineRasterizationStateCreateFlags flags; + VkBool32 depthClampEnable; + VkBool32 rasterizerDiscardEnable; + VkPolygonMode polygonMode; + VkCullModeFlags cullMode; + VkFrontFace frontFace; + VkBool32 depthBiasEnable; + float depthBiasConstantFactor; + float depthBiasClamp; + float depthBiasSlopeFactor; + float lineWidth; +} VkPipelineRasterizationStateCreateInfo;
-typedef struct VkGeometryTrianglesNV +typedef struct VkPipelineViewportStateCreateInfo { VkStructureType sType; const void *pNext; - VkBuffer WINE_VK_ALIGN(8) vertexData; - VkDeviceSize WINE_VK_ALIGN(8) vertexOffset; - uint32_t vertexCount; - VkDeviceSize WINE_VK_ALIGN(8) vertexStride; - VkFormat vertexFormat; - VkBuffer WINE_VK_ALIGN(8) indexData; - VkDeviceSize WINE_VK_ALIGN(8) indexOffset; - uint32_t indexCount; - VkIndexType indexType; - VkBuffer WINE_VK_ALIGN(8) transformData; - VkDeviceSize WINE_VK_ALIGN(8) transformOffset; -} VkGeometryTrianglesNV; + VkPipelineViewportStateCreateFlags flags; + uint32_t viewportCount; + const VkViewport *pViewports; + uint32_t scissorCount; + const VkRect2D *pScissors; +} VkPipelineViewportStateCreateInfo;
-typedef struct VkGraphicsPipelineLibraryCreateInfoEXT +typedef struct VkPresentRegionKHR { - VkStructureType sType; - const void *pNext; - VkGraphicsPipelineLibraryFlagsEXT flags; -} VkGraphicsPipelineLibraryCreateInfoEXT; + uint32_t rectangleCount; + const VkRectLayerKHR *pRectangles; +} VkPresentRegionKHR;
-typedef struct VkHdrVividDynamicMetadataHUAWEI +typedef struct VkQueueFamilyProperties { - VkStructureType sType; - const void *pNext; - size_t dynamicMetadataSize; - const void *pDynamicMetadata; -} VkHdrVividDynamicMetadataHUAWEI; + VkQueueFlags queueFlags; + uint32_t queueCount; + uint32_t timestampValidBits; + VkExtent3D minImageTransferGranularity; +} VkQueueFamilyProperties;
-typedef struct VkHeadlessSurfaceCreateInfoEXT +typedef struct VkRayTracingPipelineInterfaceCreateInfoKHR { VkStructureType sType; const void *pNext; - VkHeadlessSurfaceCreateFlagsEXT flags; -} VkHeadlessSurfaceCreateInfoEXT; + uint32_t maxPipelineRayPayloadSize; + uint32_t maxPipelineRayHitAttributeSize; +} VkRayTracingPipelineInterfaceCreateInfoKHR;
-typedef struct VkHostImageCopyDevicePerformanceQuery +typedef struct VkRayTracingShaderGroupCreateInfoKHR { VkStructureType sType; - void *pNext; - VkBool32 optimalDeviceAccess; - VkBool32 identicalMemoryLayout; -} VkHostImageCopyDevicePerformanceQuery; -typedef VkHostImageCopyDevicePerformanceQuery VkHostImageCopyDevicePerformanceQueryEXT; + const void *pNext; + VkRayTracingShaderGroupTypeKHR type; + uint32_t generalShader; + uint32_t closestHitShader; + uint32_t anyHitShader; + uint32_t intersectionShader; + const void *pShaderGroupCaptureReplayHandle; +} VkRayTracingShaderGroupCreateInfoKHR;
-typedef struct VkImageAlignmentControlCreateInfoMESA +typedef struct VkRayTracingShaderGroupCreateInfoNV { VkStructureType sType; const void *pNext; - uint32_t maximumRequestedAlignment; -} VkImageAlignmentControlCreateInfoMESA; + VkRayTracingShaderGroupTypeKHR type; + uint32_t generalShader; + uint32_t closestHitShader; + uint32_t anyHitShader; + uint32_t intersectionShader; +} VkRayTracingShaderGroupCreateInfoNV;
-typedef struct VkImageCaptureDescriptorDataInfoEXT +typedef struct VkRenderPassCreationFeedbackInfoEXT { - VkStructureType sType; - const void *pNext; - VkImage WINE_VK_ALIGN(8) image; -} VkImageCaptureDescriptorDataInfoEXT; + uint32_t postMergeSubpassCount; +} VkRenderPassCreationFeedbackInfoEXT;
-typedef struct VkImageCompressionControlEXT +typedef struct VkRenderPassStripeInfoARM { VkStructureType sType; const void *pNext; - VkImageCompressionFlagsEXT flags; - uint32_t compressionControlPlaneCount; - VkImageCompressionFixedRateFlagsEXT *pFixedRateFlags; -} VkImageCompressionControlEXT; + VkRect2D stripeArea; +} VkRenderPassStripeInfoARM;
-typedef struct VkImageCompressionPropertiesEXT +typedef struct VkRenderPassSubpassFeedbackInfoEXT { - VkStructureType sType; - void *pNext; - VkImageCompressionFlagsEXT imageCompressionFlags; - VkImageCompressionFixedRateFlagsEXT imageCompressionFixedRateFlags; -} VkImageCompressionPropertiesEXT; + VkSubpassMergeStatusEXT subpassMergeStatus; + char description[VK_MAX_DESCRIPTION_SIZE]; + uint32_t postMergeIndex; +} VkRenderPassSubpassFeedbackInfoEXT;
-typedef struct VkImageCreateInfo +typedef struct VkRenderingAttachmentInfo { VkStructureType sType; const void *pNext; - VkImageCreateFlags flags; - VkImageType imageType; - VkFormat format; - VkExtent3D extent; - uint32_t mipLevels; - uint32_t arrayLayers; - VkSampleCountFlagBits samples; - VkImageTiling tiling; - VkImageUsageFlags usage; - VkSharingMode sharingMode; - uint32_t queueFamilyIndexCount; - const uint32_t *pQueueFamilyIndices; - VkImageLayout initialLayout; -} VkImageCreateInfo; + VkImageView WINE_VK_ALIGN(8) imageView; + VkImageLayout imageLayout; + VkResolveModeFlagBits resolveMode; + VkImageView WINE_VK_ALIGN(8) resolveImageView; + VkImageLayout resolveImageLayout; + VkAttachmentLoadOp loadOp; + VkAttachmentStoreOp storeOp; + VkClearValue clearValue; +} VkRenderingAttachmentInfo; +typedef VkRenderingAttachmentInfo VkRenderingAttachmentInfoKHR;
-typedef struct VkImageFormatListCreateInfo +typedef struct VkSemaphoreSubmitInfo { VkStructureType sType; const void *pNext; - uint32_t viewFormatCount; - const VkFormat *pViewFormats; -} VkImageFormatListCreateInfo; -typedef VkImageFormatListCreateInfo VkImageFormatListCreateInfoKHR; + VkSemaphore WINE_VK_ALIGN(8) semaphore; + uint64_t WINE_VK_ALIGN(8) value; + VkPipelineStageFlags2 WINE_VK_ALIGN(8) stageMask; + uint32_t deviceIndex; +} VkSemaphoreSubmitInfo; +typedef VkSemaphoreSubmitInfo VkSemaphoreSubmitInfoKHR;
-typedef struct VkImageFormatProperties +typedef struct VkShaderResourceUsageAMD { - VkExtent3D maxExtent; - uint32_t maxMipLevels; - uint32_t maxArrayLayers; - VkSampleCountFlags sampleCounts; - VkDeviceSize WINE_VK_ALIGN(8) maxResourceSize; -} VkImageFormatProperties; + uint32_t numUsedVgprs; + uint32_t numUsedSgprs; + uint32_t ldsSizePerLocalWorkGroup; + size_t ldsUsageSizeInBytes; + size_t scratchMemUsageInBytes; +} VkShaderResourceUsageAMD;
-typedef struct VkImageFormatProperties2 +typedef struct VkShadingRatePaletteNV { - VkStructureType sType; - void *pNext; - VkImageFormatProperties WINE_VK_ALIGN(8) imageFormatProperties; -} VkImageFormatProperties2; -typedef VkImageFormatProperties2 VkImageFormatProperties2KHR; + uint32_t shadingRatePaletteEntryCount; + const VkShadingRatePaletteEntryNV *pShadingRatePaletteEntries; +} VkShadingRatePaletteNV;
-typedef struct VkImageMemoryRequirementsInfo2 +typedef struct VkSparseBufferMemoryBindInfo +{ + VkBuffer WINE_VK_ALIGN(8) buffer; + uint32_t bindCount; + const VkSparseMemoryBind *pBinds; +} VkSparseBufferMemoryBindInfo; + +typedef struct VkSparseImageMemoryBindInfo { - VkStructureType sType; - const void *pNext; VkImage WINE_VK_ALIGN(8) image; -} VkImageMemoryRequirementsInfo2; -typedef VkImageMemoryRequirementsInfo2 VkImageMemoryRequirementsInfo2KHR; + uint32_t bindCount; + const VkSparseImageMemoryBind *pBinds; +} VkSparseImageMemoryBindInfo;
-typedef struct VkImagePlaneMemoryRequirementsInfo +typedef struct VkSparseImageMemoryRequirements { - VkStructureType sType; - const void *pNext; - VkImageAspectFlagBits planeAspect; -} VkImagePlaneMemoryRequirementsInfo; -typedef VkImagePlaneMemoryRequirementsInfo VkImagePlaneMemoryRequirementsInfoKHR; + VkSparseImageFormatProperties formatProperties; + uint32_t imageMipTailFirstLod; + VkDeviceSize WINE_VK_ALIGN(8) imageMipTailSize; + VkDeviceSize WINE_VK_ALIGN(8) imageMipTailOffset; + VkDeviceSize WINE_VK_ALIGN(8) imageMipTailStride; +} VkSparseImageMemoryRequirements;
-typedef struct VkImageSparseMemoryRequirementsInfo2 +typedef struct VkSparseImageOpaqueMemoryBindInfo { - VkStructureType sType; - const void *pNext; VkImage WINE_VK_ALIGN(8) image; -} VkImageSparseMemoryRequirementsInfo2; -typedef VkImageSparseMemoryRequirementsInfo2 VkImageSparseMemoryRequirementsInfo2KHR; + uint32_t bindCount; + const VkSparseMemoryBind *pBinds; +} VkSparseImageOpaqueMemoryBindInfo;
-typedef struct VkImageStencilUsageCreateInfo +typedef struct VkStridedDeviceAddressNV { - VkStructureType sType; - const void *pNext; - VkImageUsageFlags stencilUsage; -} VkImageStencilUsageCreateInfo; -typedef VkImageStencilUsageCreateInfo VkImageStencilUsageCreateInfoEXT; + VkDeviceAddress WINE_VK_ALIGN(8) startAddress; + VkDeviceSize WINE_VK_ALIGN(8) strideInBytes; +} VkStridedDeviceAddressNV;
-typedef struct VkImageSubresource +typedef struct VkStridedDeviceAddressRegionKHR { - VkImageAspectFlags aspectMask; - uint32_t mipLevel; - uint32_t arrayLayer; -} VkImageSubresource; + VkDeviceAddress WINE_VK_ALIGN(8) deviceAddress; + VkDeviceSize WINE_VK_ALIGN(8) stride; + VkDeviceSize WINE_VK_ALIGN(8) size; +} VkStridedDeviceAddressRegionKHR;
-typedef struct VkImageSubresource2 +typedef struct VkSubpassDependency { - VkStructureType sType; - void *pNext; - VkImageSubresource imageSubresource; -} VkImageSubresource2; -typedef VkImageSubresource2 VkImageSubresource2KHR; -typedef VkImageSubresource2 VkImageSubresource2EXT; + uint32_t srcSubpass; + uint32_t dstSubpass; + VkPipelineStageFlags srcStageMask; + VkPipelineStageFlags dstStageMask; + VkAccessFlags srcAccessMask; + VkAccessFlags dstAccessMask; + VkDependencyFlags dependencyFlags; +} VkSubpassDependency;
-typedef struct VkImageSubresourceLayers +typedef struct VkSubpassDependency2 { - VkImageAspectFlags aspectMask; - uint32_t mipLevel; - uint32_t baseArrayLayer; - uint32_t layerCount; -} VkImageSubresourceLayers; + VkStructureType sType; + const void *pNext; + uint32_t srcSubpass; + uint32_t dstSubpass; + VkPipelineStageFlags srcStageMask; + VkPipelineStageFlags dstStageMask; + VkAccessFlags srcAccessMask; + VkAccessFlags dstAccessMask; + VkDependencyFlags dependencyFlags; + int32_t viewOffset; +} VkSubpassDependency2; +typedef VkSubpassDependency2 VkSubpassDependency2KHR;
-typedef struct VkImageSubresourceRange +typedef struct VkSubpassDescription { - VkImageAspectFlags aspectMask; - uint32_t baseMipLevel; - uint32_t levelCount; - uint32_t baseArrayLayer; - uint32_t layerCount; -} VkImageSubresourceRange; + VkSubpassDescriptionFlags flags; + VkPipelineBindPoint pipelineBindPoint; + uint32_t inputAttachmentCount; + const VkAttachmentReference *pInputAttachments; + uint32_t colorAttachmentCount; + const VkAttachmentReference *pColorAttachments; + const VkAttachmentReference *pResolveAttachments; + const VkAttachmentReference *pDepthStencilAttachment; + uint32_t preserveAttachmentCount; + const uint32_t *pPreserveAttachments; +} VkSubpassDescription;
-typedef struct VkImageSwapchainCreateInfoKHR +typedef struct VkSubpassDescription2 { VkStructureType sType; const void *pNext; - VkSwapchainKHR WINE_VK_ALIGN(8) swapchain; -} VkImageSwapchainCreateInfoKHR; + VkSubpassDescriptionFlags flags; + VkPipelineBindPoint pipelineBindPoint; + uint32_t viewMask; + uint32_t inputAttachmentCount; + const VkAttachmentReference2 *pInputAttachments; + uint32_t colorAttachmentCount; + const VkAttachmentReference2 *pColorAttachments; + const VkAttachmentReference2 *pResolveAttachments; + const VkAttachmentReference2 *pDepthStencilAttachment; + uint32_t preserveAttachmentCount; + const uint32_t *pPreserveAttachments; +} VkSubpassDescription2; +typedef VkSubpassDescription2 VkSubpassDescription2KHR;
-typedef struct VkImageViewASTCDecodeModeEXT +typedef struct VkSubpassSampleLocationsEXT { - VkStructureType sType; - const void *pNext; - VkFormat decodeMode; -} VkImageViewASTCDecodeModeEXT; + uint32_t subpassIndex; + VkSampleLocationsInfoEXT sampleLocationsInfo; +} VkSubpassSampleLocationsEXT;
-typedef struct VkImageViewAddressPropertiesNVX +typedef struct VkSubresourceLayout { - VkStructureType sType; - void *pNext; - VkDeviceAddress WINE_VK_ALIGN(8) deviceAddress; + VkDeviceSize WINE_VK_ALIGN(8) offset; VkDeviceSize WINE_VK_ALIGN(8) size; -} VkImageViewAddressPropertiesNVX; + VkDeviceSize WINE_VK_ALIGN(8) rowPitch; + VkDeviceSize WINE_VK_ALIGN(8) arrayPitch; + VkDeviceSize WINE_VK_ALIGN(8) depthPitch; +} VkSubresourceLayout;
-typedef struct VkImageViewCaptureDescriptorDataInfoEXT +typedef struct VkSurfaceCapabilitiesKHR { - VkStructureType sType; - const void *pNext; - VkImageView WINE_VK_ALIGN(8) imageView; -} VkImageViewCaptureDescriptorDataInfoEXT; + uint32_t minImageCount; + uint32_t maxImageCount; + VkExtent2D currentExtent; + VkExtent2D minImageExtent; + VkExtent2D maxImageExtent; + uint32_t maxImageArrayLayers; + VkSurfaceTransformFlagsKHR supportedTransforms; + VkSurfaceTransformFlagBitsKHR currentTransform; + VkCompositeAlphaFlagsKHR supportedCompositeAlpha; + VkImageUsageFlags supportedUsageFlags; +} VkSurfaceCapabilitiesKHR;
-typedef struct VkImageViewCreateInfo +typedef struct VkSurfaceFormatKHR { - VkStructureType sType; - const void *pNext; - VkImageViewCreateFlags flags; - VkImage WINE_VK_ALIGN(8) image; - VkImageViewType viewType; VkFormat format; - VkComponentMapping components; - VkImageSubresourceRange subresourceRange; -} VkImageViewCreateInfo; + VkColorSpaceKHR colorSpace; +} VkSurfaceFormatKHR;
-typedef struct VkImageViewHandleInfoNVX +typedef struct VkTensorCopyARM { VkStructureType sType; const void *pNext; - VkImageView WINE_VK_ALIGN(8) imageView; - VkDescriptorType descriptorType; - VkSampler WINE_VK_ALIGN(8) sampler; -} VkImageViewHandleInfoNVX; + uint32_t dimensionCount; + const uint64_t *pSrcOffset; + const uint64_t *pDstOffset; + const uint64_t *pExtent; +} VkTensorCopyARM;
-typedef struct VkImageViewMinLodCreateInfoEXT +typedef struct VkTensorCreateInfoARM { VkStructureType sType; const void *pNext; - float minLod; -} VkImageViewMinLodCreateInfoEXT; + VkTensorCreateFlagsARM WINE_VK_ALIGN(8) flags; + const VkTensorDescriptionARM *pDescription; + VkSharingMode sharingMode; + uint32_t queueFamilyIndexCount; + const uint32_t *pQueueFamilyIndices; +} VkTensorCreateInfoARM;
-typedef struct VkImageViewSlicedCreateInfoEXT +typedef struct VkTensorMemoryBarrierARM { VkStructureType sType; const void *pNext; - uint32_t sliceOffset; - uint32_t sliceCount; -} VkImageViewSlicedCreateInfoEXT; + VkPipelineStageFlags2 WINE_VK_ALIGN(8) srcStageMask; + VkAccessFlags2 WINE_VK_ALIGN(8) srcAccessMask; + VkPipelineStageFlags2 WINE_VK_ALIGN(8) dstStageMask; + VkAccessFlags2 WINE_VK_ALIGN(8) dstAccessMask; + uint32_t srcQueueFamilyIndex; + uint32_t dstQueueFamilyIndex; + VkTensorARM WINE_VK_ALIGN(8) tensor; +} VkTensorMemoryBarrierARM;
-typedef struct VkImageViewUsageCreateInfo +typedef struct VkVertexInputBindingDivisorDescription { - VkStructureType sType; - const void *pNext; - VkImageUsageFlags usage; -} VkImageViewUsageCreateInfo; -typedef VkImageViewUsageCreateInfo VkImageViewUsageCreateInfoKHR; + uint32_t binding; + uint32_t divisor; +} VkVertexInputBindingDivisorDescription; +typedef VkVertexInputBindingDivisorDescription VkVertexInputBindingDivisorDescriptionKHR; +typedef VkVertexInputBindingDivisorDescription VkVertexInputBindingDivisorDescriptionEXT;
-typedef struct VkImportMemoryHostPointerInfoEXT +typedef struct VkVideoDecodeH264SessionParametersAddInfoKHR { VkStructureType sType; const void *pNext; - VkExternalMemoryHandleTypeFlagBits handleType; - void *pHostPointer; -} VkImportMemoryHostPointerInfoEXT; + uint32_t stdSPSCount; + const StdVideoH264SequenceParameterSet *pStdSPSs; + uint32_t stdPPSCount; + const StdVideoH264PictureParameterSet *pStdPPSs; +} VkVideoDecodeH264SessionParametersAddInfoKHR;
-typedef struct VkImportMemoryWin32HandleInfoKHR +typedef struct VkVideoEncodeAV1FrameSizeKHR { - VkStructureType sType; - const void *pNext; - VkExternalMemoryHandleTypeFlagBits handleType; - HANDLE handle; - LPCWSTR name; -} VkImportMemoryWin32HandleInfoKHR; + uint32_t intraFrameSize; + uint32_t predictiveFrameSize; + uint32_t bipredictiveFrameSize; +} VkVideoEncodeAV1FrameSizeKHR;
-typedef struct VkIndirectCommandsExecutionSetTokenEXT +typedef struct VkVideoEncodeAV1QIndexKHR { - VkIndirectExecutionSetInfoTypeEXT type; - VkShaderStageFlags shaderStages; -} VkIndirectCommandsExecutionSetTokenEXT; + uint32_t intraQIndex; + uint32_t predictiveQIndex; + uint32_t bipredictiveQIndex; +} VkVideoEncodeAV1QIndexKHR;
-typedef struct VkIndirectCommandsIndexBufferTokenEXT +typedef struct VkVideoEncodeH264FrameSizeKHR { - VkIndirectCommandsInputModeFlagBitsEXT mode; -} VkIndirectCommandsIndexBufferTokenEXT; + uint32_t frameISize; + uint32_t framePSize; + uint32_t frameBSize; +} VkVideoEncodeH264FrameSizeKHR;
-typedef struct VkIndirectCommandsLayoutTokenNV +typedef struct VkVideoEncodeH264NaluSliceInfoKHR { VkStructureType sType; const void *pNext; - VkIndirectCommandsTokenTypeNV tokenType; - uint32_t stream; - uint32_t offset; - uint32_t vertexBindingUnit; - VkBool32 vertexDynamicStride; - VkPipelineLayout WINE_VK_ALIGN(8) pushconstantPipelineLayout; - VkShaderStageFlags pushconstantShaderStageFlags; - uint32_t pushconstantOffset; - uint32_t pushconstantSize; - VkIndirectStateFlagsNV indirectStateFlags; - uint32_t indexTypeCount; - const VkIndexType *pIndexTypes; - const uint32_t *pIndexTypeValues; -} VkIndirectCommandsLayoutTokenNV; - -typedef struct VkIndirectCommandsStreamNV -{ - VkBuffer WINE_VK_ALIGN(8) buffer; - VkDeviceSize WINE_VK_ALIGN(8) offset; -} VkIndirectCommandsStreamNV; + int32_t constantQp; + const StdVideoEncodeH264SliceHeader *pStdSliceHeader; +} VkVideoEncodeH264NaluSliceInfoKHR;
-typedef struct VkIndirectCommandsVertexBufferTokenEXT +typedef struct VkVideoEncodeH264QpKHR { - uint32_t vertexBindingUnit; -} VkIndirectCommandsVertexBufferTokenEXT; + int32_t qpI; + int32_t qpP; + int32_t qpB; +} VkVideoEncodeH264QpKHR;
-typedef struct VkIndirectExecutionSetPipelineInfoEXT +typedef struct VkVideoEncodeH264SessionParametersAddInfoKHR { VkStructureType sType; const void *pNext; - VkPipeline WINE_VK_ALIGN(8) initialPipeline; - uint32_t maxPipelineCount; -} VkIndirectExecutionSetPipelineInfoEXT; + uint32_t stdSPSCount; + const StdVideoH264SequenceParameterSet *pStdSPSs; + uint32_t stdPPSCount; + const StdVideoH264PictureParameterSet *pStdPPSs; +} VkVideoEncodeH264SessionParametersAddInfoKHR;
-typedef struct VkIndirectExecutionSetShaderLayoutInfoEXT +typedef struct VkVideoEncodeRateControlLayerInfoKHR { VkStructureType sType; const void *pNext; - uint32_t setLayoutCount; - const VkDescriptorSetLayout *pSetLayouts; -} VkIndirectExecutionSetShaderLayoutInfoEXT; + uint64_t WINE_VK_ALIGN(8) averageBitrate; + uint64_t WINE_VK_ALIGN(8) maxBitrate; + uint32_t frameRateNumerator; + uint32_t frameRateDenominator; +} VkVideoEncodeRateControlLayerInfoKHR;
-typedef struct VkInitializePerformanceApiInfoINTEL +typedef struct VkVideoProfileInfoKHR { VkStructureType sType; const void *pNext; - void *pUserData; -} VkInitializePerformanceApiInfoINTEL; - -typedef struct VkInputAttachmentAspectReference -{ - uint32_t subpass; - uint32_t inputAttachmentIndex; - VkImageAspectFlags aspectMask; -} VkInputAttachmentAspectReference; -typedef VkInputAttachmentAspectReference VkInputAttachmentAspectReferenceKHR; + VkVideoCodecOperationFlagBitsKHR videoCodecOperation; + VkVideoChromaSubsamplingFlagsKHR chromaSubsampling; + VkVideoComponentBitDepthFlagsKHR lumaBitDepth; + VkVideoComponentBitDepthFlagsKHR chromaBitDepth; +} VkVideoProfileInfoKHR;
-typedef struct VkInstanceCreateInfo +typedef struct VkVideoReferenceSlotInfoKHR { VkStructureType sType; const void *pNext; - VkInstanceCreateFlags flags; - const VkApplicationInfo *pApplicationInfo; - uint32_t enabledLayerCount; - const char * const*ppEnabledLayerNames; - uint32_t enabledExtensionCount; - const char * const*ppEnabledExtensionNames; -} VkInstanceCreateInfo; + int32_t slotIndex; + const VkVideoPictureResourceInfoKHR *pPictureResource; +} VkVideoReferenceSlotInfoKHR;
-typedef struct VkLatencySleepInfoNV +typedef struct VkViewportSwizzleNV { - VkStructureType sType; - const void *pNext; - VkSemaphore WINE_VK_ALIGN(8) signalSemaphore; - uint64_t WINE_VK_ALIGN(8) value; -} VkLatencySleepInfoNV; + VkViewportCoordinateSwizzleNV x; + VkViewportCoordinateSwizzleNV y; + VkViewportCoordinateSwizzleNV z; + VkViewportCoordinateSwizzleNV w; +} VkViewportSwizzleNV;
-typedef struct VkLatencySleepModeInfoNV +typedef struct VkViewportWScalingNV { - VkStructureType sType; - const void *pNext; - VkBool32 lowLatencyMode; - VkBool32 lowLatencyBoost; - uint32_t minimumIntervalUs; -} VkLatencySleepModeInfoNV; + float xcoeff; + float ycoeff; +} VkViewportWScalingNV;
-typedef struct VkLatencySubmissionPresentIdNV +typedef struct VkWriteDescriptorSet { VkStructureType sType; const void *pNext; - uint64_t WINE_VK_ALIGN(8) presentID; -} VkLatencySubmissionPresentIdNV; + VkDescriptorSet WINE_VK_ALIGN(8) dstSet; + uint32_t dstBinding; + uint32_t dstArrayElement; + uint32_t descriptorCount; + VkDescriptorType descriptorType; + const VkDescriptorImageInfo *pImageInfo; + const VkDescriptorBufferInfo *pBufferInfo; + const VkBufferView *pTexelBufferView; +} VkWriteDescriptorSet;
-typedef struct VkLatencySurfaceCapabilitiesNV +typedef struct VkXYColorEXT { - VkStructureType sType; - const void *pNext; - uint32_t presentModeCount; - VkPresentModeKHR *pPresentModes; -} VkLatencySurfaceCapabilitiesNV; + float x; + float y; +} VkXYColorEXT;
-typedef struct VkLatencyTimingsFrameReportNV +typedef struct VkAabbPositionsKHR { - VkStructureType sType; - const void *pNext; - uint64_t WINE_VK_ALIGN(8) presentID; - uint64_t WINE_VK_ALIGN(8) inputSampleTimeUs; - uint64_t WINE_VK_ALIGN(8) simStartTimeUs; - uint64_t WINE_VK_ALIGN(8) simEndTimeUs; - uint64_t WINE_VK_ALIGN(8) renderSubmitStartTimeUs; - uint64_t WINE_VK_ALIGN(8) renderSubmitEndTimeUs; - uint64_t WINE_VK_ALIGN(8) presentStartTimeUs; - uint64_t WINE_VK_ALIGN(8) presentEndTimeUs; - uint64_t WINE_VK_ALIGN(8) driverStartTimeUs; - uint64_t WINE_VK_ALIGN(8) driverEndTimeUs; - uint64_t WINE_VK_ALIGN(8) osRenderQueueStartTimeUs; - uint64_t WINE_VK_ALIGN(8) osRenderQueueEndTimeUs; - uint64_t WINE_VK_ALIGN(8) gpuRenderStartTimeUs; - uint64_t WINE_VK_ALIGN(8) gpuRenderEndTimeUs; -} VkLatencyTimingsFrameReportNV; + float minX; + float minY; + float minZ; + float maxX; + float maxY; + float maxZ; +} VkAabbPositionsKHR; +typedef VkAabbPositionsKHR VkAabbPositionsNV;
-typedef struct VkLayerProperties +typedef struct VkAccelerationStructureBuildGeometryInfoKHR { - char layerName[VK_MAX_EXTENSION_NAME_SIZE]; - uint32_t specVersion; - uint32_t implementationVersion; - char description[VK_MAX_DESCRIPTION_SIZE]; -} VkLayerProperties; + VkStructureType sType; + const void *pNext; + VkAccelerationStructureTypeKHR type; + VkBuildAccelerationStructureFlagsKHR flags; + VkBuildAccelerationStructureModeKHR mode; + VkAccelerationStructureKHR WINE_VK_ALIGN(8) srcAccelerationStructure; + VkAccelerationStructureKHR WINE_VK_ALIGN(8) dstAccelerationStructure; + uint32_t geometryCount; + const VkAccelerationStructureGeometryKHR *pGeometries; + const VkAccelerationStructureGeometryKHR * const*ppGeometries; + VkDeviceOrHostAddressKHR WINE_VK_ALIGN(8) scratchData; +} VkAccelerationStructureBuildGeometryInfoKHR;
-typedef struct VkLayerSettingEXT +typedef struct VkAccelerationStructureBuildRangeInfoKHR { - const char *pLayerName; - const char *pSettingName; - VkLayerSettingTypeEXT type; - uint32_t valueCount; - const void *pValues; -} VkLayerSettingEXT; + uint32_t primitiveCount; + uint32_t primitiveOffset; + uint32_t firstVertex; + uint32_t transformOffset; +} VkAccelerationStructureBuildRangeInfoKHR;
-typedef struct VkLayerSettingsCreateInfoEXT +typedef struct VkAccelerationStructureBuildSizesInfoKHR { VkStructureType sType; const void *pNext; - uint32_t settingCount; - const VkLayerSettingEXT *pSettings; -} VkLayerSettingsCreateInfoEXT; + VkDeviceSize WINE_VK_ALIGN(8) accelerationStructureSize; + VkDeviceSize WINE_VK_ALIGN(8) updateScratchSize; + VkDeviceSize WINE_VK_ALIGN(8) buildScratchSize; +} VkAccelerationStructureBuildSizesInfoKHR;
-typedef struct VkMacOSSurfaceCreateInfoMVK +typedef struct VkAccelerationStructureCaptureDescriptorDataInfoEXT { VkStructureType sType; const void *pNext; - VkMacOSSurfaceCreateFlagsMVK flags; - const void *pView; -} VkMacOSSurfaceCreateInfoMVK; + VkAccelerationStructureKHR WINE_VK_ALIGN(8) accelerationStructure; + VkAccelerationStructureNV WINE_VK_ALIGN(8) accelerationStructureNV; +} VkAccelerationStructureCaptureDescriptorDataInfoEXT;
-typedef struct VkMappedMemoryRange +typedef struct VkAccelerationStructureCreateInfoKHR { VkStructureType sType; const void *pNext; - VkDeviceMemory WINE_VK_ALIGN(8) memory; + VkAccelerationStructureCreateFlagsKHR createFlags; + VkBuffer WINE_VK_ALIGN(8) buffer; VkDeviceSize WINE_VK_ALIGN(8) offset; VkDeviceSize WINE_VK_ALIGN(8) size; -} VkMappedMemoryRange; + VkAccelerationStructureTypeKHR type; + VkDeviceAddress WINE_VK_ALIGN(8) deviceAddress; +} VkAccelerationStructureCreateInfoKHR;
-typedef struct VkMemoryAllocateFlagsInfo +typedef struct VkAccelerationStructureCreateInfoNV { VkStructureType sType; const void *pNext; - VkMemoryAllocateFlags flags; - uint32_t deviceMask; -} VkMemoryAllocateFlagsInfo; -typedef VkMemoryAllocateFlagsInfo VkMemoryAllocateFlagsInfoKHR; + VkDeviceSize WINE_VK_ALIGN(8) compactedSize; + VkAccelerationStructureInfoNV info; +} VkAccelerationStructureCreateInfoNV;
-typedef struct VkMemoryAllocateInfo +typedef struct VkAccelerationStructureDeviceAddressInfoKHR { VkStructureType sType; const void *pNext; - VkDeviceSize WINE_VK_ALIGN(8) allocationSize; - uint32_t memoryTypeIndex; -} VkMemoryAllocateInfo; + VkAccelerationStructureKHR WINE_VK_ALIGN(8) accelerationStructure; +} VkAccelerationStructureDeviceAddressInfoKHR;
-typedef struct VkMemoryBarrier +typedef struct VkAccelerationStructureGeometryLinearSweptSpheresDataNV { VkStructureType sType; const void *pNext; - VkAccessFlags srcAccessMask; - VkAccessFlags dstAccessMask; -} VkMemoryBarrier; + VkFormat vertexFormat; + VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) vertexData; + VkDeviceSize WINE_VK_ALIGN(8) vertexStride; + VkFormat radiusFormat; + VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) radiusData; + VkDeviceSize WINE_VK_ALIGN(8) radiusStride; + VkIndexType indexType; + VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) indexData; + VkDeviceSize WINE_VK_ALIGN(8) indexStride; + VkRayTracingLssIndexingModeNV indexingMode; + VkRayTracingLssPrimitiveEndCapsModeNV endCapsMode; +} VkAccelerationStructureGeometryLinearSweptSpheresDataNV;
-typedef struct VkMemoryBarrier2 +typedef struct VkAccelerationStructureGeometryMotionTrianglesDataNV { VkStructureType sType; const void *pNext; - VkPipelineStageFlags2 WINE_VK_ALIGN(8) srcStageMask; - VkAccessFlags2 WINE_VK_ALIGN(8) srcAccessMask; - VkPipelineStageFlags2 WINE_VK_ALIGN(8) dstStageMask; - VkAccessFlags2 WINE_VK_ALIGN(8) dstAccessMask; -} VkMemoryBarrier2; -typedef VkMemoryBarrier2 VkMemoryBarrier2KHR; + VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) vertexData; +} VkAccelerationStructureGeometryMotionTrianglesDataNV;
-typedef struct VkMemoryBarrierAccessFlags3KHR +typedef struct VkAccelerationStructureGeometrySpheresDataNV { VkStructureType sType; const void *pNext; - VkAccessFlags3KHR WINE_VK_ALIGN(8) srcAccessMask3; - VkAccessFlags3KHR WINE_VK_ALIGN(8) dstAccessMask3; -} VkMemoryBarrierAccessFlags3KHR; + VkFormat vertexFormat; + VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) vertexData; + VkDeviceSize WINE_VK_ALIGN(8) vertexStride; + VkFormat radiusFormat; + VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) radiusData; + VkDeviceSize WINE_VK_ALIGN(8) radiusStride; + VkIndexType indexType; + VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) indexData; + VkDeviceSize WINE_VK_ALIGN(8) indexStride; +} VkAccelerationStructureGeometrySpheresDataNV;
-typedef struct VkMemoryDedicatedAllocateInfo +typedef struct VkAccelerationStructureMemoryRequirementsInfoNV { VkStructureType sType; const void *pNext; - VkImage WINE_VK_ALIGN(8) image; - VkBuffer WINE_VK_ALIGN(8) buffer; -} VkMemoryDedicatedAllocateInfo; -typedef VkMemoryDedicatedAllocateInfo VkMemoryDedicatedAllocateInfoKHR; + VkAccelerationStructureMemoryRequirementsTypeNV type; + VkAccelerationStructureNV WINE_VK_ALIGN(8) accelerationStructure; +} VkAccelerationStructureMemoryRequirementsInfoNV;
-typedef struct VkMemoryDedicatedAllocateInfoTensorARM +typedef struct VkAccelerationStructureMotionInfoNV { VkStructureType sType; const void *pNext; - VkTensorARM WINE_VK_ALIGN(8) tensor; -} VkMemoryDedicatedAllocateInfoTensorARM; + uint32_t maxInstances; + VkAccelerationStructureMotionInfoFlagsNV flags; +} VkAccelerationStructureMotionInfoNV;
-typedef struct VkMemoryDedicatedRequirements +typedef struct VkAccelerationStructureMotionInstanceNV +{ + VkAccelerationStructureMotionInstanceTypeNV type; + VkAccelerationStructureMotionInstanceFlagsNV flags; + VkAccelerationStructureMotionInstanceDataNV WINE_VK_ALIGN(8) data; +} VkAccelerationStructureMotionInstanceNV; + +typedef struct VkAccelerationStructureTrianglesOpacityMicromapEXT { VkStructureType sType; void *pNext; - VkBool32 prefersDedicatedAllocation; - VkBool32 requiresDedicatedAllocation; -} VkMemoryDedicatedRequirements; -typedef VkMemoryDedicatedRequirements VkMemoryDedicatedRequirementsKHR; + VkIndexType indexType; + VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) indexBuffer; + VkDeviceSize WINE_VK_ALIGN(8) indexStride; + uint32_t baseTriangle; + uint32_t usageCountsCount; + const VkMicromapUsageEXT *pUsageCounts; + const VkMicromapUsageEXT * const*ppUsageCounts; + VkMicromapEXT WINE_VK_ALIGN(8) micromap; +} VkAccelerationStructureTrianglesOpacityMicromapEXT;
-typedef struct VkMemoryGetWin32HandleInfoKHR +typedef struct VkAccelerationStructureVersionInfoKHR { VkStructureType sType; const void *pNext; - VkDeviceMemory WINE_VK_ALIGN(8) memory; - VkExternalMemoryHandleTypeFlagBits handleType; -} VkMemoryGetWin32HandleInfoKHR; - -typedef struct VkMemoryHeap -{ - VkDeviceSize WINE_VK_ALIGN(8) size; - VkMemoryHeapFlags flags; -} VkMemoryHeap; + const uint8_t *pVersionData; +} VkAccelerationStructureVersionInfoKHR;
-typedef struct VkMemoryHostPointerPropertiesEXT +typedef struct VkAcquireNextImageInfoKHR { VkStructureType sType; - void *pNext; - uint32_t memoryTypeBits; -} VkMemoryHostPointerPropertiesEXT; + const void *pNext; + VkSwapchainKHR WINE_VK_ALIGN(8) swapchain; + uint64_t WINE_VK_ALIGN(8) timeout; + VkSemaphore WINE_VK_ALIGN(8) semaphore; + VkFence WINE_VK_ALIGN(8) fence; + uint32_t deviceMask; +} VkAcquireNextImageInfoKHR;
-typedef struct VkMemoryMapInfo +typedef struct VkAcquireProfilingLockInfoKHR { VkStructureType sType; const void *pNext; - VkMemoryMapFlags flags; - VkDeviceMemory WINE_VK_ALIGN(8) memory; - VkDeviceSize WINE_VK_ALIGN(8) offset; - VkDeviceSize WINE_VK_ALIGN(8) size; -} VkMemoryMapInfo; -typedef VkMemoryMapInfo VkMemoryMapInfoKHR; + VkAcquireProfilingLockFlagsKHR flags; + uint64_t WINE_VK_ALIGN(8) timeout; +} VkAcquireProfilingLockInfoKHR;
-typedef struct VkMemoryMapPlacedInfoEXT +typedef struct VkAllocationCallbacks { - VkStructureType sType; - const void *pNext; - void *pPlacedAddress; -} VkMemoryMapPlacedInfoEXT; + void *pUserData; + PFN_vkAllocationFunction pfnAllocation; + PFN_vkReallocationFunction pfnReallocation; + PFN_vkFreeFunction pfnFree; + PFN_vkInternalAllocationNotification pfnInternalAllocation; + PFN_vkInternalFreeNotification pfnInternalFree; +} VkAllocationCallbacks;
-typedef struct VkMemoryOpaqueCaptureAddressAllocateInfo +typedef struct VkAntiLagDataAMD { VkStructureType sType; const void *pNext; - uint64_t WINE_VK_ALIGN(8) opaqueCaptureAddress; -} VkMemoryOpaqueCaptureAddressAllocateInfo; -typedef VkMemoryOpaqueCaptureAddressAllocateInfo VkMemoryOpaqueCaptureAddressAllocateInfoKHR; + VkAntiLagModeAMD mode; + uint32_t maxFPS; + const VkAntiLagPresentationInfoAMD *pPresentationInfo; +} VkAntiLagDataAMD;
-typedef struct VkMemoryPriorityAllocateInfoEXT +typedef struct VkAttachmentDescriptionStencilLayout { VkStructureType sType; - const void *pNext; - float priority; -} VkMemoryPriorityAllocateInfoEXT; + void *pNext; + VkImageLayout stencilInitialLayout; + VkImageLayout stencilFinalLayout; +} VkAttachmentDescriptionStencilLayout; +typedef VkAttachmentDescriptionStencilLayout VkAttachmentDescriptionStencilLayoutKHR;
-typedef struct VkMemoryRequirements +typedef struct VkAttachmentFeedbackLoopInfoEXT { - VkDeviceSize WINE_VK_ALIGN(8) size; - VkDeviceSize WINE_VK_ALIGN(8) alignment; - uint32_t memoryTypeBits; -} VkMemoryRequirements; + VkStructureType sType; + const void *pNext; + VkBool32 feedbackLoopEnable; +} VkAttachmentFeedbackLoopInfoEXT;
-typedef struct VkMemoryRequirements2 +typedef struct VkAttachmentReferenceStencilLayout { VkStructureType sType; void *pNext; - VkMemoryRequirements WINE_VK_ALIGN(8) memoryRequirements; -} VkMemoryRequirements2; -typedef VkMemoryRequirements2 VkMemoryRequirements2KHR; - + VkImageLayout stencilLayout; +} VkAttachmentReferenceStencilLayout; +typedef VkAttachmentReferenceStencilLayout VkAttachmentReferenceStencilLayoutKHR;
-typedef struct VkMemoryType +typedef struct VkAttachmentSampleCountInfoAMD { - VkMemoryPropertyFlags propertyFlags; - uint32_t heapIndex; -} VkMemoryType; + VkStructureType sType; + const void *pNext; + uint32_t colorAttachmentCount; + const VkSampleCountFlagBits *pColorAttachmentSamples; + VkSampleCountFlagBits depthStencilAttachmentSamples; +} VkAttachmentSampleCountInfoAMD; +typedef VkAttachmentSampleCountInfoAMD VkAttachmentSampleCountInfoNV;
-typedef struct VkMemoryUnmapInfo +typedef struct VkBaseInStructure { VkStructureType sType; - const void *pNext; - VkMemoryUnmapFlags flags; - VkDeviceMemory WINE_VK_ALIGN(8) memory; -} VkMemoryUnmapInfo; -typedef VkMemoryUnmapInfo VkMemoryUnmapInfoKHR; + const struct VkBaseInStructure *pNext; +} VkBaseInStructure;
-typedef struct VkMemoryWin32HandlePropertiesKHR +typedef struct VkBaseOutStructure { VkStructureType sType; - void *pNext; - uint32_t memoryTypeBits; -} VkMemoryWin32HandlePropertiesKHR; + struct VkBaseOutStructure *pNext; +} VkBaseOutStructure;
-typedef struct VkMetalSurfaceCreateInfoEXT +typedef struct VkBindAccelerationStructureMemoryInfoNV { VkStructureType sType; const void *pNext; - VkMetalSurfaceCreateFlagsEXT flags; - const CAMetalLayer *pLayer; -} VkMetalSurfaceCreateInfoEXT; + VkAccelerationStructureNV WINE_VK_ALIGN(8) accelerationStructure; + VkDeviceMemory WINE_VK_ALIGN(8) memory; + VkDeviceSize WINE_VK_ALIGN(8) memoryOffset; + uint32_t deviceIndexCount; + const uint32_t *pDeviceIndices; +} VkBindAccelerationStructureMemoryInfoNV;
-typedef struct VkMicromapBuildSizesInfoEXT +typedef struct VkBindBufferMemoryDeviceGroupInfo { VkStructureType sType; const void *pNext; - VkDeviceSize WINE_VK_ALIGN(8) micromapSize; - VkDeviceSize WINE_VK_ALIGN(8) buildScratchSize; - VkBool32 discardable; -} VkMicromapBuildSizesInfoEXT; + uint32_t deviceIndexCount; + const uint32_t *pDeviceIndices; +} VkBindBufferMemoryDeviceGroupInfo; +typedef VkBindBufferMemoryDeviceGroupInfo VkBindBufferMemoryDeviceGroupInfoKHR;
-typedef struct VkMicromapCreateInfoEXT +typedef struct VkBindBufferMemoryInfo { VkStructureType sType; const void *pNext; - VkMicromapCreateFlagsEXT createFlags; VkBuffer WINE_VK_ALIGN(8) buffer; - VkDeviceSize WINE_VK_ALIGN(8) offset; - VkDeviceSize WINE_VK_ALIGN(8) size; - VkMicromapTypeEXT type; - VkDeviceAddress WINE_VK_ALIGN(8) deviceAddress; -} VkMicromapCreateInfoEXT; - -typedef struct VkMicromapTriangleEXT -{ - uint32_t dataOffset; - uint16_t subdivisionLevel; - uint16_t format; -} VkMicromapTriangleEXT; + VkDeviceMemory WINE_VK_ALIGN(8) memory; + VkDeviceSize WINE_VK_ALIGN(8) memoryOffset; +} VkBindBufferMemoryInfo; +typedef VkBindBufferMemoryInfo VkBindBufferMemoryInfoKHR;
-typedef struct VkMicromapUsageEXT +typedef struct VkBindDataGraphPipelineSessionMemoryInfoARM { - uint32_t count; - uint32_t subdivisionLevel; - uint32_t format; -} VkMicromapUsageEXT; + VkStructureType sType; + const void *pNext; + VkDataGraphPipelineSessionARM WINE_VK_ALIGN(8) session; + VkDataGraphPipelineSessionBindPointARM bindPoint; + uint32_t objectIndex; + VkDeviceMemory WINE_VK_ALIGN(8) memory; + VkDeviceSize WINE_VK_ALIGN(8) memoryOffset; +} VkBindDataGraphPipelineSessionMemoryInfoARM;
-typedef struct VkMicromapVersionInfoEXT +typedef struct VkBindDescriptorBufferEmbeddedSamplersInfoEXT { VkStructureType sType; const void *pNext; - const uint8_t *pVersionData; -} VkMicromapVersionInfoEXT; + VkShaderStageFlags stageFlags; + VkPipelineLayout WINE_VK_ALIGN(8) layout; + uint32_t set; +} VkBindDescriptorBufferEmbeddedSamplersInfoEXT;
-typedef struct VkMultiDrawIndexedInfoEXT +typedef struct VkBindDescriptorSetsInfo { - uint32_t firstIndex; - uint32_t indexCount; - int32_t vertexOffset; -} VkMultiDrawIndexedInfoEXT; + VkStructureType sType; + const void *pNext; + VkShaderStageFlags stageFlags; + VkPipelineLayout WINE_VK_ALIGN(8) layout; + uint32_t firstSet; + uint32_t descriptorSetCount; + const VkDescriptorSet *pDescriptorSets; + uint32_t dynamicOffsetCount; + const uint32_t *pDynamicOffsets; +} VkBindDescriptorSetsInfo; +typedef VkBindDescriptorSetsInfo VkBindDescriptorSetsInfoKHR;
-typedef struct VkMultiDrawInfoEXT +typedef struct VkBindImageMemoryDeviceGroupInfo { - uint32_t firstVertex; - uint32_t vertexCount; -} VkMultiDrawInfoEXT; + VkStructureType sType; + const void *pNext; + uint32_t deviceIndexCount; + const uint32_t *pDeviceIndices; + uint32_t splitInstanceBindRegionCount; + const VkRect2D *pSplitInstanceBindRegions; +} VkBindImageMemoryDeviceGroupInfo; +typedef VkBindImageMemoryDeviceGroupInfo VkBindImageMemoryDeviceGroupInfoKHR;
-typedef struct VkMultisamplePropertiesEXT +typedef struct VkBindImageMemoryInfo { VkStructureType sType; - void *pNext; - VkExtent2D maxSampleLocationGridSize; -} VkMultisamplePropertiesEXT; + const void *pNext; + VkImage WINE_VK_ALIGN(8) image; + VkDeviceMemory WINE_VK_ALIGN(8) memory; + VkDeviceSize WINE_VK_ALIGN(8) memoryOffset; +} VkBindImageMemoryInfo; +typedef VkBindImageMemoryInfo VkBindImageMemoryInfoKHR;
-typedef struct VkMultisampledRenderToSingleSampledInfoEXT +typedef struct VkBindImageMemorySwapchainInfoKHR { VkStructureType sType; const void *pNext; - VkBool32 multisampledRenderToSingleSampledEnable; - VkSampleCountFlagBits rasterizationSamples; -} VkMultisampledRenderToSingleSampledInfoEXT; + VkSwapchainKHR WINE_VK_ALIGN(8) swapchain; + uint32_t imageIndex; +} VkBindImageMemorySwapchainInfoKHR;
-typedef struct VkMutableDescriptorTypeListEXT +typedef struct VkBindImagePlaneMemoryInfo { - uint32_t descriptorTypeCount; - const VkDescriptorType *pDescriptorTypes; -} VkMutableDescriptorTypeListEXT; -typedef VkMutableDescriptorTypeListEXT VkMutableDescriptorTypeListVALVE; + VkStructureType sType; + const void *pNext; + VkImageAspectFlagBits planeAspect; +} VkBindImagePlaneMemoryInfo; +typedef VkBindImagePlaneMemoryInfo VkBindImagePlaneMemoryInfoKHR;
-typedef struct VkOffset2D +typedef struct VkBindIndexBufferIndirectCommandEXT { - int32_t x; - int32_t y; -} VkOffset2D; + VkDeviceAddress WINE_VK_ALIGN(8) bufferAddress; + uint32_t size; + VkIndexType indexType; +} VkBindIndexBufferIndirectCommandEXT;
-typedef struct VkOffset3D +typedef struct VkBindIndexBufferIndirectCommandNV { - int32_t x; - int32_t y; - int32_t z; -} VkOffset3D; + VkDeviceAddress WINE_VK_ALIGN(8) bufferAddress; + uint32_t size; + VkIndexType indexType; +} VkBindIndexBufferIndirectCommandNV;
-typedef struct VkOpaqueCaptureDescriptorDataCreateInfoEXT +typedef struct VkBindMemoryStatus { VkStructureType sType; const void *pNext; - const void *opaqueCaptureDescriptorData; -} VkOpaqueCaptureDescriptorDataCreateInfoEXT; + VkResult *pResult; +} VkBindMemoryStatus; +typedef VkBindMemoryStatus VkBindMemoryStatusKHR;
-typedef struct VkOpticalFlowImageFormatInfoNV +typedef struct VkBindPipelineIndirectCommandNV +{ + VkDeviceAddress WINE_VK_ALIGN(8) pipelineAddress; +} VkBindPipelineIndirectCommandNV; + +typedef struct VkBindShaderGroupIndirectCommandNV +{ + uint32_t groupIndex; +} VkBindShaderGroupIndirectCommandNV; + +typedef struct VkBindSparseInfo { VkStructureType sType; const void *pNext; - VkOpticalFlowUsageFlagsNV usage; -} VkOpticalFlowImageFormatInfoNV; + uint32_t waitSemaphoreCount; + const VkSemaphore *pWaitSemaphores; + uint32_t bufferBindCount; + const VkSparseBufferMemoryBindInfo *pBufferBinds; + uint32_t imageOpaqueBindCount; + const VkSparseImageOpaqueMemoryBindInfo *pImageOpaqueBinds; + uint32_t imageBindCount; + const VkSparseImageMemoryBindInfo *pImageBinds; + uint32_t signalSemaphoreCount; + const VkSemaphore *pSignalSemaphores; +} VkBindSparseInfo;
-typedef struct VkOpticalFlowImageFormatPropertiesNV +typedef struct VkBindTensorMemoryInfoARM { VkStructureType sType; const void *pNext; - VkFormat format; -} VkOpticalFlowImageFormatPropertiesNV; + VkTensorARM WINE_VK_ALIGN(8) tensor; + VkDeviceMemory WINE_VK_ALIGN(8) memory; + VkDeviceSize WINE_VK_ALIGN(8) memoryOffset; +} VkBindTensorMemoryInfoARM;
-typedef struct VkOpticalFlowSessionCreateInfoNV +typedef struct VkBindVertexBufferIndirectCommandEXT { - VkStructureType sType; - void *pNext; - uint32_t width; - uint32_t height; - VkFormat imageFormat; - VkFormat flowVectorFormat; - VkFormat costFormat; - VkOpticalFlowGridSizeFlagsNV outputGridSize; - VkOpticalFlowGridSizeFlagsNV hintGridSize; - VkOpticalFlowPerformanceLevelNV performanceLevel; - VkOpticalFlowSessionCreateFlagsNV flags; -} VkOpticalFlowSessionCreateInfoNV; + VkDeviceAddress WINE_VK_ALIGN(8) bufferAddress; + uint32_t size; + uint32_t stride; +} VkBindVertexBufferIndirectCommandEXT;
-typedef struct VkOpticalFlowSessionCreatePrivateDataInfoNV +typedef struct VkBindVertexBufferIndirectCommandNV { - VkStructureType sType; - void *pNext; - uint32_t id; + VkDeviceAddress WINE_VK_ALIGN(8) bufferAddress; uint32_t size; - const void *pPrivateData; -} VkOpticalFlowSessionCreatePrivateDataInfoNV; + uint32_t stride; +} VkBindVertexBufferIndirectCommandNV;
-typedef struct VkOutOfBandQueueTypeInfoNV +typedef struct VkBindVideoSessionMemoryInfoKHR { VkStructureType sType; const void *pNext; - VkOutOfBandQueueTypeNV queueType; -} VkOutOfBandQueueTypeInfoNV; + uint32_t memoryBindIndex; + VkDeviceMemory WINE_VK_ALIGN(8) memory; + VkDeviceSize WINE_VK_ALIGN(8) memoryOffset; + VkDeviceSize WINE_VK_ALIGN(8) memorySize; +} VkBindVideoSessionMemoryInfoKHR;
-typedef struct VkPartitionedAccelerationStructureFlagsNV +typedef struct VkBlitImageCubicWeightsInfoQCOM { VkStructureType sType; - void *pNext; - VkBool32 enablePartitionTranslation; -} VkPartitionedAccelerationStructureFlagsNV; + const void *pNext; + VkCubicFilterWeightsQCOM cubicWeights; +} VkBlitImageCubicWeightsInfoQCOM;
-typedef struct VkPartitionedAccelerationStructureInstancesInputNV +typedef struct VkBlitImageInfo2 { VkStructureType sType; - void *pNext; - VkBuildAccelerationStructureFlagsKHR flags; - uint32_t instanceCount; - uint32_t maxInstancePerPartitionCount; - uint32_t partitionCount; - uint32_t maxInstanceInGlobalPartitionCount; -} VkPartitionedAccelerationStructureInstancesInputNV; + const void *pNext; + VkImage WINE_VK_ALIGN(8) srcImage; + VkImageLayout srcImageLayout; + VkImage WINE_VK_ALIGN(8) dstImage; + VkImageLayout dstImageLayout; + uint32_t regionCount; + const VkImageBlit2 *pRegions; + VkFilter filter; +} VkBlitImageInfo2; +typedef VkBlitImageInfo2 VkBlitImageInfo2KHR;
-typedef struct VkPartitionedAccelerationStructureUpdateInstanceDataNV +typedef struct VkBufferCaptureDescriptorDataInfoEXT { - uint32_t instanceIndex; - uint32_t instanceContributionToHitGroupIndex; - VkDeviceAddress WINE_VK_ALIGN(8) accelerationStructure; -} VkPartitionedAccelerationStructureUpdateInstanceDataNV; + VkStructureType sType; + const void *pNext; + VkBuffer WINE_VK_ALIGN(8) buffer; +} VkBufferCaptureDescriptorDataInfoEXT;
-typedef struct VkPartitionedAccelerationStructureWritePartitionTranslationDataNV +typedef struct VkBufferCopy { - uint32_t partitionIndex; - float partitionTranslation[3]; -} VkPartitionedAccelerationStructureWritePartitionTranslationDataNV; + VkDeviceSize WINE_VK_ALIGN(8) srcOffset; + VkDeviceSize WINE_VK_ALIGN(8) dstOffset; + VkDeviceSize WINE_VK_ALIGN(8) size; +} VkBufferCopy;
-typedef struct VkPerTileBeginInfoQCOM +typedef struct VkBufferDeviceAddressCreateInfoEXT { VkStructureType sType; const void *pNext; -} VkPerTileBeginInfoQCOM; + VkDeviceAddress WINE_VK_ALIGN(8) deviceAddress; +} VkBufferDeviceAddressCreateInfoEXT;
-typedef struct VkPerTileEndInfoQCOM +typedef struct VkBufferDeviceAddressInfo { VkStructureType sType; const void *pNext; -} VkPerTileEndInfoQCOM; + VkBuffer WINE_VK_ALIGN(8) buffer; +} VkBufferDeviceAddressInfo; +typedef VkBufferDeviceAddressInfo VkBufferDeviceAddressInfoKHR; +typedef VkBufferDeviceAddressInfo VkBufferDeviceAddressInfoEXT;
-typedef struct VkPerformanceConfigurationAcquireInfoINTEL +typedef struct VkBufferImageCopy { - VkStructureType sType; - const void *pNext; - VkPerformanceConfigurationTypeINTEL type; -} VkPerformanceConfigurationAcquireInfoINTEL; + VkDeviceSize WINE_VK_ALIGN(8) bufferOffset; + uint32_t bufferRowLength; + uint32_t bufferImageHeight; + VkImageSubresourceLayers imageSubresource; + VkOffset3D imageOffset; + VkExtent3D imageExtent; +} VkBufferImageCopy;
-typedef struct VkPerformanceCounterDescriptionKHR +typedef struct VkBufferMemoryBarrier { VkStructureType sType; - void *pNext; - VkPerformanceCounterDescriptionFlagsKHR flags; - char name[VK_MAX_DESCRIPTION_SIZE]; - char category[VK_MAX_DESCRIPTION_SIZE]; - char description[VK_MAX_DESCRIPTION_SIZE]; -} VkPerformanceCounterDescriptionKHR; + const void *pNext; + VkAccessFlags srcAccessMask; + VkAccessFlags dstAccessMask; + uint32_t srcQueueFamilyIndex; + uint32_t dstQueueFamilyIndex; + VkBuffer WINE_VK_ALIGN(8) buffer; + VkDeviceSize WINE_VK_ALIGN(8) offset; + VkDeviceSize WINE_VK_ALIGN(8) size; +} VkBufferMemoryBarrier;
-typedef struct VkPerformanceCounterKHR +typedef struct VkBufferMemoryRequirementsInfo2 { VkStructureType sType; - void *pNext; - VkPerformanceCounterUnitKHR unit; - VkPerformanceCounterScopeKHR scope; - VkPerformanceCounterStorageKHR storage; - uint8_t uuid[VK_UUID_SIZE]; -} VkPerformanceCounterKHR; + const void *pNext; + VkBuffer WINE_VK_ALIGN(8) buffer; +} VkBufferMemoryRequirementsInfo2; +typedef VkBufferMemoryRequirementsInfo2 VkBufferMemoryRequirementsInfo2KHR;
-typedef union VkPerformanceCounterResultKHR -{ - int32_t int32; - int64_t int64; - uint32_t uint32; - uint64_t WINE_VK_ALIGN(8) uint64; - float float32; - double float64; -} VkPerformanceCounterResultKHR; - -typedef struct VkPerformanceMarkerInfoINTEL +typedef struct VkBufferOpaqueCaptureAddressCreateInfo { VkStructureType sType; const void *pNext; - uint64_t WINE_VK_ALIGN(8) marker; -} VkPerformanceMarkerInfoINTEL; + uint64_t WINE_VK_ALIGN(8) opaqueCaptureAddress; +} VkBufferOpaqueCaptureAddressCreateInfo; +typedef VkBufferOpaqueCaptureAddressCreateInfo VkBufferOpaqueCaptureAddressCreateInfoKHR;
-typedef struct VkPerformanceOverrideInfoINTEL +typedef struct VkBufferUsageFlags2CreateInfo { VkStructureType sType; const void *pNext; - VkPerformanceOverrideTypeINTEL type; - VkBool32 enable; - uint64_t WINE_VK_ALIGN(8) parameter; -} VkPerformanceOverrideInfoINTEL; + VkBufferUsageFlags2 WINE_VK_ALIGN(8) usage; +} VkBufferUsageFlags2CreateInfo; +typedef VkBufferUsageFlags2CreateInfo VkBufferUsageFlags2CreateInfoKHR;
-typedef struct VkPerformanceQueryReservationInfoKHR +typedef struct VkBufferViewCreateInfo { VkStructureType sType; const void *pNext; - uint32_t maxPerformanceQueriesPerPool; -} VkPerformanceQueryReservationInfoKHR; + VkBufferViewCreateFlags flags; + VkBuffer WINE_VK_ALIGN(8) buffer; + VkFormat format; + VkDeviceSize WINE_VK_ALIGN(8) offset; + VkDeviceSize WINE_VK_ALIGN(8) range; +} VkBufferViewCreateInfo;
-typedef struct VkPerformanceQuerySubmitInfoKHR +typedef struct VkBuildPartitionedAccelerationStructureIndirectCommandNV { - VkStructureType sType; - const void *pNext; - uint32_t counterPassIndex; -} VkPerformanceQuerySubmitInfoKHR; + VkPartitionedAccelerationStructureOpTypeNV opType; + uint32_t argCount; + VkStridedDeviceAddressNV WINE_VK_ALIGN(8) argData; +} VkBuildPartitionedAccelerationStructureIndirectCommandNV;
-typedef struct VkPerformanceStreamMarkerInfoINTEL +typedef struct VkBuildPartitionedAccelerationStructureInfoNV { VkStructureType sType; - const void *pNext; - uint32_t marker; -} VkPerformanceStreamMarkerInfoINTEL; - -typedef union VkPerformanceValueDataINTEL -{ - uint32_t value32; - uint64_t WINE_VK_ALIGN(8) value64; - float valueFloat; - VkBool32 valueBool; - const char *valueString; -} VkPerformanceValueDataINTEL; - -typedef struct VkPerformanceValueINTEL -{ - VkPerformanceValueTypeINTEL type; - VkPerformanceValueDataINTEL WINE_VK_ALIGN(8) data; -} VkPerformanceValueINTEL; + void *pNext; + VkPartitionedAccelerationStructureInstancesInputNV input; + VkDeviceAddress WINE_VK_ALIGN(8) srcAccelerationStructureData; + VkDeviceAddress WINE_VK_ALIGN(8) dstAccelerationStructureData; + VkDeviceAddress WINE_VK_ALIGN(8) scratchData; + VkDeviceAddress WINE_VK_ALIGN(8) srcInfos; + VkDeviceAddress WINE_VK_ALIGN(8) srcInfosCount; +} VkBuildPartitionedAccelerationStructureInfoNV;
-typedef struct VkPhysicalDevice16BitStorageFeatures +typedef struct VkCalibratedTimestampInfoKHR { VkStructureType sType; - void *pNext; - VkBool32 storageBuffer16BitAccess; - VkBool32 uniformAndStorageBuffer16BitAccess; - VkBool32 storagePushConstant16; - VkBool32 storageInputOutput16; -} VkPhysicalDevice16BitStorageFeatures; -typedef VkPhysicalDevice16BitStorageFeatures VkPhysicalDevice16BitStorageFeaturesKHR; + const void *pNext; + VkTimeDomainKHR timeDomain; +} VkCalibratedTimestampInfoKHR; +typedef VkCalibratedTimestampInfoKHR VkCalibratedTimestampInfoEXT;
-typedef struct VkPhysicalDevice4444FormatsFeaturesEXT +typedef struct VkCheckpointData2NV { VkStructureType sType; void *pNext; - VkBool32 formatA4R4G4B4; - VkBool32 formatA4B4G4R4; -} VkPhysicalDevice4444FormatsFeaturesEXT; + VkPipelineStageFlags2 WINE_VK_ALIGN(8) stage; + void *pCheckpointMarker; +} VkCheckpointData2NV;
-typedef struct VkPhysicalDevice8BitStorageFeatures +typedef struct VkCheckpointDataNV { VkStructureType sType; void *pNext; - VkBool32 storageBuffer8BitAccess; - VkBool32 uniformAndStorageBuffer8BitAccess; - VkBool32 storagePushConstant8; -} VkPhysicalDevice8BitStorageFeatures; -typedef VkPhysicalDevice8BitStorageFeatures VkPhysicalDevice8BitStorageFeaturesKHR; + VkPipelineStageFlagBits stage; + void *pCheckpointMarker; +} VkCheckpointDataNV;
-typedef struct VkPhysicalDeviceASTCDecodeFeaturesEXT +typedef struct VkClearAttachment { - VkStructureType sType; - void *pNext; - VkBool32 decodeModeSharedExponent; -} VkPhysicalDeviceASTCDecodeFeaturesEXT; + VkImageAspectFlags aspectMask; + uint32_t colorAttachment; + VkClearValue clearValue; +} VkClearAttachment;
-typedef struct VkPhysicalDeviceAccelerationStructureFeaturesKHR +typedef struct VkClearRect { - VkStructureType sType; - void *pNext; - VkBool32 accelerationStructure; - VkBool32 accelerationStructureCaptureReplay; - VkBool32 accelerationStructureIndirectBuild; - VkBool32 accelerationStructureHostCommands; - VkBool32 descriptorBindingAccelerationStructureUpdateAfterBind; -} VkPhysicalDeviceAccelerationStructureFeaturesKHR; + VkRect2D rect; + uint32_t baseArrayLayer; + uint32_t layerCount; +} VkClearRect;
-typedef struct VkPhysicalDeviceAccelerationStructurePropertiesKHR +typedef struct VkClusterAccelerationStructureBuildClustersBottomLevelInfoNV { - VkStructureType sType; - void *pNext; - uint64_t WINE_VK_ALIGN(8) maxGeometryCount; - uint64_t WINE_VK_ALIGN(8) maxInstanceCount; - uint64_t WINE_VK_ALIGN(8) maxPrimitiveCount; - uint32_t maxPerStageDescriptorAccelerationStructures; - uint32_t maxPerStageDescriptorUpdateAfterBindAccelerationStructures; - uint32_t maxDescriptorSetAccelerationStructures; - uint32_t maxDescriptorSetUpdateAfterBindAccelerationStructures; - uint32_t minAccelerationStructureScratchOffsetAlignment; -} VkPhysicalDeviceAccelerationStructurePropertiesKHR; + uint32_t clusterReferencesCount; + uint32_t clusterReferencesStride; + VkDeviceAddress WINE_VK_ALIGN(8) clusterReferences; +} VkClusterAccelerationStructureBuildClustersBottomLevelInfoNV;
-typedef struct VkPhysicalDeviceAddressBindingReportFeaturesEXT +typedef struct VkClusterAccelerationStructureBuildTriangleClusterInfoNV { - VkStructureType sType; - void *pNext; - VkBool32 reportAddressBinding; -} VkPhysicalDeviceAddressBindingReportFeaturesEXT; + uint32_t clusterID; + VkClusterAccelerationStructureClusterFlagsNV clusterFlags; + uint32_t triangleCount:9; + uint32_t vertexCount:9; + uint32_t positionTruncateBitCount:6; + uint32_t indexType:4; + uint32_t opacityMicromapIndexType:4; + VkClusterAccelerationStructureGeometryIndexAndGeometryFlagsNV baseGeometryIndexAndGeometryFlags; + uint16_t indexBufferStride; + uint16_t vertexBufferStride; + uint16_t geometryIndexAndFlagsBufferStride; + uint16_t opacityMicromapIndexBufferStride; + VkDeviceAddress WINE_VK_ALIGN(8) indexBuffer; + VkDeviceAddress WINE_VK_ALIGN(8) vertexBuffer; + VkDeviceAddress WINE_VK_ALIGN(8) geometryIndexAndFlagsBuffer; + VkDeviceAddress WINE_VK_ALIGN(8) opacityMicromapArray; + VkDeviceAddress WINE_VK_ALIGN(8) opacityMicromapIndexBuffer; +} VkClusterAccelerationStructureBuildTriangleClusterInfoNV;
-typedef struct VkPhysicalDeviceAntiLagFeaturesAMD +typedef struct VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV { - VkStructureType sType; - void *pNext; - VkBool32 antiLag; -} VkPhysicalDeviceAntiLagFeaturesAMD; + uint32_t clusterID; + VkClusterAccelerationStructureClusterFlagsNV clusterFlags; + uint32_t triangleCount:9; + uint32_t vertexCount:9; + uint32_t positionTruncateBitCount:6; + uint32_t indexType:4; + uint32_t opacityMicromapIndexType:4; + VkClusterAccelerationStructureGeometryIndexAndGeometryFlagsNV baseGeometryIndexAndGeometryFlags; + uint16_t indexBufferStride; + uint16_t vertexBufferStride; + uint16_t geometryIndexAndFlagsBufferStride; + uint16_t opacityMicromapIndexBufferStride; + VkDeviceAddress WINE_VK_ALIGN(8) indexBuffer; + VkDeviceAddress WINE_VK_ALIGN(8) vertexBuffer; + VkDeviceAddress WINE_VK_ALIGN(8) geometryIndexAndFlagsBuffer; + VkDeviceAddress WINE_VK_ALIGN(8) opacityMicromapArray; + VkDeviceAddress WINE_VK_ALIGN(8) opacityMicromapIndexBuffer; + VkDeviceAddress WINE_VK_ALIGN(8) instantiationBoundingBoxLimit; +} VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV;
-typedef struct VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT +typedef struct VkClusterAccelerationStructureCommandsInfoNV { VkStructureType sType; void *pNext; - VkBool32 attachmentFeedbackLoopDynamicState; -} VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT; + VkClusterAccelerationStructureInputInfoNV input; + VkDeviceAddress WINE_VK_ALIGN(8) dstImplicitData; + VkDeviceAddress WINE_VK_ALIGN(8) scratchData; + VkStridedDeviceAddressRegionKHR WINE_VK_ALIGN(8) dstAddressesArray; + VkStridedDeviceAddressRegionKHR WINE_VK_ALIGN(8) dstSizesArray; + VkStridedDeviceAddressRegionKHR WINE_VK_ALIGN(8) srcInfosArray; + VkDeviceAddress WINE_VK_ALIGN(8) srcInfosCount; + VkClusterAccelerationStructureAddressResolutionFlagsNV addressResolutionFlags; +} VkClusterAccelerationStructureCommandsInfoNV;
-typedef struct VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT +typedef struct VkClusterAccelerationStructureGetTemplateIndicesInfoNV { - VkStructureType sType; - void *pNext; - VkBool32 attachmentFeedbackLoopLayout; -} VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT; + VkDeviceAddress WINE_VK_ALIGN(8) clusterTemplateAddress; +} VkClusterAccelerationStructureGetTemplateIndicesInfoNV;
-typedef struct VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT +typedef struct VkClusterAccelerationStructureInstantiateClusterInfoNV { - VkStructureType sType; - void *pNext; - VkBool32 advancedBlendCoherentOperations; -} VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT; + uint32_t clusterIdOffset; + uint32_t geometryIndexOffset:24; + uint32_t reserved:8; + VkDeviceAddress WINE_VK_ALIGN(8) clusterTemplateAddress; + VkStridedDeviceAddressNV WINE_VK_ALIGN(8) vertexBuffer; +} VkClusterAccelerationStructureInstantiateClusterInfoNV;
-typedef struct VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT +typedef struct VkClusterAccelerationStructureMoveObjectsInfoNV { - VkStructureType sType; - void *pNext; - uint32_t advancedBlendMaxColorAttachments; - VkBool32 advancedBlendIndependentBlend; - VkBool32 advancedBlendNonPremultipliedSrcColor; - VkBool32 advancedBlendNonPremultipliedDstColor; - VkBool32 advancedBlendCorrelatedOverlap; - VkBool32 advancedBlendAllOperations; -} VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT; + VkDeviceAddress WINE_VK_ALIGN(8) srcAccelerationStructure; +} VkClusterAccelerationStructureMoveObjectsInfoNV;
-typedef struct VkPhysicalDeviceBorderColorSwizzleFeaturesEXT +typedef struct VkColorBlendAdvancedEXT { - VkStructureType sType; - void *pNext; - VkBool32 borderColorSwizzle; - VkBool32 borderColorSwizzleFromImage; -} VkPhysicalDeviceBorderColorSwizzleFeaturesEXT; + VkBlendOp advancedBlendOp; + VkBool32 srcPremultiplied; + VkBool32 dstPremultiplied; + VkBlendOverlapEXT blendOverlap; + VkBool32 clampResults; +} VkColorBlendAdvancedEXT;
-typedef struct VkPhysicalDeviceBufferDeviceAddressFeatures +typedef struct VkColorBlendEquationEXT { - VkStructureType sType; - void *pNext; - VkBool32 bufferDeviceAddress; - VkBool32 bufferDeviceAddressCaptureReplay; - VkBool32 bufferDeviceAddressMultiDevice; -} VkPhysicalDeviceBufferDeviceAddressFeatures; -typedef VkPhysicalDeviceBufferDeviceAddressFeatures VkPhysicalDeviceBufferDeviceAddressFeaturesKHR; + VkBlendFactor srcColorBlendFactor; + VkBlendFactor dstColorBlendFactor; + VkBlendOp colorBlendOp; + VkBlendFactor srcAlphaBlendFactor; + VkBlendFactor dstAlphaBlendFactor; + VkBlendOp alphaBlendOp; +} VkColorBlendEquationEXT;
-typedef struct VkPhysicalDeviceBufferDeviceAddressFeaturesEXT +typedef struct VkCommandBufferAllocateInfo { VkStructureType sType; - void *pNext; - VkBool32 bufferDeviceAddress; - VkBool32 bufferDeviceAddressCaptureReplay; - VkBool32 bufferDeviceAddressMultiDevice; -} VkPhysicalDeviceBufferDeviceAddressFeaturesEXT; -typedef VkPhysicalDeviceBufferDeviceAddressFeaturesEXT VkPhysicalDeviceBufferAddressFeaturesEXT; + const void *pNext; + VkCommandPool WINE_VK_ALIGN(8) commandPool; + VkCommandBufferLevel level; + uint32_t commandBufferCount; +} VkCommandBufferAllocateInfo;
-typedef struct VkPhysicalDeviceClusterAccelerationStructureFeaturesNV +typedef struct VkCommandBufferBeginInfo { VkStructureType sType; - void *pNext; - VkBool32 clusterAccelerationStructure; -} VkPhysicalDeviceClusterAccelerationStructureFeaturesNV; + const void *pNext; + VkCommandBufferUsageFlags flags; + const VkCommandBufferInheritanceInfo *pInheritanceInfo; +} VkCommandBufferBeginInfo;
-typedef struct VkPhysicalDeviceClusterAccelerationStructurePropertiesNV +typedef struct VkCommandBufferInheritanceConditionalRenderingInfoEXT { VkStructureType sType; - void *pNext; - uint32_t maxVerticesPerCluster; - uint32_t maxTrianglesPerCluster; - uint32_t clusterScratchByteAlignment; - uint32_t clusterByteAlignment; - uint32_t clusterTemplateByteAlignment; - uint32_t clusterBottomLevelByteAlignment; - uint32_t clusterTemplateBoundsByteAlignment; - uint32_t maxClusterGeometryIndex; -} VkPhysicalDeviceClusterAccelerationStructurePropertiesNV; + const void *pNext; + VkBool32 conditionalRenderingEnable; +} VkCommandBufferInheritanceConditionalRenderingInfoEXT;
-typedef struct VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI +typedef struct VkCommandBufferInheritanceRenderPassTransformInfoQCOM { VkStructureType sType; - void *pNext; - VkBool32 clustercullingShader; - VkBool32 multiviewClusterCullingShader; -} VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI; + const void *pNext; + VkSurfaceTransformFlagBitsKHR transform; + VkRect2D renderArea; +} VkCommandBufferInheritanceRenderPassTransformInfoQCOM;
-typedef struct VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI +typedef struct VkCommandBufferInheritanceRenderingInfo { VkStructureType sType; - void *pNext; - uint32_t maxWorkGroupCount[3]; - uint32_t maxWorkGroupSize[3]; - uint32_t maxOutputClusterCount; - VkDeviceSize WINE_VK_ALIGN(8) indirectBufferOffsetAlignment; -} VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI; + const void *pNext; + VkRenderingFlags flags; + uint32_t viewMask; + uint32_t colorAttachmentCount; + const VkFormat *pColorAttachmentFormats; + VkFormat depthAttachmentFormat; + VkFormat stencilAttachmentFormat; + VkSampleCountFlagBits rasterizationSamples; +} VkCommandBufferInheritanceRenderingInfo; +typedef VkCommandBufferInheritanceRenderingInfo VkCommandBufferInheritanceRenderingInfoKHR;
-typedef struct VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI +typedef struct VkCommandBufferInheritanceViewportScissorInfoNV { VkStructureType sType; - void *pNext; - VkBool32 clusterShadingRate; -} VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI; + const void *pNext; + VkBool32 viewportScissor2D; + uint32_t viewportDepthCount; + const VkViewport *pViewportDepths; +} VkCommandBufferInheritanceViewportScissorInfoNV;
-typedef struct VkPhysicalDeviceCoherentMemoryFeaturesAMD +typedef struct VkCommandPoolCreateInfo { VkStructureType sType; - void *pNext; - VkBool32 deviceCoherentMemory; -} VkPhysicalDeviceCoherentMemoryFeaturesAMD; + const void *pNext; + VkCommandPoolCreateFlags flags; + uint32_t queueFamilyIndex; +} VkCommandPoolCreateInfo;
-typedef struct VkPhysicalDeviceColorWriteEnableFeaturesEXT +typedef struct VkComputePipelineCreateInfo { VkStructureType sType; - void *pNext; - VkBool32 colorWriteEnable; -} VkPhysicalDeviceColorWriteEnableFeaturesEXT; + const void *pNext; + VkPipelineCreateFlags flags; + VkPipelineShaderStageCreateInfo WINE_VK_ALIGN(8) stage; + VkPipelineLayout WINE_VK_ALIGN(8) layout; + VkPipeline WINE_VK_ALIGN(8) basePipelineHandle; + int32_t basePipelineIndex; +} VkComputePipelineCreateInfo;
-typedef struct VkPhysicalDeviceCommandBufferInheritanceFeaturesNV +typedef struct VkComputePipelineIndirectBufferInfoNV { VkStructureType sType; - void *pNext; - VkBool32 commandBufferInheritance; -} VkPhysicalDeviceCommandBufferInheritanceFeaturesNV; + const void *pNext; + VkDeviceAddress WINE_VK_ALIGN(8) deviceAddress; + VkDeviceSize WINE_VK_ALIGN(8) size; + VkDeviceAddress WINE_VK_ALIGN(8) pipelineDeviceAddressCaptureReplay; +} VkComputePipelineIndirectBufferInfoNV;
-typedef struct VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR +typedef struct VkConditionalRenderingBeginInfoEXT { VkStructureType sType; - void *pNext; - VkBool32 computeDerivativeGroupQuads; - VkBool32 computeDerivativeGroupLinear; -} VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR; -typedef VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR VkPhysicalDeviceComputeShaderDerivativesFeaturesNV; + const void *pNext; + VkBuffer WINE_VK_ALIGN(8) buffer; + VkDeviceSize WINE_VK_ALIGN(8) offset; + VkConditionalRenderingFlagsEXT flags; +} VkConditionalRenderingBeginInfoEXT;
-typedef struct VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR +typedef struct VkConvertCooperativeVectorMatrixInfoNV { VkStructureType sType; - void *pNext; - VkBool32 meshAndTaskShaderDerivatives; -} VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR; + const void *pNext; + size_t srcSize; + VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) srcData; + size_t *pDstSize; + VkDeviceOrHostAddressKHR WINE_VK_ALIGN(8) dstData; + VkComponentTypeKHR srcComponentType; + VkComponentTypeKHR dstComponentType; + uint32_t numRows; + uint32_t numColumns; + VkCooperativeVectorMatrixLayoutNV srcLayout; + size_t srcStride; + VkCooperativeVectorMatrixLayoutNV dstLayout; + size_t dstStride; +} VkConvertCooperativeVectorMatrixInfoNV;
-typedef struct VkPhysicalDeviceConditionalRenderingFeaturesEXT +typedef struct VkCooperativeMatrixFlexibleDimensionsPropertiesNV { VkStructureType sType; void *pNext; - VkBool32 conditionalRendering; - VkBool32 inheritedConditionalRendering; -} VkPhysicalDeviceConditionalRenderingFeaturesEXT; + uint32_t MGranularity; + uint32_t NGranularity; + uint32_t KGranularity; + VkComponentTypeKHR AType; + VkComponentTypeKHR BType; + VkComponentTypeKHR CType; + VkComponentTypeKHR ResultType; + VkBool32 saturatingAccumulation; + VkScopeKHR scope; + uint32_t workgroupInvocations; +} VkCooperativeMatrixFlexibleDimensionsPropertiesNV;
-typedef struct VkPhysicalDeviceConservativeRasterizationPropertiesEXT +typedef struct VkCooperativeMatrixPropertiesKHR { VkStructureType sType; void *pNext; - float primitiveOverestimationSize; - float maxExtraPrimitiveOverestimationSize; - float extraPrimitiveOverestimationSizeGranularity; - VkBool32 primitiveUnderestimation; - VkBool32 conservativePointAndLineRasterization; - VkBool32 degenerateTrianglesRasterized; - VkBool32 degenerateLinesRasterized; - VkBool32 fullyCoveredFragmentShaderInputVariable; - VkBool32 conservativeRasterizationPostDepthCoverage; -} VkPhysicalDeviceConservativeRasterizationPropertiesEXT; + uint32_t MSize; + uint32_t NSize; + uint32_t KSize; + VkComponentTypeKHR AType; + VkComponentTypeKHR BType; + VkComponentTypeKHR CType; + VkComponentTypeKHR ResultType; + VkBool32 saturatingAccumulation; + VkScopeKHR scope; +} VkCooperativeMatrixPropertiesKHR;
-typedef struct VkPhysicalDeviceCooperativeMatrix2FeaturesNV +typedef struct VkCooperativeMatrixPropertiesNV { VkStructureType sType; void *pNext; - VkBool32 cooperativeMatrixWorkgroupScope; - VkBool32 cooperativeMatrixFlexibleDimensions; - VkBool32 cooperativeMatrixReductions; - VkBool32 cooperativeMatrixConversions; - VkBool32 cooperativeMatrixPerElementOperations; - VkBool32 cooperativeMatrixTensorAddressing; - VkBool32 cooperativeMatrixBlockLoads; -} VkPhysicalDeviceCooperativeMatrix2FeaturesNV; + uint32_t MSize; + uint32_t NSize; + uint32_t KSize; + VkComponentTypeNV AType; + VkComponentTypeNV BType; + VkComponentTypeNV CType; + VkComponentTypeNV DType; + VkScopeNV scope; +} VkCooperativeMatrixPropertiesNV;
-typedef struct VkPhysicalDeviceCooperativeMatrix2PropertiesNV +typedef struct VkCooperativeVectorPropertiesNV { VkStructureType sType; void *pNext; - uint32_t cooperativeMatrixWorkgroupScopeMaxWorkgroupSize; - uint32_t cooperativeMatrixFlexibleDimensionsMaxDimension; - uint32_t cooperativeMatrixWorkgroupScopeReservedSharedMemory; -} VkPhysicalDeviceCooperativeMatrix2PropertiesNV; + VkComponentTypeKHR inputType; + VkComponentTypeKHR inputInterpretation; + VkComponentTypeKHR matrixInterpretation; + VkComponentTypeKHR biasInterpretation; + VkComponentTypeKHR resultType; + VkBool32 transpose; +} VkCooperativeVectorPropertiesNV;
-typedef struct VkPhysicalDeviceCooperativeMatrixFeaturesKHR +typedef struct VkCopyAccelerationStructureInfoKHR { VkStructureType sType; - void *pNext; - VkBool32 cooperativeMatrix; - VkBool32 cooperativeMatrixRobustBufferAccess; -} VkPhysicalDeviceCooperativeMatrixFeaturesKHR; + const void *pNext; + VkAccelerationStructureKHR WINE_VK_ALIGN(8) src; + VkAccelerationStructureKHR WINE_VK_ALIGN(8) dst; + VkCopyAccelerationStructureModeKHR mode; +} VkCopyAccelerationStructureInfoKHR;
-typedef struct VkPhysicalDeviceCooperativeMatrixFeaturesNV +typedef struct VkCopyAccelerationStructureToMemoryInfoKHR { VkStructureType sType; - void *pNext; - VkBool32 cooperativeMatrix; - VkBool32 cooperativeMatrixRobustBufferAccess; -} VkPhysicalDeviceCooperativeMatrixFeaturesNV; + const void *pNext; + VkAccelerationStructureKHR WINE_VK_ALIGN(8) src; + VkDeviceOrHostAddressKHR WINE_VK_ALIGN(8) dst; + VkCopyAccelerationStructureModeKHR mode; +} VkCopyAccelerationStructureToMemoryInfoKHR;
-typedef struct VkPhysicalDeviceCooperativeMatrixPropertiesKHR +typedef struct VkCopyBufferInfo2 { VkStructureType sType; - void *pNext; - VkShaderStageFlags cooperativeMatrixSupportedStages; -} VkPhysicalDeviceCooperativeMatrixPropertiesKHR; + const void *pNext; + VkBuffer WINE_VK_ALIGN(8) srcBuffer; + VkBuffer WINE_VK_ALIGN(8) dstBuffer; + uint32_t regionCount; + const VkBufferCopy2 *pRegions; +} VkCopyBufferInfo2; +typedef VkCopyBufferInfo2 VkCopyBufferInfo2KHR;
-typedef struct VkPhysicalDeviceCooperativeMatrixPropertiesNV +typedef struct VkCopyBufferToImageInfo2 { VkStructureType sType; - void *pNext; - VkShaderStageFlags cooperativeMatrixSupportedStages; -} VkPhysicalDeviceCooperativeMatrixPropertiesNV; + const void *pNext; + VkBuffer WINE_VK_ALIGN(8) srcBuffer; + VkImage WINE_VK_ALIGN(8) dstImage; + VkImageLayout dstImageLayout; + uint32_t regionCount; + const VkBufferImageCopy2 *pRegions; +} VkCopyBufferToImageInfo2; +typedef VkCopyBufferToImageInfo2 VkCopyBufferToImageInfo2KHR;
-typedef struct VkPhysicalDeviceCooperativeVectorFeaturesNV +typedef struct VkCopyCommandTransformInfoQCOM { VkStructureType sType; - void *pNext; - VkBool32 cooperativeVector; - VkBool32 cooperativeVectorTraining; -} VkPhysicalDeviceCooperativeVectorFeaturesNV; + const void *pNext; + VkSurfaceTransformFlagBitsKHR transform; +} VkCopyCommandTransformInfoQCOM;
-typedef struct VkPhysicalDeviceCooperativeVectorPropertiesNV +typedef struct VkCopyDescriptorSet { VkStructureType sType; - void *pNext; - VkShaderStageFlags cooperativeVectorSupportedStages; - VkBool32 cooperativeVectorTrainingFloat16Accumulation; - VkBool32 cooperativeVectorTrainingFloat32Accumulation; - uint32_t maxCooperativeVectorComponents; -} VkPhysicalDeviceCooperativeVectorPropertiesNV; + const void *pNext; + VkDescriptorSet WINE_VK_ALIGN(8) srcSet; + uint32_t srcBinding; + uint32_t srcArrayElement; + VkDescriptorSet WINE_VK_ALIGN(8) dstSet; + uint32_t dstBinding; + uint32_t dstArrayElement; + uint32_t descriptorCount; +} VkCopyDescriptorSet;
-typedef struct VkPhysicalDeviceCopyMemoryIndirectFeaturesNV +typedef struct VkCopyImageInfo2 { VkStructureType sType; - void *pNext; - VkBool32 indirectCopy; -} VkPhysicalDeviceCopyMemoryIndirectFeaturesNV; + const void *pNext; + VkImage WINE_VK_ALIGN(8) srcImage; + VkImageLayout srcImageLayout; + VkImage WINE_VK_ALIGN(8) dstImage; + VkImageLayout dstImageLayout; + uint32_t regionCount; + const VkImageCopy2 *pRegions; +} VkCopyImageInfo2; +typedef VkCopyImageInfo2 VkCopyImageInfo2KHR;
-typedef struct VkPhysicalDeviceCopyMemoryIndirectPropertiesNV +typedef struct VkCopyImageToBufferInfo2 { VkStructureType sType; - void *pNext; - VkQueueFlags supportedQueues; -} VkPhysicalDeviceCopyMemoryIndirectPropertiesNV; + const void *pNext; + VkImage WINE_VK_ALIGN(8) srcImage; + VkImageLayout srcImageLayout; + VkBuffer WINE_VK_ALIGN(8) dstBuffer; + uint32_t regionCount; + const VkBufferImageCopy2 *pRegions; +} VkCopyImageToBufferInfo2; +typedef VkCopyImageToBufferInfo2 VkCopyImageToBufferInfo2KHR;
-typedef struct VkPhysicalDeviceCornerSampledImageFeaturesNV +typedef struct VkCopyImageToImageInfo { VkStructureType sType; - void *pNext; - VkBool32 cornerSampledImage; -} VkPhysicalDeviceCornerSampledImageFeaturesNV; + const void *pNext; + VkHostImageCopyFlags flags; + VkImage WINE_VK_ALIGN(8) srcImage; + VkImageLayout srcImageLayout; + VkImage WINE_VK_ALIGN(8) dstImage; + VkImageLayout dstImageLayout; + uint32_t regionCount; + const VkImageCopy2 *pRegions; +} VkCopyImageToImageInfo; +typedef VkCopyImageToImageInfo VkCopyImageToImageInfoEXT;
-typedef struct VkPhysicalDeviceCoverageReductionModeFeaturesNV +typedef struct VkCopyImageToMemoryInfo { VkStructureType sType; - void *pNext; - VkBool32 coverageReductionMode; -} VkPhysicalDeviceCoverageReductionModeFeaturesNV; + const void *pNext; + VkHostImageCopyFlags flags; + VkImage WINE_VK_ALIGN(8) srcImage; + VkImageLayout srcImageLayout; + uint32_t regionCount; + const VkImageToMemoryCopy *pRegions; +} VkCopyImageToMemoryInfo; +typedef VkCopyImageToMemoryInfo VkCopyImageToMemoryInfoEXT;
-typedef struct VkPhysicalDeviceCubicClampFeaturesQCOM +typedef struct VkCopyMemoryIndirectCommandNV { - VkStructureType sType; - void *pNext; - VkBool32 cubicRangeClamp; -} VkPhysicalDeviceCubicClampFeaturesQCOM; + VkDeviceAddress WINE_VK_ALIGN(8) srcAddress; + VkDeviceAddress WINE_VK_ALIGN(8) dstAddress; + VkDeviceSize WINE_VK_ALIGN(8) size; +} VkCopyMemoryIndirectCommandNV;
-typedef struct VkPhysicalDeviceCubicWeightsFeaturesQCOM +typedef struct VkCopyMemoryToAccelerationStructureInfoKHR { VkStructureType sType; - void *pNext; - VkBool32 selectableCubicWeights; -} VkPhysicalDeviceCubicWeightsFeaturesQCOM; + const void *pNext; + VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) src; + VkAccelerationStructureKHR WINE_VK_ALIGN(8) dst; + VkCopyAccelerationStructureModeKHR mode; +} VkCopyMemoryToAccelerationStructureInfoKHR;
-typedef struct VkPhysicalDeviceCustomBorderColorFeaturesEXT +typedef struct VkCopyMemoryToImageIndirectCommandNV { - VkStructureType sType; - void *pNext; - VkBool32 customBorderColors; - VkBool32 customBorderColorWithoutFormat; -} VkPhysicalDeviceCustomBorderColorFeaturesEXT; + VkDeviceAddress WINE_VK_ALIGN(8) srcAddress; + uint32_t bufferRowLength; + uint32_t bufferImageHeight; + VkImageSubresourceLayers imageSubresource; + VkOffset3D imageOffset; + VkExtent3D imageExtent; +} VkCopyMemoryToImageIndirectCommandNV;
-typedef struct VkPhysicalDeviceCustomBorderColorPropertiesEXT +typedef struct VkCopyMemoryToImageInfo { VkStructureType sType; - void *pNext; - uint32_t maxCustomBorderColorSamplers; -} VkPhysicalDeviceCustomBorderColorPropertiesEXT; + const void *pNext; + VkHostImageCopyFlags flags; + VkImage WINE_VK_ALIGN(8) dstImage; + VkImageLayout dstImageLayout; + uint32_t regionCount; + const VkMemoryToImageCopy *pRegions; +} VkCopyMemoryToImageInfo; +typedef VkCopyMemoryToImageInfo VkCopyMemoryToImageInfoEXT;
-typedef struct VkPhysicalDeviceDataGraphFeaturesARM +typedef struct VkCopyMemoryToMicromapInfoEXT { VkStructureType sType; - void *pNext; - VkBool32 dataGraph; - VkBool32 dataGraphUpdateAfterBind; - VkBool32 dataGraphSpecializationConstants; - VkBool32 dataGraphDescriptorBuffer; - VkBool32 dataGraphShaderModule; -} VkPhysicalDeviceDataGraphFeaturesARM; - -typedef struct VkPhysicalDeviceDataGraphOperationSupportARM -{ - VkPhysicalDeviceDataGraphOperationTypeARM operationType; - char name[VK_MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM]; - uint32_t version; -} VkPhysicalDeviceDataGraphOperationSupportARM; + const void *pNext; + VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) src; + VkMicromapEXT WINE_VK_ALIGN(8) dst; + VkCopyMicromapModeEXT mode; +} VkCopyMemoryToMicromapInfoEXT;
-typedef struct VkPhysicalDeviceDataGraphProcessingEngineARM +typedef struct VkCopyMicromapInfoEXT { - VkPhysicalDeviceDataGraphProcessingEngineTypeARM type; - VkBool32 isForeign; -} VkPhysicalDeviceDataGraphProcessingEngineARM; + VkStructureType sType; + const void *pNext; + VkMicromapEXT WINE_VK_ALIGN(8) src; + VkMicromapEXT WINE_VK_ALIGN(8) dst; + VkCopyMicromapModeEXT mode; +} VkCopyMicromapInfoEXT;
-typedef struct VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV +typedef struct VkCopyMicromapToMemoryInfoEXT { VkStructureType sType; - void *pNext; - VkBool32 dedicatedAllocationImageAliasing; -} VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV; + const void *pNext; + VkMicromapEXT WINE_VK_ALIGN(8) src; + VkDeviceOrHostAddressKHR WINE_VK_ALIGN(8) dst; + VkCopyMicromapModeEXT mode; +} VkCopyMicromapToMemoryInfoEXT;
-typedef struct VkPhysicalDeviceDepthBiasControlFeaturesEXT +typedef struct VkCopyTensorInfoARM { VkStructureType sType; - void *pNext; - VkBool32 depthBiasControl; - VkBool32 leastRepresentableValueForceUnormRepresentation; - VkBool32 floatRepresentation; - VkBool32 depthBiasExact; -} VkPhysicalDeviceDepthBiasControlFeaturesEXT; + const void *pNext; + VkTensorARM WINE_VK_ALIGN(8) srcTensor; + VkTensorARM WINE_VK_ALIGN(8) dstTensor; + uint32_t regionCount; + const VkTensorCopyARM *pRegions; +} VkCopyTensorInfoARM;
-typedef struct VkPhysicalDeviceDepthClampControlFeaturesEXT +typedef struct VkCuFunctionCreateInfoNVX { VkStructureType sType; - void *pNext; - VkBool32 depthClampControl; -} VkPhysicalDeviceDepthClampControlFeaturesEXT; + const void *pNext; + VkCuModuleNVX WINE_VK_ALIGN(8) module; + const char *pName; +} VkCuFunctionCreateInfoNVX;
-typedef struct VkPhysicalDeviceDepthClampZeroOneFeaturesKHR +typedef struct VkCuLaunchInfoNVX { VkStructureType sType; - void *pNext; - VkBool32 depthClampZeroOne; -} VkPhysicalDeviceDepthClampZeroOneFeaturesKHR; -typedef VkPhysicalDeviceDepthClampZeroOneFeaturesKHR VkPhysicalDeviceDepthClampZeroOneFeaturesEXT; + const void *pNext; + VkCuFunctionNVX WINE_VK_ALIGN(8) function; + uint32_t gridDimX; + uint32_t gridDimY; + uint32_t gridDimZ; + uint32_t blockDimX; + uint32_t blockDimY; + uint32_t blockDimZ; + uint32_t sharedMemBytes; + size_t paramCount; + const void * const *pParams; + size_t extraCount; + const void * const *pExtras; +} VkCuLaunchInfoNVX;
-typedef struct VkPhysicalDeviceDepthClipControlFeaturesEXT +typedef struct VkCuModuleCreateInfoNVX { VkStructureType sType; - void *pNext; - VkBool32 depthClipControl; -} VkPhysicalDeviceDepthClipControlFeaturesEXT; + const void *pNext; + size_t dataSize; + const void *pData; +} VkCuModuleCreateInfoNVX;
-typedef struct VkPhysicalDeviceDepthClipEnableFeaturesEXT +typedef struct VkCuModuleTexturingModeCreateInfoNVX { VkStructureType sType; - void *pNext; - VkBool32 depthClipEnable; -} VkPhysicalDeviceDepthClipEnableFeaturesEXT; + const void *pNext; + VkBool32 use64bitTexturing; +} VkCuModuleTexturingModeCreateInfoNVX;
-typedef struct VkPhysicalDeviceDepthStencilResolveProperties +typedef struct VkDataGraphPipelineCompilerControlCreateInfoARM { VkStructureType sType; - void *pNext; - VkResolveModeFlags supportedDepthResolveModes; - VkResolveModeFlags supportedStencilResolveModes; - VkBool32 independentResolveNone; - VkBool32 independentResolve; -} VkPhysicalDeviceDepthStencilResolveProperties; -typedef VkPhysicalDeviceDepthStencilResolveProperties VkPhysicalDeviceDepthStencilResolvePropertiesKHR; + const void *pNext; + const char *pVendorOptions; +} VkDataGraphPipelineCompilerControlCreateInfoARM;
-typedef struct VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT +typedef struct VkDataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM { VkStructureType sType; - void *pNext; - size_t combinedImageSamplerDensityMapDescriptorSize; -} VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT; + const void *pNext; + uint32_t dimension; + uint32_t zeroCount; + uint32_t groupSize; +} VkDataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM;
-typedef struct VkPhysicalDeviceDescriptorBufferFeaturesEXT +typedef struct VkDataGraphPipelineCreateInfoARM { VkStructureType sType; - void *pNext; - VkBool32 descriptorBuffer; - VkBool32 descriptorBufferCaptureReplay; - VkBool32 descriptorBufferImageLayoutIgnored; - VkBool32 descriptorBufferPushDescriptors; -} VkPhysicalDeviceDescriptorBufferFeaturesEXT; + const void *pNext; + VkPipelineCreateFlags2KHR flags; + VkPipelineLayout WINE_VK_ALIGN(8) layout; + uint32_t resourceInfoCount; + const VkDataGraphPipelineResourceInfoARM *pResourceInfos; +} VkDataGraphPipelineCreateInfoARM;
-typedef struct VkPhysicalDeviceDescriptorBufferPropertiesEXT +typedef struct VkDataGraphPipelineDispatchInfoARM { VkStructureType sType; void *pNext; - VkBool32 combinedImageSamplerDescriptorSingleArray; - VkBool32 bufferlessPushDescriptors; - VkBool32 allowSamplerImageViewPostSubmitCreation; - VkDeviceSize WINE_VK_ALIGN(8) descriptorBufferOffsetAlignment; - uint32_t maxDescriptorBufferBindings; - uint32_t maxResourceDescriptorBufferBindings; - uint32_t maxSamplerDescriptorBufferBindings; - uint32_t maxEmbeddedImmutableSamplerBindings; - uint32_t maxEmbeddedImmutableSamplers; - size_t bufferCaptureReplayDescriptorDataSize; - size_t imageCaptureReplayDescriptorDataSize; - size_t imageViewCaptureReplayDescriptorDataSize; - size_t samplerCaptureReplayDescriptorDataSize; - size_t accelerationStructureCaptureReplayDescriptorDataSize; - size_t samplerDescriptorSize; - size_t combinedImageSamplerDescriptorSize; - size_t sampledImageDescriptorSize; - size_t storageImageDescriptorSize; - size_t uniformTexelBufferDescriptorSize; - size_t robustUniformTexelBufferDescriptorSize; - size_t storageTexelBufferDescriptorSize; - size_t robustStorageTexelBufferDescriptorSize; - size_t uniformBufferDescriptorSize; - size_t robustUniformBufferDescriptorSize; - size_t storageBufferDescriptorSize; - size_t robustStorageBufferDescriptorSize; - size_t inputAttachmentDescriptorSize; - size_t accelerationStructureDescriptorSize; - VkDeviceSize WINE_VK_ALIGN(8) maxSamplerDescriptorBufferRange; - VkDeviceSize WINE_VK_ALIGN(8) maxResourceDescriptorBufferRange; - VkDeviceSize WINE_VK_ALIGN(8) samplerDescriptorBufferAddressSpaceSize; - VkDeviceSize WINE_VK_ALIGN(8) resourceDescriptorBufferAddressSpaceSize; - VkDeviceSize WINE_VK_ALIGN(8) descriptorBufferAddressSpaceSize; -} VkPhysicalDeviceDescriptorBufferPropertiesEXT; + VkDataGraphPipelineDispatchFlagsARM WINE_VK_ALIGN(8) flags; +} VkDataGraphPipelineDispatchInfoARM;
-typedef struct VkPhysicalDeviceDescriptorBufferTensorFeaturesARM +typedef struct VkDataGraphPipelineIdentifierCreateInfoARM { VkStructureType sType; - void *pNext; - VkBool32 descriptorBufferTensorDescriptors; -} VkPhysicalDeviceDescriptorBufferTensorFeaturesARM; + const void *pNext; + uint32_t identifierSize; + const uint8_t *pIdentifier; +} VkDataGraphPipelineIdentifierCreateInfoARM;
-typedef struct VkPhysicalDeviceDescriptorBufferTensorPropertiesARM +typedef struct VkDataGraphPipelineInfoARM { VkStructureType sType; - void *pNext; - size_t tensorCaptureReplayDescriptorDataSize; - size_t tensorViewCaptureReplayDescriptorDataSize; - size_t tensorDescriptorSize; -} VkPhysicalDeviceDescriptorBufferTensorPropertiesARM; + const void *pNext; + VkPipeline WINE_VK_ALIGN(8) dataGraphPipeline; +} VkDataGraphPipelineInfoARM;
-typedef struct VkPhysicalDeviceDescriptorIndexingFeatures +typedef struct VkDataGraphPipelinePropertyQueryResultARM { VkStructureType sType; - void *pNext; - VkBool32 shaderInputAttachmentArrayDynamicIndexing; - VkBool32 shaderUniformTexelBufferArrayDynamicIndexing; - VkBool32 shaderStorageTexelBufferArrayDynamicIndexing; - VkBool32 shaderUniformBufferArrayNonUniformIndexing; - VkBool32 shaderSampledImageArrayNonUniformIndexing; - VkBool32 shaderStorageBufferArrayNonUniformIndexing; - VkBool32 shaderStorageImageArrayNonUniformIndexing; - VkBool32 shaderInputAttachmentArrayNonUniformIndexing; - VkBool32 shaderUniformTexelBufferArrayNonUniformIndexing; - VkBool32 shaderStorageTexelBufferArrayNonUniformIndexing; - VkBool32 descriptorBindingUniformBufferUpdateAfterBind; - VkBool32 descriptorBindingSampledImageUpdateAfterBind; - VkBool32 descriptorBindingStorageImageUpdateAfterBind; - VkBool32 descriptorBindingStorageBufferUpdateAfterBind; - VkBool32 descriptorBindingUniformTexelBufferUpdateAfterBind; - VkBool32 descriptorBindingStorageTexelBufferUpdateAfterBind; - VkBool32 descriptorBindingUpdateUnusedWhilePending; - VkBool32 descriptorBindingPartiallyBound; - VkBool32 descriptorBindingVariableDescriptorCount; - VkBool32 runtimeDescriptorArray; -} VkPhysicalDeviceDescriptorIndexingFeatures; -typedef VkPhysicalDeviceDescriptorIndexingFeatures VkPhysicalDeviceDescriptorIndexingFeaturesEXT; + const void *pNext; + VkDataGraphPipelinePropertyARM property; + VkBool32 isText; + size_t dataSize; + void *pData; +} VkDataGraphPipelinePropertyQueryResultARM;
-typedef struct VkPhysicalDeviceDescriptorIndexingProperties +typedef struct VkDataGraphPipelineSessionBindPointRequirementARM { VkStructureType sType; - void *pNext; - uint32_t maxUpdateAfterBindDescriptorsInAllPools; - VkBool32 shaderUniformBufferArrayNonUniformIndexingNative; - VkBool32 shaderSampledImageArrayNonUniformIndexingNative; - VkBool32 shaderStorageBufferArrayNonUniformIndexingNative; - VkBool32 shaderStorageImageArrayNonUniformIndexingNative; - VkBool32 shaderInputAttachmentArrayNonUniformIndexingNative; - VkBool32 robustBufferAccessUpdateAfterBind; - VkBool32 quadDivergentImplicitLod; - uint32_t maxPerStageDescriptorUpdateAfterBindSamplers; - uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers; - uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers; - uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages; - uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages; - uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments; - uint32_t maxPerStageUpdateAfterBindResources; - uint32_t maxDescriptorSetUpdateAfterBindSamplers; - uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers; - uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic; - uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers; - uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic; - uint32_t maxDescriptorSetUpdateAfterBindSampledImages; - uint32_t maxDescriptorSetUpdateAfterBindStorageImages; - uint32_t maxDescriptorSetUpdateAfterBindInputAttachments; -} VkPhysicalDeviceDescriptorIndexingProperties; -typedef VkPhysicalDeviceDescriptorIndexingProperties VkPhysicalDeviceDescriptorIndexingPropertiesEXT; + const void *pNext; + VkDataGraphPipelineSessionBindPointARM bindPoint; + VkDataGraphPipelineSessionBindPointTypeARM bindPointType; + uint32_t numObjects; +} VkDataGraphPipelineSessionBindPointRequirementARM;
-typedef struct VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV +typedef struct VkDataGraphPipelineSessionBindPointRequirementsInfoARM { VkStructureType sType; - void *pNext; - VkBool32 descriptorPoolOverallocation; -} VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV; + const void *pNext; + VkDataGraphPipelineSessionARM WINE_VK_ALIGN(8) session; +} VkDataGraphPipelineSessionBindPointRequirementsInfoARM;
-typedef struct VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE +typedef struct VkDataGraphPipelineSessionCreateInfoARM { VkStructureType sType; - void *pNext; - VkBool32 descriptorSetHostMapping; -} VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE; + const void *pNext; + VkDataGraphPipelineSessionCreateFlagsARM WINE_VK_ALIGN(8) flags; + VkPipeline WINE_VK_ALIGN(8) dataGraphPipeline; +} VkDataGraphPipelineSessionCreateInfoARM;
-typedef struct VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV +typedef struct VkDataGraphPipelineSessionMemoryRequirementsInfoARM { VkStructureType sType; - void *pNext; - VkBool32 deviceGeneratedCompute; - VkBool32 deviceGeneratedComputePipelines; - VkBool32 deviceGeneratedComputeCaptureReplay; -} VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV; + const void *pNext; + VkDataGraphPipelineSessionARM WINE_VK_ALIGN(8) session; + VkDataGraphPipelineSessionBindPointARM bindPoint; + uint32_t objectIndex; +} VkDataGraphPipelineSessionMemoryRequirementsInfoARM;
-typedef struct VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT +typedef struct VkDataGraphPipelineShaderModuleCreateInfoARM { VkStructureType sType; - void *pNext; - VkBool32 deviceGeneratedCommands; - VkBool32 dynamicGeneratedPipelineLayout; -} VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT; + const void *pNext; + VkShaderModule WINE_VK_ALIGN(8) module; + const char *pName; + const VkSpecializationInfo *pSpecializationInfo; + uint32_t constantCount; + const VkDataGraphPipelineConstantARM *pConstants; +} VkDataGraphPipelineShaderModuleCreateInfoARM;
-typedef struct VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV +typedef struct VkDataGraphProcessingEngineCreateInfoARM { VkStructureType sType; - void *pNext; - VkBool32 deviceGeneratedCommands; -} VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV; + const void *pNext; + uint32_t processingEngineCount; + VkPhysicalDeviceDataGraphProcessingEngineARM *pProcessingEngines; +} VkDataGraphProcessingEngineCreateInfoARM;
-typedef struct VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT +typedef struct VkDebugMarkerMarkerInfoEXT { VkStructureType sType; - void *pNext; - uint32_t maxIndirectPipelineCount; - uint32_t maxIndirectShaderObjectCount; - uint32_t maxIndirectSequenceCount; - uint32_t maxIndirectCommandsTokenCount; - uint32_t maxIndirectCommandsTokenOffset; - uint32_t maxIndirectCommandsIndirectStride; - VkIndirectCommandsInputModeFlagsEXT supportedIndirectCommandsInputModes; - VkShaderStageFlags supportedIndirectCommandsShaderStages; - VkShaderStageFlags supportedIndirectCommandsShaderStagesPipelineBinding; - VkShaderStageFlags supportedIndirectCommandsShaderStagesShaderBinding; - VkBool32 deviceGeneratedCommandsTransformFeedback; - VkBool32 deviceGeneratedCommandsMultiDrawIndirectCount; -} VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT; + const void *pNext; + const char *pMarkerName; + float color[4]; +} VkDebugMarkerMarkerInfoEXT;
-typedef struct VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV +typedef struct VkDebugMarkerObjectNameInfoEXT { VkStructureType sType; - void *pNext; - uint32_t maxGraphicsShaderGroupCount; - uint32_t maxIndirectSequenceCount; - uint32_t maxIndirectCommandsTokenCount; - uint32_t maxIndirectCommandsStreamCount; - uint32_t maxIndirectCommandsTokenOffset; - uint32_t maxIndirectCommandsStreamStride; - uint32_t minSequencesCountBufferOffsetAlignment; - uint32_t minSequencesIndexBufferOffsetAlignment; - uint32_t minIndirectCommandsBufferOffsetAlignment; -} VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV; + const void *pNext; + VkDebugReportObjectTypeEXT objectType; + uint64_t WINE_VK_ALIGN(8) object; + const char *pObjectName; +} VkDebugMarkerObjectNameInfoEXT;
-typedef struct VkPhysicalDeviceDiagnosticsConfigFeaturesNV +typedef struct VkDebugMarkerObjectTagInfoEXT { VkStructureType sType; - void *pNext; - VkBool32 diagnosticsConfig; -} VkPhysicalDeviceDiagnosticsConfigFeaturesNV; + const void *pNext; + VkDebugReportObjectTypeEXT objectType; + uint64_t WINE_VK_ALIGN(8) object; + uint64_t WINE_VK_ALIGN(8) tagName; + size_t tagSize; + const void *pTag; +} VkDebugMarkerObjectTagInfoEXT;
-typedef struct VkPhysicalDeviceDiscardRectanglePropertiesEXT +typedef struct VkDebugReportCallbackCreateInfoEXT { VkStructureType sType; - void *pNext; - uint32_t maxDiscardRectangles; -} VkPhysicalDeviceDiscardRectanglePropertiesEXT; + const void *pNext; + VkDebugReportFlagsEXT flags; + PFN_vkDebugReportCallbackEXT pfnCallback; + void *pUserData; +} VkDebugReportCallbackCreateInfoEXT;
-typedef struct VkPhysicalDeviceDriverProperties +typedef struct VkDebugUtilsMessengerCallbackDataEXT { VkStructureType sType; - void *pNext; - VkDriverId driverID; - char driverName[VK_MAX_DRIVER_NAME_SIZE]; - char driverInfo[VK_MAX_DRIVER_INFO_SIZE]; - VkConformanceVersion conformanceVersion; -} VkPhysicalDeviceDriverProperties; -typedef VkPhysicalDeviceDriverProperties VkPhysicalDeviceDriverPropertiesKHR; + const void *pNext; + VkDebugUtilsMessengerCallbackDataFlagsEXT flags; + const char *pMessageIdName; + int32_t messageIdNumber; + const char *pMessage; + uint32_t queueLabelCount; + const VkDebugUtilsLabelEXT *pQueueLabels; + uint32_t cmdBufLabelCount; + const VkDebugUtilsLabelEXT *pCmdBufLabels; + uint32_t objectCount; + const VkDebugUtilsObjectNameInfoEXT *pObjects; +} VkDebugUtilsMessengerCallbackDataEXT;
-typedef struct VkPhysicalDeviceDynamicRenderingFeatures +typedef struct VkDebugUtilsMessengerCreateInfoEXT { VkStructureType sType; - void *pNext; - VkBool32 dynamicRendering; -} VkPhysicalDeviceDynamicRenderingFeatures; -typedef VkPhysicalDeviceDynamicRenderingFeatures VkPhysicalDeviceDynamicRenderingFeaturesKHR; + const void *pNext; + VkDebugUtilsMessengerCreateFlagsEXT flags; + VkDebugUtilsMessageSeverityFlagsEXT messageSeverity; + VkDebugUtilsMessageTypeFlagsEXT messageType; + PFN_vkDebugUtilsMessengerCallbackEXT pfnUserCallback; + void *pUserData; +} VkDebugUtilsMessengerCreateInfoEXT;
-typedef struct VkPhysicalDeviceDynamicRenderingLocalReadFeatures +typedef struct VkDebugUtilsObjectTagInfoEXT { VkStructureType sType; - void *pNext; - VkBool32 dynamicRenderingLocalRead; -} VkPhysicalDeviceDynamicRenderingLocalReadFeatures; -typedef VkPhysicalDeviceDynamicRenderingLocalReadFeatures VkPhysicalDeviceDynamicRenderingLocalReadFeaturesKHR; + const void *pNext; + VkObjectType objectType; + uint64_t WINE_VK_ALIGN(8) objectHandle; + uint64_t WINE_VK_ALIGN(8) tagName; + size_t tagSize; + const void *pTag; +} VkDebugUtilsObjectTagInfoEXT;
-typedef struct VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT +typedef struct VkDecompressMemoryRegionNV +{ + VkDeviceAddress WINE_VK_ALIGN(8) srcAddress; + VkDeviceAddress WINE_VK_ALIGN(8) dstAddress; + VkDeviceSize WINE_VK_ALIGN(8) compressedSize; + VkDeviceSize WINE_VK_ALIGN(8) decompressedSize; + VkMemoryDecompressionMethodFlagsNV WINE_VK_ALIGN(8) decompressionMethod; +} VkDecompressMemoryRegionNV; + +typedef struct VkDedicatedAllocationBufferCreateInfoNV { VkStructureType sType; - void *pNext; - VkBool32 dynamicRenderingUnusedAttachments; -} VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT; + const void *pNext; + VkBool32 dedicatedAllocation; +} VkDedicatedAllocationBufferCreateInfoNV;
-typedef struct VkPhysicalDeviceExclusiveScissorFeaturesNV +typedef struct VkDedicatedAllocationImageCreateInfoNV { VkStructureType sType; - void *pNext; - VkBool32 exclusiveScissor; -} VkPhysicalDeviceExclusiveScissorFeaturesNV; + const void *pNext; + VkBool32 dedicatedAllocation; +} VkDedicatedAllocationImageCreateInfoNV;
-typedef struct VkPhysicalDeviceExtendedDynamicState2FeaturesEXT +typedef struct VkDedicatedAllocationMemoryAllocateInfoNV { VkStructureType sType; - void *pNext; - VkBool32 extendedDynamicState2; - VkBool32 extendedDynamicState2LogicOp; - VkBool32 extendedDynamicState2PatchControlPoints; -} VkPhysicalDeviceExtendedDynamicState2FeaturesEXT; + const void *pNext; + VkImage WINE_VK_ALIGN(8) image; + VkBuffer WINE_VK_ALIGN(8) buffer; +} VkDedicatedAllocationMemoryAllocateInfoNV;
-typedef struct VkPhysicalDeviceExtendedDynamicState3FeaturesEXT +typedef struct VkDependencyInfo { VkStructureType sType; - void *pNext; - VkBool32 extendedDynamicState3TessellationDomainOrigin; - VkBool32 extendedDynamicState3DepthClampEnable; - VkBool32 extendedDynamicState3PolygonMode; - VkBool32 extendedDynamicState3RasterizationSamples; - VkBool32 extendedDynamicState3SampleMask; - VkBool32 extendedDynamicState3AlphaToCoverageEnable; - VkBool32 extendedDynamicState3AlphaToOneEnable; - VkBool32 extendedDynamicState3LogicOpEnable; - VkBool32 extendedDynamicState3ColorBlendEnable; - VkBool32 extendedDynamicState3ColorBlendEquation; - VkBool32 extendedDynamicState3ColorWriteMask; - VkBool32 extendedDynamicState3RasterizationStream; - VkBool32 extendedDynamicState3ConservativeRasterizationMode; - VkBool32 extendedDynamicState3ExtraPrimitiveOverestimationSize; - VkBool32 extendedDynamicState3DepthClipEnable; - VkBool32 extendedDynamicState3SampleLocationsEnable; - VkBool32 extendedDynamicState3ColorBlendAdvanced; - VkBool32 extendedDynamicState3ProvokingVertexMode; - VkBool32 extendedDynamicState3LineRasterizationMode; - VkBool32 extendedDynamicState3LineStippleEnable; - VkBool32 extendedDynamicState3DepthClipNegativeOneToOne; - VkBool32 extendedDynamicState3ViewportWScalingEnable; - VkBool32 extendedDynamicState3ViewportSwizzle; - VkBool32 extendedDynamicState3CoverageToColorEnable; - VkBool32 extendedDynamicState3CoverageToColorLocation; - VkBool32 extendedDynamicState3CoverageModulationMode; - VkBool32 extendedDynamicState3CoverageModulationTableEnable; - VkBool32 extendedDynamicState3CoverageModulationTable; - VkBool32 extendedDynamicState3CoverageReductionMode; - VkBool32 extendedDynamicState3RepresentativeFragmentTestEnable; - VkBool32 extendedDynamicState3ShadingRateImageEnable; -} VkPhysicalDeviceExtendedDynamicState3FeaturesEXT; + const void *pNext; + VkDependencyFlags dependencyFlags; + uint32_t memoryBarrierCount; + const VkMemoryBarrier2 *pMemoryBarriers; + uint32_t bufferMemoryBarrierCount; + const VkBufferMemoryBarrier2 *pBufferMemoryBarriers; + uint32_t imageMemoryBarrierCount; + const VkImageMemoryBarrier2 *pImageMemoryBarriers; +} VkDependencyInfo; +typedef VkDependencyInfo VkDependencyInfoKHR;
-typedef struct VkPhysicalDeviceExtendedDynamicState3PropertiesEXT +typedef struct VkDepthBiasInfoEXT { VkStructureType sType; - void *pNext; - VkBool32 dynamicPrimitiveTopologyUnrestricted; -} VkPhysicalDeviceExtendedDynamicState3PropertiesEXT; + const void *pNext; + float depthBiasConstantFactor; + float depthBiasClamp; + float depthBiasSlopeFactor; +} VkDepthBiasInfoEXT;
-typedef struct VkPhysicalDeviceExtendedDynamicStateFeaturesEXT +typedef struct VkDepthBiasRepresentationInfoEXT { VkStructureType sType; - void *pNext; - VkBool32 extendedDynamicState; -} VkPhysicalDeviceExtendedDynamicStateFeaturesEXT; + const void *pNext; + VkDepthBiasRepresentationEXT depthBiasRepresentation; + VkBool32 depthBiasExact; +} VkDepthBiasRepresentationInfoEXT;
-typedef struct VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV +typedef struct VkDescriptorBufferBindingInfoEXT { VkStructureType sType; - void *pNext; - VkBool32 extendedSparseAddressSpace; -} VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV; + const void *pNext; + VkDeviceAddress WINE_VK_ALIGN(8) address; + VkBufferUsageFlags usage; +} VkDescriptorBufferBindingInfoEXT;
-typedef struct VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV +typedef struct VkDescriptorBufferBindingPushDescriptorBufferHandleEXT { VkStructureType sType; - void *pNext; - VkDeviceSize WINE_VK_ALIGN(8) extendedSparseAddressSpaceSize; - VkImageUsageFlags extendedSparseImageUsageFlags; - VkBufferUsageFlags extendedSparseBufferUsageFlags; -} VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV; + const void *pNext; + VkBuffer WINE_VK_ALIGN(8) buffer; +} VkDescriptorBufferBindingPushDescriptorBufferHandleEXT;
-typedef struct VkPhysicalDeviceExternalBufferInfo +typedef struct VkDescriptorGetInfoEXT { VkStructureType sType; const void *pNext; - VkBufferCreateFlags flags; - VkBufferUsageFlags usage; - VkExternalMemoryHandleTypeFlagBits handleType; -} VkPhysicalDeviceExternalBufferInfo; -typedef VkPhysicalDeviceExternalBufferInfo VkPhysicalDeviceExternalBufferInfoKHR; + VkDescriptorType type; + VkDescriptorDataEXT WINE_VK_ALIGN(8) data; +} VkDescriptorGetInfoEXT;
-typedef struct VkPhysicalDeviceExternalFenceInfo +typedef struct VkDescriptorGetTensorInfoARM { VkStructureType sType; const void *pNext; - VkExternalFenceHandleTypeFlagBits handleType; -} VkPhysicalDeviceExternalFenceInfo; -typedef VkPhysicalDeviceExternalFenceInfo VkPhysicalDeviceExternalFenceInfoKHR; + VkTensorViewARM WINE_VK_ALIGN(8) tensorView; +} VkDescriptorGetTensorInfoARM;
-typedef struct VkPhysicalDeviceExternalImageFormatInfo +typedef struct VkDescriptorPoolCreateInfo { VkStructureType sType; const void *pNext; - VkExternalMemoryHandleTypeFlagBits handleType; -} VkPhysicalDeviceExternalImageFormatInfo; -typedef VkPhysicalDeviceExternalImageFormatInfo VkPhysicalDeviceExternalImageFormatInfoKHR; + VkDescriptorPoolCreateFlags flags; + uint32_t maxSets; + uint32_t poolSizeCount; + const VkDescriptorPoolSize *pPoolSizes; +} VkDescriptorPoolCreateInfo;
-typedef struct VkPhysicalDeviceExternalMemoryHostPropertiesEXT +typedef struct VkDescriptorPoolInlineUniformBlockCreateInfo { VkStructureType sType; - void *pNext; - VkDeviceSize WINE_VK_ALIGN(8) minImportedHostPointerAlignment; -} VkPhysicalDeviceExternalMemoryHostPropertiesEXT; + const void *pNext; + uint32_t maxInlineUniformBlockBindings; +} VkDescriptorPoolInlineUniformBlockCreateInfo; +typedef VkDescriptorPoolInlineUniformBlockCreateInfo VkDescriptorPoolInlineUniformBlockCreateInfoEXT;
-typedef struct VkPhysicalDeviceExternalSemaphoreInfo +typedef struct VkDescriptorSetAllocateInfo { VkStructureType sType; const void *pNext; - VkExternalSemaphoreHandleTypeFlagBits handleType; -} VkPhysicalDeviceExternalSemaphoreInfo; -typedef VkPhysicalDeviceExternalSemaphoreInfo VkPhysicalDeviceExternalSemaphoreInfoKHR; + VkDescriptorPool WINE_VK_ALIGN(8) descriptorPool; + uint32_t descriptorSetCount; + const VkDescriptorSetLayout *pSetLayouts; +} VkDescriptorSetAllocateInfo;
-typedef struct VkPhysicalDeviceFaultFeaturesEXT +typedef struct VkDescriptorSetBindingReferenceVALVE +{ + VkStructureType sType; + const void *pNext; + VkDescriptorSetLayout WINE_VK_ALIGN(8) descriptorSetLayout; + uint32_t binding; +} VkDescriptorSetBindingReferenceVALVE; + +typedef struct VkDescriptorSetLayoutBindingFlagsCreateInfo +{ + VkStructureType sType; + const void *pNext; + uint32_t bindingCount; + const VkDescriptorBindingFlags *pBindingFlags; +} VkDescriptorSetLayoutBindingFlagsCreateInfo; +typedef VkDescriptorSetLayoutBindingFlagsCreateInfo VkDescriptorSetLayoutBindingFlagsCreateInfoEXT; + +typedef struct VkDescriptorSetLayoutCreateInfo +{ + VkStructureType sType; + const void *pNext; + VkDescriptorSetLayoutCreateFlags flags; + uint32_t bindingCount; + const VkDescriptorSetLayoutBinding *pBindings; +} VkDescriptorSetLayoutCreateInfo; + +typedef struct VkDescriptorSetLayoutHostMappingInfoVALVE { VkStructureType sType; void *pNext; - VkBool32 deviceFault; - VkBool32 deviceFaultVendorBinary; -} VkPhysicalDeviceFaultFeaturesEXT; + size_t descriptorOffset; + uint32_t descriptorSize; +} VkDescriptorSetLayoutHostMappingInfoVALVE;
-typedef struct VkPhysicalDeviceFeatures -{ - VkBool32 robustBufferAccess; - VkBool32 fullDrawIndexUint32; - VkBool32 imageCubeArray; - VkBool32 independentBlend; - VkBool32 geometryShader; - VkBool32 tessellationShader; - VkBool32 sampleRateShading; - VkBool32 dualSrcBlend; - VkBool32 logicOp; - VkBool32 multiDrawIndirect; - VkBool32 drawIndirectFirstInstance; - VkBool32 depthClamp; - VkBool32 depthBiasClamp; - VkBool32 fillModeNonSolid; - VkBool32 depthBounds; - VkBool32 wideLines; - VkBool32 largePoints; - VkBool32 alphaToOne; - VkBool32 multiViewport; - VkBool32 samplerAnisotropy; - VkBool32 textureCompressionETC2; - VkBool32 textureCompressionASTC_LDR; - VkBool32 textureCompressionBC; - VkBool32 occlusionQueryPrecise; - VkBool32 pipelineStatisticsQuery; - VkBool32 vertexPipelineStoresAndAtomics; - VkBool32 fragmentStoresAndAtomics; - VkBool32 shaderTessellationAndGeometryPointSize; - VkBool32 shaderImageGatherExtended; - VkBool32 shaderStorageImageExtendedFormats; - VkBool32 shaderStorageImageMultisample; - VkBool32 shaderStorageImageReadWithoutFormat; - VkBool32 shaderStorageImageWriteWithoutFormat; - VkBool32 shaderUniformBufferArrayDynamicIndexing; - VkBool32 shaderSampledImageArrayDynamicIndexing; - VkBool32 shaderStorageBufferArrayDynamicIndexing; - VkBool32 shaderStorageImageArrayDynamicIndexing; - VkBool32 shaderClipDistance; - VkBool32 shaderCullDistance; - VkBool32 shaderFloat64; - VkBool32 shaderInt64; - VkBool32 shaderInt16; - VkBool32 shaderResourceResidency; - VkBool32 shaderResourceMinLod; - VkBool32 sparseBinding; - VkBool32 sparseResidencyBuffer; - VkBool32 sparseResidencyImage2D; - VkBool32 sparseResidencyImage3D; - VkBool32 sparseResidency2Samples; - VkBool32 sparseResidency4Samples; - VkBool32 sparseResidency8Samples; - VkBool32 sparseResidency16Samples; - VkBool32 sparseResidencyAliased; - VkBool32 variableMultisampleRate; - VkBool32 inheritedQueries; -} VkPhysicalDeviceFeatures; - -typedef struct VkPhysicalDeviceFeatures2 +typedef struct VkDescriptorSetLayoutSupport { VkStructureType sType; void *pNext; - VkPhysicalDeviceFeatures features; -} VkPhysicalDeviceFeatures2; -typedef VkPhysicalDeviceFeatures2 VkPhysicalDeviceFeatures2KHR; + VkBool32 supported; +} VkDescriptorSetLayoutSupport; +typedef VkDescriptorSetLayoutSupport VkDescriptorSetLayoutSupportKHR;
-typedef struct VkPhysicalDeviceFloatControlsProperties +typedef struct VkDescriptorSetVariableDescriptorCountAllocateInfo { VkStructureType sType; - void *pNext; - VkShaderFloatControlsIndependence denormBehaviorIndependence; - VkShaderFloatControlsIndependence roundingModeIndependence; - VkBool32 shaderSignedZeroInfNanPreserveFloat16; - VkBool32 shaderSignedZeroInfNanPreserveFloat32; - VkBool32 shaderSignedZeroInfNanPreserveFloat64; - VkBool32 shaderDenormPreserveFloat16; - VkBool32 shaderDenormPreserveFloat32; - VkBool32 shaderDenormPreserveFloat64; - VkBool32 shaderDenormFlushToZeroFloat16; - VkBool32 shaderDenormFlushToZeroFloat32; - VkBool32 shaderDenormFlushToZeroFloat64; - VkBool32 shaderRoundingModeRTEFloat16; - VkBool32 shaderRoundingModeRTEFloat32; - VkBool32 shaderRoundingModeRTEFloat64; - VkBool32 shaderRoundingModeRTZFloat16; - VkBool32 shaderRoundingModeRTZFloat32; - VkBool32 shaderRoundingModeRTZFloat64; -} VkPhysicalDeviceFloatControlsProperties; -typedef VkPhysicalDeviceFloatControlsProperties VkPhysicalDeviceFloatControlsPropertiesKHR; + const void *pNext; + uint32_t descriptorSetCount; + const uint32_t *pDescriptorCounts; +} VkDescriptorSetVariableDescriptorCountAllocateInfo; +typedef VkDescriptorSetVariableDescriptorCountAllocateInfo VkDescriptorSetVariableDescriptorCountAllocateInfoEXT;
-typedef struct VkPhysicalDeviceFormatPackFeaturesARM +typedef struct VkDescriptorSetVariableDescriptorCountLayoutSupport { VkStructureType sType; void *pNext; - VkBool32 formatPack; -} VkPhysicalDeviceFormatPackFeaturesARM; + uint32_t maxVariableDescriptorCount; +} VkDescriptorSetVariableDescriptorCountLayoutSupport; +typedef VkDescriptorSetVariableDescriptorCountLayoutSupport VkDescriptorSetVariableDescriptorCountLayoutSupportEXT;
-typedef struct VkPhysicalDeviceFragmentDensityMap2FeaturesEXT +typedef struct VkDescriptorUpdateTemplateCreateInfo { VkStructureType sType; - void *pNext; - VkBool32 fragmentDensityMapDeferred; -} VkPhysicalDeviceFragmentDensityMap2FeaturesEXT; + const void *pNext; + VkDescriptorUpdateTemplateCreateFlags flags; + uint32_t descriptorUpdateEntryCount; + const VkDescriptorUpdateTemplateEntry *pDescriptorUpdateEntries; + VkDescriptorUpdateTemplateType templateType; + VkDescriptorSetLayout WINE_VK_ALIGN(8) descriptorSetLayout; + VkPipelineBindPoint pipelineBindPoint; + VkPipelineLayout WINE_VK_ALIGN(8) pipelineLayout; + uint32_t set; +} VkDescriptorUpdateTemplateCreateInfo; +typedef VkDescriptorUpdateTemplateCreateInfo VkDescriptorUpdateTemplateCreateInfoKHR;
-typedef struct VkPhysicalDeviceFragmentDensityMap2PropertiesEXT +typedef struct VkDeviceAddressBindingCallbackDataEXT { VkStructureType sType; void *pNext; - VkBool32 subsampledLoads; - VkBool32 subsampledCoarseReconstructionEarlyAccess; - uint32_t maxSubsampledArrayLayers; - uint32_t maxDescriptorSetSubsampledSamplers; -} VkPhysicalDeviceFragmentDensityMap2PropertiesEXT; + VkDeviceAddressBindingFlagsEXT flags; + VkDeviceAddress WINE_VK_ALIGN(8) baseAddress; + VkDeviceSize WINE_VK_ALIGN(8) size; + VkDeviceAddressBindingTypeEXT bindingType; +} VkDeviceAddressBindingCallbackDataEXT;
-typedef struct VkPhysicalDeviceFragmentDensityMapFeaturesEXT +typedef struct VkDeviceBufferMemoryRequirements { VkStructureType sType; - void *pNext; - VkBool32 fragmentDensityMap; - VkBool32 fragmentDensityMapDynamic; - VkBool32 fragmentDensityMapNonSubsampledImages; -} VkPhysicalDeviceFragmentDensityMapFeaturesEXT; + const void *pNext; + const VkBufferCreateInfo *pCreateInfo; +} VkDeviceBufferMemoryRequirements; +typedef VkDeviceBufferMemoryRequirements VkDeviceBufferMemoryRequirementsKHR;
-typedef struct VkPhysicalDeviceFragmentDensityMapLayeredFeaturesVALVE +typedef struct VkDeviceCreateInfo { VkStructureType sType; - void *pNext; - VkBool32 fragmentDensityMapLayered; -} VkPhysicalDeviceFragmentDensityMapLayeredFeaturesVALVE; + const void *pNext; + VkDeviceCreateFlags flags; + uint32_t queueCreateInfoCount; + const VkDeviceQueueCreateInfo *pQueueCreateInfos; + uint32_t enabledLayerCount; + const char * const*ppEnabledLayerNames; + uint32_t enabledExtensionCount; + const char * const*ppEnabledExtensionNames; + const VkPhysicalDeviceFeatures *pEnabledFeatures; +} VkDeviceCreateInfo;
-typedef struct VkPhysicalDeviceFragmentDensityMapLayeredPropertiesVALVE +typedef struct VkDeviceDiagnosticsConfigCreateInfoNV { VkStructureType sType; - void *pNext; - uint32_t maxFragmentDensityMapLayers; -} VkPhysicalDeviceFragmentDensityMapLayeredPropertiesVALVE; + const void *pNext; + VkDeviceDiagnosticsConfigFlagsNV flags; +} VkDeviceDiagnosticsConfigCreateInfoNV;
-typedef struct VkPhysicalDeviceFragmentDensityMapOffsetFeaturesEXT +typedef struct VkDeviceFaultCountsEXT { VkStructureType sType; void *pNext; - VkBool32 fragmentDensityMapOffset; -} VkPhysicalDeviceFragmentDensityMapOffsetFeaturesEXT; -typedef VkPhysicalDeviceFragmentDensityMapOffsetFeaturesEXT VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM; + uint32_t addressInfoCount; + uint32_t vendorInfoCount; + VkDeviceSize WINE_VK_ALIGN(8) vendorBinarySize; +} VkDeviceFaultCountsEXT;
-typedef struct VkPhysicalDeviceFragmentDensityMapOffsetPropertiesEXT +typedef struct VkDeviceFaultInfoEXT { VkStructureType sType; void *pNext; - VkExtent2D fragmentDensityOffsetGranularity; -} VkPhysicalDeviceFragmentDensityMapOffsetPropertiesEXT; -typedef VkPhysicalDeviceFragmentDensityMapOffsetPropertiesEXT VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM; + char description[VK_MAX_DESCRIPTION_SIZE]; + VkDeviceFaultAddressInfoEXT *pAddressInfos; + VkDeviceFaultVendorInfoEXT *pVendorInfos; + void *pVendorBinaryData; +} VkDeviceFaultInfoEXT;
-typedef struct VkPhysicalDeviceFragmentDensityMapPropertiesEXT +typedef struct VkDeviceFaultVendorBinaryHeaderVersionOneEXT { - VkStructureType sType; - void *pNext; - VkExtent2D minFragmentDensityTexelSize; - VkExtent2D maxFragmentDensityTexelSize; - VkBool32 fragmentDensityInvocations; -} VkPhysicalDeviceFragmentDensityMapPropertiesEXT; + uint32_t headerSize; + VkDeviceFaultVendorBinaryHeaderVersionEXT headerVersion; + uint32_t vendorID; + uint32_t deviceID; + uint32_t driverVersion; + uint8_t pipelineCacheUUID[VK_UUID_SIZE]; + uint32_t applicationNameOffset; + uint32_t applicationVersion; + uint32_t engineNameOffset; + uint32_t engineVersion; + uint32_t apiVersion; +} VkDeviceFaultVendorBinaryHeaderVersionOneEXT;
-typedef struct VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR +typedef struct VkDeviceGroupBindSparseInfo { VkStructureType sType; - void *pNext; - VkBool32 fragmentShaderBarycentric; -} VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR; -typedef VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV; + const void *pNext; + uint32_t resourceDeviceIndex; + uint32_t memoryDeviceIndex; +} VkDeviceGroupBindSparseInfo; +typedef VkDeviceGroupBindSparseInfo VkDeviceGroupBindSparseInfoKHR;
-typedef struct VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR +typedef struct VkDeviceGroupCommandBufferBeginInfo { VkStructureType sType; - void *pNext; - VkBool32 triStripVertexOrderIndependentOfProvokingVertex; -} VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR; + const void *pNext; + uint32_t deviceMask; +} VkDeviceGroupCommandBufferBeginInfo; +typedef VkDeviceGroupCommandBufferBeginInfo VkDeviceGroupCommandBufferBeginInfoKHR;
-typedef struct VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT +typedef struct VkDeviceGroupDeviceCreateInfo { VkStructureType sType; - void *pNext; - VkBool32 fragmentShaderSampleInterlock; - VkBool32 fragmentShaderPixelInterlock; - VkBool32 fragmentShaderShadingRateInterlock; -} VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT; + const void *pNext; + uint32_t physicalDeviceCount; + const VkPhysicalDevice *pPhysicalDevices; +} VkDeviceGroupDeviceCreateInfo; +typedef VkDeviceGroupDeviceCreateInfo VkDeviceGroupDeviceCreateInfoKHR;
-typedef struct VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV +typedef struct VkDeviceGroupPresentCapabilitiesKHR { VkStructureType sType; void *pNext; - VkBool32 fragmentShadingRateEnums; - VkBool32 supersampleFragmentShadingRates; - VkBool32 noInvocationFragmentShadingRates; -} VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV; + uint32_t presentMask[VK_MAX_DEVICE_GROUP_SIZE]; + VkDeviceGroupPresentModeFlagsKHR modes; +} VkDeviceGroupPresentCapabilitiesKHR;
-typedef struct VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV +typedef struct VkDeviceGroupPresentInfoKHR { VkStructureType sType; - void *pNext; - VkSampleCountFlagBits maxFragmentShadingRateInvocationCount; -} VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV; + const void *pNext; + uint32_t swapchainCount; + const uint32_t *pDeviceMasks; + VkDeviceGroupPresentModeFlagBitsKHR mode; +} VkDeviceGroupPresentInfoKHR;
-typedef struct VkPhysicalDeviceFragmentShadingRateFeaturesKHR +typedef struct VkDeviceGroupRenderPassBeginInfo { VkStructureType sType; - void *pNext; - VkBool32 pipelineFragmentShadingRate; - VkBool32 primitiveFragmentShadingRate; - VkBool32 attachmentFragmentShadingRate; -} VkPhysicalDeviceFragmentShadingRateFeaturesKHR; + const void *pNext; + uint32_t deviceMask; + uint32_t deviceRenderAreaCount; + const VkRect2D *pDeviceRenderAreas; +} VkDeviceGroupRenderPassBeginInfo; +typedef VkDeviceGroupRenderPassBeginInfo VkDeviceGroupRenderPassBeginInfoKHR;
-typedef struct VkPhysicalDeviceFragmentShadingRateKHR +typedef struct VkDeviceGroupSubmitInfo { VkStructureType sType; - void *pNext; - VkSampleCountFlags sampleCounts; - VkExtent2D fragmentSize; -} VkPhysicalDeviceFragmentShadingRateKHR; + const void *pNext; + uint32_t waitSemaphoreCount; + const uint32_t *pWaitSemaphoreDeviceIndices; + uint32_t commandBufferCount; + const uint32_t *pCommandBufferDeviceMasks; + uint32_t signalSemaphoreCount; + const uint32_t *pSignalSemaphoreDeviceIndices; +} VkDeviceGroupSubmitInfo; +typedef VkDeviceGroupSubmitInfo VkDeviceGroupSubmitInfoKHR;
-typedef struct VkPhysicalDeviceFragmentShadingRatePropertiesKHR +typedef struct VkDeviceGroupSwapchainCreateInfoKHR { VkStructureType sType; - void *pNext; - VkExtent2D minFragmentShadingRateAttachmentTexelSize; - VkExtent2D maxFragmentShadingRateAttachmentTexelSize; - uint32_t maxFragmentShadingRateAttachmentTexelSizeAspectRatio; - VkBool32 primitiveFragmentShadingRateWithMultipleViewports; - VkBool32 layeredShadingRateAttachments; - VkBool32 fragmentShadingRateNonTrivialCombinerOps; - VkExtent2D maxFragmentSize; - uint32_t maxFragmentSizeAspectRatio; - uint32_t maxFragmentShadingRateCoverageSamples; - VkSampleCountFlagBits maxFragmentShadingRateRasterizationSamples; - VkBool32 fragmentShadingRateWithShaderDepthStencilWrites; - VkBool32 fragmentShadingRateWithSampleMask; - VkBool32 fragmentShadingRateWithShaderSampleMask; - VkBool32 fragmentShadingRateWithConservativeRasterization; - VkBool32 fragmentShadingRateWithFragmentShaderInterlock; - VkBool32 fragmentShadingRateWithCustomSampleLocations; - VkBool32 fragmentShadingRateStrictMultiplyCombiner; -} VkPhysicalDeviceFragmentShadingRatePropertiesKHR; + const void *pNext; + VkDeviceGroupPresentModeFlagsKHR modes; +} VkDeviceGroupSwapchainCreateInfoKHR;
-typedef struct VkPhysicalDeviceFrameBoundaryFeaturesEXT +typedef struct VkDeviceImageMemoryRequirements { VkStructureType sType; - void *pNext; - VkBool32 frameBoundary; -} VkPhysicalDeviceFrameBoundaryFeaturesEXT; + const void *pNext; + const VkImageCreateInfo *pCreateInfo; + VkImageAspectFlagBits planeAspect; +} VkDeviceImageMemoryRequirements; +typedef VkDeviceImageMemoryRequirements VkDeviceImageMemoryRequirementsKHR;
-typedef struct VkPhysicalDeviceGlobalPriorityQueryFeatures +typedef struct VkDeviceImageSubresourceInfo { VkStructureType sType; - void *pNext; - VkBool32 globalPriorityQuery; -} VkPhysicalDeviceGlobalPriorityQueryFeatures; -typedef VkPhysicalDeviceGlobalPriorityQueryFeatures VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR; -typedef VkPhysicalDeviceGlobalPriorityQueryFeatures VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT; + const void *pNext; + const VkImageCreateInfo *pCreateInfo; + const VkImageSubresource2 *pSubresource; +} VkDeviceImageSubresourceInfo; +typedef VkDeviceImageSubresourceInfo VkDeviceImageSubresourceInfoKHR;
-typedef struct VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT +typedef struct VkDeviceMemoryOpaqueCaptureAddressInfo { VkStructureType sType; - void *pNext; - VkBool32 graphicsPipelineLibrary; -} VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT; + const void *pNext; + VkDeviceMemory WINE_VK_ALIGN(8) memory; +} VkDeviceMemoryOpaqueCaptureAddressInfo; +typedef VkDeviceMemoryOpaqueCaptureAddressInfo VkDeviceMemoryOpaqueCaptureAddressInfoKHR;
-typedef struct VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT +typedef struct VkDeviceMemoryOverallocationCreateInfoAMD { VkStructureType sType; - void *pNext; - VkBool32 graphicsPipelineLibraryFastLinking; - VkBool32 graphicsPipelineLibraryIndependentInterpolationDecoration; -} VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT; + const void *pNext; + VkMemoryOverallocationBehaviorAMD overallocationBehavior; +} VkDeviceMemoryOverallocationCreateInfoAMD;
-typedef struct VkPhysicalDeviceGroupProperties +typedef struct VkDevicePipelineBinaryInternalCacheControlKHR { VkStructureType sType; - void *pNext; - uint32_t physicalDeviceCount; - VkPhysicalDevice physicalDevices[VK_MAX_DEVICE_GROUP_SIZE]; - VkBool32 subsetAllocation; -} VkPhysicalDeviceGroupProperties; -typedef VkPhysicalDeviceGroupProperties VkPhysicalDeviceGroupPropertiesKHR; + const void *pNext; + VkBool32 disableInternalCache; +} VkDevicePipelineBinaryInternalCacheControlKHR;
-typedef struct VkPhysicalDeviceHdrVividFeaturesHUAWEI +typedef struct VkDevicePrivateDataCreateInfo { VkStructureType sType; - void *pNext; - VkBool32 hdrVivid; -} VkPhysicalDeviceHdrVividFeaturesHUAWEI; + const void *pNext; + uint32_t privateDataSlotRequestCount; +} VkDevicePrivateDataCreateInfo; +typedef VkDevicePrivateDataCreateInfo VkDevicePrivateDataCreateInfoEXT;
-typedef struct VkPhysicalDeviceHostImageCopyFeatures +typedef struct VkDeviceQueueGlobalPriorityCreateInfo { VkStructureType sType; - void *pNext; - VkBool32 hostImageCopy; -} VkPhysicalDeviceHostImageCopyFeatures; -typedef VkPhysicalDeviceHostImageCopyFeatures VkPhysicalDeviceHostImageCopyFeaturesEXT; + const void *pNext; + VkQueueGlobalPriority globalPriority; +} VkDeviceQueueGlobalPriorityCreateInfo; +typedef VkDeviceQueueGlobalPriorityCreateInfo VkDeviceQueueGlobalPriorityCreateInfoKHR; +typedef VkDeviceQueueGlobalPriorityCreateInfo VkDeviceQueueGlobalPriorityCreateInfoEXT;
-typedef struct VkPhysicalDeviceHostImageCopyProperties +typedef struct VkDeviceQueueInfo2 { VkStructureType sType; - void *pNext; - uint32_t copySrcLayoutCount; - VkImageLayout *pCopySrcLayouts; - uint32_t copyDstLayoutCount; - VkImageLayout *pCopyDstLayouts; - uint8_t optimalTilingLayoutUUID[VK_UUID_SIZE]; - VkBool32 identicalMemoryTypeRequirements; -} VkPhysicalDeviceHostImageCopyProperties; -typedef VkPhysicalDeviceHostImageCopyProperties VkPhysicalDeviceHostImageCopyPropertiesEXT; + const void *pNext; + VkDeviceQueueCreateFlags flags; + uint32_t queueFamilyIndex; + uint32_t queueIndex; +} VkDeviceQueueInfo2;
-typedef struct VkPhysicalDeviceHostQueryResetFeatures +typedef struct VkDeviceQueueShaderCoreControlCreateInfoARM { VkStructureType sType; void *pNext; - VkBool32 hostQueryReset; -} VkPhysicalDeviceHostQueryResetFeatures; -typedef VkPhysicalDeviceHostQueryResetFeatures VkPhysicalDeviceHostQueryResetFeaturesEXT; + uint32_t shaderCoreCount; +} VkDeviceQueueShaderCoreControlCreateInfoARM;
-typedef struct VkPhysicalDeviceIDProperties +typedef struct VkDeviceTensorMemoryRequirementsARM { VkStructureType sType; - void *pNext; - uint8_t deviceUUID[VK_UUID_SIZE]; - uint8_t driverUUID[VK_UUID_SIZE]; - uint8_t deviceLUID[VK_LUID_SIZE]; - uint32_t deviceNodeMask; - VkBool32 deviceLUIDValid; -} VkPhysicalDeviceIDProperties; -typedef VkPhysicalDeviceIDProperties VkPhysicalDeviceIDPropertiesKHR; + const void *pNext; + const VkTensorCreateInfoARM *pCreateInfo; +} VkDeviceTensorMemoryRequirementsARM;
-typedef struct VkPhysicalDeviceImage2DViewOf3DFeaturesEXT +typedef struct VkDispatchIndirectCommand { - VkStructureType sType; - void *pNext; - VkBool32 image2DViewOf3D; - VkBool32 sampler2DViewOf3D; -} VkPhysicalDeviceImage2DViewOf3DFeaturesEXT; + uint32_t x; + uint32_t y; + uint32_t z; +} VkDispatchIndirectCommand;
-typedef struct VkPhysicalDeviceImageAlignmentControlFeaturesMESA +typedef struct VkDispatchTileInfoQCOM { VkStructureType sType; - void *pNext; - VkBool32 imageAlignmentControl; -} VkPhysicalDeviceImageAlignmentControlFeaturesMESA; + const void *pNext; +} VkDispatchTileInfoQCOM;
-typedef struct VkPhysicalDeviceImageAlignmentControlPropertiesMESA +typedef struct VkDrawIndexedIndirectCommand { - VkStructureType sType; - void *pNext; - uint32_t supportedImageAlignmentMask; -} VkPhysicalDeviceImageAlignmentControlPropertiesMESA; + uint32_t indexCount; + uint32_t instanceCount; + uint32_t firstIndex; + int32_t vertexOffset; + uint32_t firstInstance; +} VkDrawIndexedIndirectCommand;
-typedef struct VkPhysicalDeviceImageCompressionControlFeaturesEXT +typedef struct VkDrawIndirectCommand { - VkStructureType sType; - void *pNext; - VkBool32 imageCompressionControl; -} VkPhysicalDeviceImageCompressionControlFeaturesEXT; + uint32_t vertexCount; + uint32_t instanceCount; + uint32_t firstVertex; + uint32_t firstInstance; +} VkDrawIndirectCommand;
-typedef struct VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT +typedef struct VkDrawIndirectCountIndirectCommandEXT +{ + VkDeviceAddress WINE_VK_ALIGN(8) bufferAddress; + uint32_t stride; + uint32_t commandCount; +} VkDrawIndirectCountIndirectCommandEXT; + +typedef struct VkDrawMeshTasksIndirectCommandEXT +{ + uint32_t groupCountX; + uint32_t groupCountY; + uint32_t groupCountZ; +} VkDrawMeshTasksIndirectCommandEXT; + +typedef struct VkDrawMeshTasksIndirectCommandNV +{ + uint32_t taskCount; + uint32_t firstTask; +} VkDrawMeshTasksIndirectCommandNV; + +typedef struct VkEventCreateInfo { VkStructureType sType; - void *pNext; - VkBool32 imageCompressionControlSwapchain; -} VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT; + const void *pNext; + VkEventCreateFlags flags; +} VkEventCreateInfo;
-typedef struct VkPhysicalDeviceImageFormatInfo2 +typedef struct VkExportFenceCreateInfo { VkStructureType sType; const void *pNext; - VkFormat format; - VkImageType type; - VkImageTiling tiling; - VkImageUsageFlags usage; - VkImageCreateFlags flags; -} VkPhysicalDeviceImageFormatInfo2; -typedef VkPhysicalDeviceImageFormatInfo2 VkPhysicalDeviceImageFormatInfo2KHR; + VkExternalFenceHandleTypeFlags handleTypes; +} VkExportFenceCreateInfo; +typedef VkExportFenceCreateInfo VkExportFenceCreateInfoKHR;
-typedef struct VkPhysicalDeviceImageProcessing2FeaturesQCOM +typedef struct VkExportMemoryAllocateInfo { VkStructureType sType; - void *pNext; - VkBool32 textureBlockMatch2; -} VkPhysicalDeviceImageProcessing2FeaturesQCOM; + const void *pNext; + VkExternalMemoryHandleTypeFlags handleTypes; +} VkExportMemoryAllocateInfo; +typedef VkExportMemoryAllocateInfo VkExportMemoryAllocateInfoKHR;
-typedef struct VkPhysicalDeviceImageProcessing2PropertiesQCOM +typedef struct VkExportMemoryWin32HandleInfoKHR { VkStructureType sType; - void *pNext; - VkExtent2D maxBlockMatchWindow; -} VkPhysicalDeviceImageProcessing2PropertiesQCOM; + const void *pNext; + const SECURITY_ATTRIBUTES *pAttributes; + DWORD dwAccess; + LPCWSTR name; +} VkExportMemoryWin32HandleInfoKHR;
-typedef struct VkPhysicalDeviceImageProcessingFeaturesQCOM +typedef struct VkExportSemaphoreCreateInfo { VkStructureType sType; - void *pNext; - VkBool32 textureSampleWeighted; - VkBool32 textureBoxFilter; - VkBool32 textureBlockMatch; -} VkPhysicalDeviceImageProcessingFeaturesQCOM; + const void *pNext; + VkExternalSemaphoreHandleTypeFlags handleTypes; +} VkExportSemaphoreCreateInfo; +typedef VkExportSemaphoreCreateInfo VkExportSemaphoreCreateInfoKHR;
-typedef struct VkPhysicalDeviceImageProcessingPropertiesQCOM +typedef struct VkExternalBufferProperties { VkStructureType sType; void *pNext; - uint32_t maxWeightFilterPhases; - VkExtent2D maxWeightFilterDimension; - VkExtent2D maxBlockMatchRegion; - VkExtent2D maxBoxFilterBlockSize; -} VkPhysicalDeviceImageProcessingPropertiesQCOM; + VkExternalMemoryProperties externalMemoryProperties; +} VkExternalBufferProperties; +typedef VkExternalBufferProperties VkExternalBufferPropertiesKHR;
-typedef struct VkPhysicalDeviceImageRobustnessFeatures +typedef struct VkExternalFenceProperties { VkStructureType sType; void *pNext; - VkBool32 robustImageAccess; -} VkPhysicalDeviceImageRobustnessFeatures; -typedef VkPhysicalDeviceImageRobustnessFeatures VkPhysicalDeviceImageRobustnessFeaturesEXT; + VkExternalFenceHandleTypeFlags exportFromImportedHandleTypes; + VkExternalFenceHandleTypeFlags compatibleHandleTypes; + VkExternalFenceFeatureFlags externalFenceFeatures; +} VkExternalFenceProperties; +typedef VkExternalFenceProperties VkExternalFencePropertiesKHR;
-typedef struct VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT +typedef struct VkExternalImageFormatProperties { VkStructureType sType; void *pNext; - VkBool32 imageSlicedViewOf3D; -} VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT; + VkExternalMemoryProperties externalMemoryProperties; +} VkExternalImageFormatProperties; +typedef VkExternalImageFormatProperties VkExternalImageFormatPropertiesKHR;
-typedef struct VkPhysicalDeviceImageViewImageFormatInfoEXT +typedef struct VkExternalMemoryAcquireUnmodifiedEXT { VkStructureType sType; - void *pNext; - VkImageViewType imageViewType; -} VkPhysicalDeviceImageViewImageFormatInfoEXT; + const void *pNext; + VkBool32 acquireUnmodifiedMemory; +} VkExternalMemoryAcquireUnmodifiedEXT;
-typedef struct VkPhysicalDeviceImageViewMinLodFeaturesEXT +typedef struct VkExternalMemoryBufferCreateInfo { VkStructureType sType; - void *pNext; - VkBool32 minLod; -} VkPhysicalDeviceImageViewMinLodFeaturesEXT; + const void *pNext; + VkExternalMemoryHandleTypeFlags handleTypes; +} VkExternalMemoryBufferCreateInfo; +typedef VkExternalMemoryBufferCreateInfo VkExternalMemoryBufferCreateInfoKHR;
-typedef struct VkPhysicalDeviceImagelessFramebufferFeatures +typedef struct VkExternalMemoryImageCreateInfo { VkStructureType sType; - void *pNext; - VkBool32 imagelessFramebuffer; -} VkPhysicalDeviceImagelessFramebufferFeatures; -typedef VkPhysicalDeviceImagelessFramebufferFeatures VkPhysicalDeviceImagelessFramebufferFeaturesKHR; + const void *pNext; + VkExternalMemoryHandleTypeFlags handleTypes; +} VkExternalMemoryImageCreateInfo; +typedef VkExternalMemoryImageCreateInfo VkExternalMemoryImageCreateInfoKHR;
-typedef struct VkPhysicalDeviceIndexTypeUint8Features +typedef struct VkExternalMemoryTensorCreateInfoARM { VkStructureType sType; - void *pNext; - VkBool32 indexTypeUint8; -} VkPhysicalDeviceIndexTypeUint8Features; -typedef VkPhysicalDeviceIndexTypeUint8Features VkPhysicalDeviceIndexTypeUint8FeaturesKHR; -typedef VkPhysicalDeviceIndexTypeUint8Features VkPhysicalDeviceIndexTypeUint8FeaturesEXT; + const void *pNext; + VkExternalMemoryHandleTypeFlags handleTypes; +} VkExternalMemoryTensorCreateInfoARM;
-typedef struct VkPhysicalDeviceInheritedViewportScissorFeaturesNV +typedef struct VkExternalSemaphoreProperties { VkStructureType sType; void *pNext; - VkBool32 inheritedViewportScissor2D; -} VkPhysicalDeviceInheritedViewportScissorFeaturesNV; + VkExternalSemaphoreHandleTypeFlags exportFromImportedHandleTypes; + VkExternalSemaphoreHandleTypeFlags compatibleHandleTypes; + VkExternalSemaphoreFeatureFlags externalSemaphoreFeatures; +} VkExternalSemaphoreProperties; +typedef VkExternalSemaphoreProperties VkExternalSemaphorePropertiesKHR;
-typedef struct VkPhysicalDeviceInlineUniformBlockFeatures +typedef struct VkExternalTensorPropertiesARM { VkStructureType sType; - void *pNext; - VkBool32 inlineUniformBlock; - VkBool32 descriptorBindingInlineUniformBlockUpdateAfterBind; -} VkPhysicalDeviceInlineUniformBlockFeatures; -typedef VkPhysicalDeviceInlineUniformBlockFeatures VkPhysicalDeviceInlineUniformBlockFeaturesEXT; + const void *pNext; + VkExternalMemoryProperties externalMemoryProperties; +} VkExternalTensorPropertiesARM;
-typedef struct VkPhysicalDeviceInlineUniformBlockProperties +typedef struct VkFenceCreateInfo { VkStructureType sType; - void *pNext; - uint32_t maxInlineUniformBlockSize; - uint32_t maxPerStageDescriptorInlineUniformBlocks; - uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks; - uint32_t maxDescriptorSetInlineUniformBlocks; - uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks; -} VkPhysicalDeviceInlineUniformBlockProperties; -typedef VkPhysicalDeviceInlineUniformBlockProperties VkPhysicalDeviceInlineUniformBlockPropertiesEXT; + const void *pNext; + VkFenceCreateFlags flags; +} VkFenceCreateInfo;
-typedef struct VkPhysicalDeviceInvocationMaskFeaturesHUAWEI +typedef struct VkFilterCubicImageViewImageFormatPropertiesEXT { VkStructureType sType; void *pNext; - VkBool32 invocationMask; -} VkPhysicalDeviceInvocationMaskFeaturesHUAWEI; + VkBool32 filterCubic; + VkBool32 filterCubicMinmax; +} VkFilterCubicImageViewImageFormatPropertiesEXT;
-typedef struct VkPhysicalDeviceLayeredDriverPropertiesMSFT +typedef struct VkFormatProperties2 { VkStructureType sType; void *pNext; - VkLayeredDriverUnderlyingApiMSFT underlyingAPI; -} VkPhysicalDeviceLayeredDriverPropertiesMSFT; + VkFormatProperties formatProperties; +} VkFormatProperties2; +typedef VkFormatProperties2 VkFormatProperties2KHR;
-typedef struct VkPhysicalDeviceLegacyDitheringFeaturesEXT +typedef struct VkFormatProperties3 { VkStructureType sType; void *pNext; - VkBool32 legacyDithering; -} VkPhysicalDeviceLegacyDitheringFeaturesEXT; + VkFormatFeatureFlags2 WINE_VK_ALIGN(8) linearTilingFeatures; + VkFormatFeatureFlags2 WINE_VK_ALIGN(8) optimalTilingFeatures; + VkFormatFeatureFlags2 WINE_VK_ALIGN(8) bufferFeatures; +} VkFormatProperties3; +typedef VkFormatProperties3 VkFormatProperties3KHR;
-typedef struct VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT +typedef struct VkFragmentShadingRateAttachmentInfoKHR { VkStructureType sType; - void *pNext; - VkBool32 legacyVertexAttributes; -} VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT; + const void *pNext; + const VkAttachmentReference2 *pFragmentShadingRateAttachment; + VkExtent2D shadingRateAttachmentTexelSize; +} VkFragmentShadingRateAttachmentInfoKHR;
-typedef struct VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT +typedef struct VkFrameBoundaryEXT { VkStructureType sType; - void *pNext; - VkBool32 nativeUnalignedPerformance; -} VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT; + const void *pNext; + VkFrameBoundaryFlagsEXT flags; + uint64_t WINE_VK_ALIGN(8) frameID; + uint32_t imageCount; + const VkImage *pImages; + uint32_t bufferCount; + const VkBuffer *pBuffers; + uint64_t WINE_VK_ALIGN(8) tagName; + size_t tagSize; + const void *pTag; +} VkFrameBoundaryEXT;
-typedef struct VkPhysicalDeviceLimits +typedef struct VkFrameBoundaryTensorsARM { - uint32_t maxImageDimension1D; - uint32_t maxImageDimension2D; - uint32_t maxImageDimension3D; - uint32_t maxImageDimensionCube; - uint32_t maxImageArrayLayers; - uint32_t maxTexelBufferElements; - uint32_t maxUniformBufferRange; - uint32_t maxStorageBufferRange; - uint32_t maxPushConstantsSize; - uint32_t maxMemoryAllocationCount; - uint32_t maxSamplerAllocationCount; - VkDeviceSize WINE_VK_ALIGN(8) bufferImageGranularity; - VkDeviceSize WINE_VK_ALIGN(8) sparseAddressSpaceSize; - uint32_t maxBoundDescriptorSets; - uint32_t maxPerStageDescriptorSamplers; - uint32_t maxPerStageDescriptorUniformBuffers; - uint32_t maxPerStageDescriptorStorageBuffers; - uint32_t maxPerStageDescriptorSampledImages; - uint32_t maxPerStageDescriptorStorageImages; - uint32_t maxPerStageDescriptorInputAttachments; - uint32_t maxPerStageResources; - uint32_t maxDescriptorSetSamplers; - uint32_t maxDescriptorSetUniformBuffers; - uint32_t maxDescriptorSetUniformBuffersDynamic; - uint32_t maxDescriptorSetStorageBuffers; - uint32_t maxDescriptorSetStorageBuffersDynamic; - uint32_t maxDescriptorSetSampledImages; - uint32_t maxDescriptorSetStorageImages; - uint32_t maxDescriptorSetInputAttachments; - uint32_t maxVertexInputAttributes; - uint32_t maxVertexInputBindings; - uint32_t maxVertexInputAttributeOffset; - uint32_t maxVertexInputBindingStride; - uint32_t maxVertexOutputComponents; - uint32_t maxTessellationGenerationLevel; - uint32_t maxTessellationPatchSize; - uint32_t maxTessellationControlPerVertexInputComponents; - uint32_t maxTessellationControlPerVertexOutputComponents; - uint32_t maxTessellationControlPerPatchOutputComponents; - uint32_t maxTessellationControlTotalOutputComponents; - uint32_t maxTessellationEvaluationInputComponents; - uint32_t maxTessellationEvaluationOutputComponents; - uint32_t maxGeometryShaderInvocations; - uint32_t maxGeometryInputComponents; - uint32_t maxGeometryOutputComponents; - uint32_t maxGeometryOutputVertices; - uint32_t maxGeometryTotalOutputComponents; - uint32_t maxFragmentInputComponents; - uint32_t maxFragmentOutputAttachments; - uint32_t maxFragmentDualSrcAttachments; - uint32_t maxFragmentCombinedOutputResources; - uint32_t maxComputeSharedMemorySize; - uint32_t maxComputeWorkGroupCount[3]; - uint32_t maxComputeWorkGroupInvocations; - uint32_t maxComputeWorkGroupSize[3]; - uint32_t subPixelPrecisionBits; - uint32_t subTexelPrecisionBits; - uint32_t mipmapPrecisionBits; - uint32_t maxDrawIndexedIndexValue; - uint32_t maxDrawIndirectCount; - float maxSamplerLodBias; - float maxSamplerAnisotropy; - uint32_t maxViewports; - uint32_t maxViewportDimensions[2]; - float viewportBoundsRange[2]; - uint32_t viewportSubPixelBits; - size_t minMemoryMapAlignment; - VkDeviceSize WINE_VK_ALIGN(8) minTexelBufferOffsetAlignment; - VkDeviceSize WINE_VK_ALIGN(8) minUniformBufferOffsetAlignment; - VkDeviceSize WINE_VK_ALIGN(8) minStorageBufferOffsetAlignment; - int32_t minTexelOffset; - uint32_t maxTexelOffset; - int32_t minTexelGatherOffset; - uint32_t maxTexelGatherOffset; - float minInterpolationOffset; - float maxInterpolationOffset; - uint32_t subPixelInterpolationOffsetBits; - uint32_t maxFramebufferWidth; - uint32_t maxFramebufferHeight; - uint32_t maxFramebufferLayers; - VkSampleCountFlags framebufferColorSampleCounts; - VkSampleCountFlags framebufferDepthSampleCounts; - VkSampleCountFlags framebufferStencilSampleCounts; - VkSampleCountFlags framebufferNoAttachmentsSampleCounts; - uint32_t maxColorAttachments; - VkSampleCountFlags sampledImageColorSampleCounts; - VkSampleCountFlags sampledImageIntegerSampleCounts; - VkSampleCountFlags sampledImageDepthSampleCounts; - VkSampleCountFlags sampledImageStencilSampleCounts; - VkSampleCountFlags storageImageSampleCounts; - uint32_t maxSampleMaskWords; - VkBool32 timestampComputeAndGraphics; - float timestampPeriod; - uint32_t maxClipDistances; - uint32_t maxCullDistances; - uint32_t maxCombinedClipAndCullDistances; - uint32_t discreteQueuePriorities; - float pointSizeRange[2]; - float lineWidthRange[2]; - float pointSizeGranularity; - float lineWidthGranularity; - VkBool32 strictLines; - VkBool32 standardSampleLocations; - VkDeviceSize WINE_VK_ALIGN(8) optimalBufferCopyOffsetAlignment; - VkDeviceSize WINE_VK_ALIGN(8) optimalBufferCopyRowPitchAlignment; - VkDeviceSize WINE_VK_ALIGN(8) nonCoherentAtomSize; -} VkPhysicalDeviceLimits; + VkStructureType sType; + const void *pNext; + uint32_t tensorCount; + const VkTensorARM *pTensors; +} VkFrameBoundaryTensorsARM;
-typedef struct VkPhysicalDeviceLineRasterizationFeatures +typedef struct VkFramebufferAttachmentsCreateInfo { VkStructureType sType; - void *pNext; - VkBool32 rectangularLines; - VkBool32 bresenhamLines; - VkBool32 smoothLines; - VkBool32 stippledRectangularLines; - VkBool32 stippledBresenhamLines; - VkBool32 stippledSmoothLines; -} VkPhysicalDeviceLineRasterizationFeatures; -typedef VkPhysicalDeviceLineRasterizationFeatures VkPhysicalDeviceLineRasterizationFeaturesKHR; -typedef VkPhysicalDeviceLineRasterizationFeatures VkPhysicalDeviceLineRasterizationFeaturesEXT; + const void *pNext; + uint32_t attachmentImageInfoCount; + const VkFramebufferAttachmentImageInfo *pAttachmentImageInfos; +} VkFramebufferAttachmentsCreateInfo; +typedef VkFramebufferAttachmentsCreateInfo VkFramebufferAttachmentsCreateInfoKHR;
-typedef struct VkPhysicalDeviceLineRasterizationProperties +typedef struct VkFramebufferCreateInfo { VkStructureType sType; - void *pNext; - uint32_t lineSubPixelPrecisionBits; -} VkPhysicalDeviceLineRasterizationProperties; -typedef VkPhysicalDeviceLineRasterizationProperties VkPhysicalDeviceLineRasterizationPropertiesKHR; -typedef VkPhysicalDeviceLineRasterizationProperties VkPhysicalDeviceLineRasterizationPropertiesEXT; + const void *pNext; + VkFramebufferCreateFlags flags; + VkRenderPass WINE_VK_ALIGN(8) renderPass; + uint32_t attachmentCount; + const VkImageView *pAttachments; + uint32_t width; + uint32_t height; + uint32_t layers; +} VkFramebufferCreateInfo;
-typedef struct VkPhysicalDeviceLinearColorAttachmentFeaturesNV +typedef struct VkFramebufferMixedSamplesCombinationNV { VkStructureType sType; void *pNext; - VkBool32 linearColorAttachment; -} VkPhysicalDeviceLinearColorAttachmentFeaturesNV; + VkCoverageReductionModeNV coverageReductionMode; + VkSampleCountFlagBits rasterizationSamples; + VkSampleCountFlags depthStencilSamples; + VkSampleCountFlags colorSamples; +} VkFramebufferMixedSamplesCombinationNV;
-typedef struct VkPhysicalDeviceMaintenance3Properties +typedef struct VkGeneratedCommandsInfoEXT { VkStructureType sType; - void *pNext; - uint32_t maxPerSetDescriptors; - VkDeviceSize WINE_VK_ALIGN(8) maxMemoryAllocationSize; -} VkPhysicalDeviceMaintenance3Properties; -typedef VkPhysicalDeviceMaintenance3Properties VkPhysicalDeviceMaintenance3PropertiesKHR; + const void *pNext; + VkShaderStageFlags shaderStages; + VkIndirectExecutionSetEXT WINE_VK_ALIGN(8) indirectExecutionSet; + VkIndirectCommandsLayoutEXT WINE_VK_ALIGN(8) indirectCommandsLayout; + VkDeviceAddress WINE_VK_ALIGN(8) indirectAddress; + VkDeviceSize WINE_VK_ALIGN(8) indirectAddressSize; + VkDeviceAddress WINE_VK_ALIGN(8) preprocessAddress; + VkDeviceSize WINE_VK_ALIGN(8) preprocessSize; + uint32_t maxSequenceCount; + VkDeviceAddress WINE_VK_ALIGN(8) sequenceCountAddress; + uint32_t maxDrawCount; +} VkGeneratedCommandsInfoEXT;
-typedef struct VkPhysicalDeviceMaintenance4Features +typedef struct VkGeneratedCommandsInfoNV { VkStructureType sType; - void *pNext; - VkBool32 maintenance4; -} VkPhysicalDeviceMaintenance4Features; -typedef VkPhysicalDeviceMaintenance4Features VkPhysicalDeviceMaintenance4FeaturesKHR; + const void *pNext; + VkPipelineBindPoint pipelineBindPoint; + VkPipeline WINE_VK_ALIGN(8) pipeline; + VkIndirectCommandsLayoutNV WINE_VK_ALIGN(8) indirectCommandsLayout; + uint32_t streamCount; + const VkIndirectCommandsStreamNV *pStreams; + uint32_t sequencesCount; + VkBuffer WINE_VK_ALIGN(8) preprocessBuffer; + VkDeviceSize WINE_VK_ALIGN(8) preprocessOffset; + VkDeviceSize WINE_VK_ALIGN(8) preprocessSize; + VkBuffer WINE_VK_ALIGN(8) sequencesCountBuffer; + VkDeviceSize WINE_VK_ALIGN(8) sequencesCountOffset; + VkBuffer WINE_VK_ALIGN(8) sequencesIndexBuffer; + VkDeviceSize WINE_VK_ALIGN(8) sequencesIndexOffset; +} VkGeneratedCommandsInfoNV;
-typedef struct VkPhysicalDeviceMaintenance4Properties +typedef struct VkGeneratedCommandsMemoryRequirementsInfoEXT { VkStructureType sType; - void *pNext; - VkDeviceSize WINE_VK_ALIGN(8) maxBufferSize; -} VkPhysicalDeviceMaintenance4Properties; -typedef VkPhysicalDeviceMaintenance4Properties VkPhysicalDeviceMaintenance4PropertiesKHR; + const void *pNext; + VkIndirectExecutionSetEXT WINE_VK_ALIGN(8) indirectExecutionSet; + VkIndirectCommandsLayoutEXT WINE_VK_ALIGN(8) indirectCommandsLayout; + uint32_t maxSequenceCount; + uint32_t maxDrawCount; +} VkGeneratedCommandsMemoryRequirementsInfoEXT;
-typedef struct VkPhysicalDeviceMaintenance5Features +typedef struct VkGeneratedCommandsMemoryRequirementsInfoNV { VkStructureType sType; - void *pNext; - VkBool32 maintenance5; -} VkPhysicalDeviceMaintenance5Features; -typedef VkPhysicalDeviceMaintenance5Features VkPhysicalDeviceMaintenance5FeaturesKHR; + const void *pNext; + VkPipelineBindPoint pipelineBindPoint; + VkPipeline WINE_VK_ALIGN(8) pipeline; + VkIndirectCommandsLayoutNV WINE_VK_ALIGN(8) indirectCommandsLayout; + uint32_t maxSequencesCount; +} VkGeneratedCommandsMemoryRequirementsInfoNV;
-typedef struct VkPhysicalDeviceMaintenance5Properties +typedef struct VkGeneratedCommandsPipelineInfoEXT { VkStructureType sType; void *pNext; - VkBool32 earlyFragmentMultisampleCoverageAfterSampleCounting; - VkBool32 earlyFragmentSampleMaskTestBeforeSampleCounting; - VkBool32 depthStencilSwizzleOneSupport; - VkBool32 polygonModePointSize; - VkBool32 nonStrictSinglePixelWideLinesUseParallelogram; - VkBool32 nonStrictWideLinesUseParallelogram; -} VkPhysicalDeviceMaintenance5Properties; -typedef VkPhysicalDeviceMaintenance5Properties VkPhysicalDeviceMaintenance5PropertiesKHR; + VkPipeline WINE_VK_ALIGN(8) pipeline; +} VkGeneratedCommandsPipelineInfoEXT;
-typedef struct VkPhysicalDeviceMaintenance6Features +typedef struct VkGeneratedCommandsShaderInfoEXT { VkStructureType sType; void *pNext; - VkBool32 maintenance6; -} VkPhysicalDeviceMaintenance6Features; -typedef VkPhysicalDeviceMaintenance6Features VkPhysicalDeviceMaintenance6FeaturesKHR; + uint32_t shaderCount; + const VkShaderEXT *pShaders; +} VkGeneratedCommandsShaderInfoEXT;
-typedef struct VkPhysicalDeviceMaintenance6Properties +typedef struct VkGetLatencyMarkerInfoNV { VkStructureType sType; - void *pNext; - VkBool32 blockTexelViewCompatibleMultipleLayers; - uint32_t maxCombinedImageSamplerDescriptorCount; - VkBool32 fragmentShadingRateClampCombinerInputs; -} VkPhysicalDeviceMaintenance6Properties; -typedef VkPhysicalDeviceMaintenance6Properties VkPhysicalDeviceMaintenance6PropertiesKHR; + const void *pNext; + uint32_t timingCount; + VkLatencyTimingsFrameReportNV *pTimings; +} VkGetLatencyMarkerInfoNV;
-typedef struct VkPhysicalDeviceMaintenance8FeaturesKHR +typedef struct VkGraphicsPipelineCreateInfo { VkStructureType sType; - void *pNext; - VkBool32 maintenance8; -} VkPhysicalDeviceMaintenance8FeaturesKHR; + const void *pNext; + VkPipelineCreateFlags flags; + uint32_t stageCount; + const VkPipelineShaderStageCreateInfo *pStages; + const VkPipelineVertexInputStateCreateInfo *pVertexInputState; + const VkPipelineInputAssemblyStateCreateInfo *pInputAssemblyState; + const VkPipelineTessellationStateCreateInfo *pTessellationState; + const VkPipelineViewportStateCreateInfo *pViewportState; + const VkPipelineRasterizationStateCreateInfo *pRasterizationState; + const VkPipelineMultisampleStateCreateInfo *pMultisampleState; + const VkPipelineDepthStencilStateCreateInfo *pDepthStencilState; + const VkPipelineColorBlendStateCreateInfo *pColorBlendState; + const VkPipelineDynamicStateCreateInfo *pDynamicState; + VkPipelineLayout WINE_VK_ALIGN(8) layout; + VkRenderPass WINE_VK_ALIGN(8) renderPass; + uint32_t subpass; + VkPipeline WINE_VK_ALIGN(8) basePipelineHandle; + int32_t basePipelineIndex; +} VkGraphicsPipelineCreateInfo;
-typedef struct VkPhysicalDeviceMaintenance9FeaturesKHR +typedef struct VkGraphicsPipelineLibraryCreateInfoEXT { VkStructureType sType; - void *pNext; - VkBool32 maintenance9; -} VkPhysicalDeviceMaintenance9FeaturesKHR; + const void *pNext; + VkGraphicsPipelineLibraryFlagsEXT flags; +} VkGraphicsPipelineLibraryCreateInfoEXT;
-typedef struct VkPhysicalDeviceMaintenance9PropertiesKHR +typedef struct VkGraphicsPipelineShaderGroupsCreateInfoNV { VkStructureType sType; - void *pNext; - VkBool32 image2DViewOf3DSparse; - VkDefaultVertexAttributeValueKHR defaultVertexAttributeValue; -} VkPhysicalDeviceMaintenance9PropertiesKHR; + const void *pNext; + uint32_t groupCount; + const VkGraphicsShaderGroupCreateInfoNV *pGroups; + uint32_t pipelineCount; + const VkPipeline *pPipelines; +} VkGraphicsPipelineShaderGroupsCreateInfoNV;
-typedef struct VkPhysicalDeviceMapMemoryPlacedFeaturesEXT +typedef struct VkHdrMetadataEXT { VkStructureType sType; - void *pNext; - VkBool32 memoryMapPlaced; - VkBool32 memoryMapRangePlaced; - VkBool32 memoryUnmapReserve; -} VkPhysicalDeviceMapMemoryPlacedFeaturesEXT; + const void *pNext; + VkXYColorEXT displayPrimaryRed; + VkXYColorEXT displayPrimaryGreen; + VkXYColorEXT displayPrimaryBlue; + VkXYColorEXT whitePoint; + float maxLuminance; + float minLuminance; + float maxContentLightLevel; + float maxFrameAverageLightLevel; +} VkHdrMetadataEXT;
-typedef struct VkPhysicalDeviceMapMemoryPlacedPropertiesEXT +typedef struct VkHdrVividDynamicMetadataHUAWEI { VkStructureType sType; - void *pNext; - VkDeviceSize WINE_VK_ALIGN(8) minPlacedMemoryMapAlignment; -} VkPhysicalDeviceMapMemoryPlacedPropertiesEXT; + const void *pNext; + size_t dynamicMetadataSize; + const void *pDynamicMetadata; +} VkHdrVividDynamicMetadataHUAWEI;
-typedef struct VkPhysicalDeviceMemoryBudgetPropertiesEXT +typedef struct VkHeadlessSurfaceCreateInfoEXT { VkStructureType sType; - void *pNext; - VkDeviceSize WINE_VK_ALIGN(8) heapBudget[VK_MAX_MEMORY_HEAPS]; - VkDeviceSize WINE_VK_ALIGN(8) heapUsage[VK_MAX_MEMORY_HEAPS]; -} VkPhysicalDeviceMemoryBudgetPropertiesEXT; + const void *pNext; + VkHeadlessSurfaceCreateFlagsEXT flags; +} VkHeadlessSurfaceCreateInfoEXT;
-typedef struct VkPhysicalDeviceMemoryDecompressionFeaturesNV +typedef struct VkHostImageCopyDevicePerformanceQuery { VkStructureType sType; void *pNext; - VkBool32 memoryDecompression; -} VkPhysicalDeviceMemoryDecompressionFeaturesNV; + VkBool32 optimalDeviceAccess; + VkBool32 identicalMemoryLayout; +} VkHostImageCopyDevicePerformanceQuery; +typedef VkHostImageCopyDevicePerformanceQuery VkHostImageCopyDevicePerformanceQueryEXT;
-typedef struct VkPhysicalDeviceMemoryDecompressionPropertiesNV +typedef struct VkHostImageLayoutTransitionInfo { VkStructureType sType; - void *pNext; - VkMemoryDecompressionMethodFlagsNV WINE_VK_ALIGN(8) decompressionMethods; - uint64_t WINE_VK_ALIGN(8) maxDecompressionIndirectCount; -} VkPhysicalDeviceMemoryDecompressionPropertiesNV; + const void *pNext; + VkImage WINE_VK_ALIGN(8) image; + VkImageLayout oldLayout; + VkImageLayout newLayout; + VkImageSubresourceRange subresourceRange; +} VkHostImageLayoutTransitionInfo; +typedef VkHostImageLayoutTransitionInfo VkHostImageLayoutTransitionInfoEXT;
-typedef struct VkPhysicalDeviceMemoryPriorityFeaturesEXT +typedef struct VkImageAlignmentControlCreateInfoMESA { VkStructureType sType; - void *pNext; - VkBool32 memoryPriority; -} VkPhysicalDeviceMemoryPriorityFeaturesEXT; + const void *pNext; + uint32_t maximumRequestedAlignment; +} VkImageAlignmentControlCreateInfoMESA;
-typedef struct VkPhysicalDeviceMemoryProperties +typedef struct VkImageBlit { - uint32_t memoryTypeCount; - VkMemoryType memoryTypes[VK_MAX_MEMORY_TYPES]; - uint32_t memoryHeapCount; - VkMemoryHeap WINE_VK_ALIGN(8) memoryHeaps[VK_MAX_MEMORY_HEAPS]; -} VkPhysicalDeviceMemoryProperties; + VkImageSubresourceLayers srcSubresource; + VkOffset3D srcOffsets[2]; + VkImageSubresourceLayers dstSubresource; + VkOffset3D dstOffsets[2]; +} VkImageBlit;
-typedef struct VkPhysicalDeviceMemoryProperties2 +typedef struct VkImageCaptureDescriptorDataInfoEXT { VkStructureType sType; - void *pNext; - VkPhysicalDeviceMemoryProperties WINE_VK_ALIGN(8) memoryProperties; -} VkPhysicalDeviceMemoryProperties2; -typedef VkPhysicalDeviceMemoryProperties2 VkPhysicalDeviceMemoryProperties2KHR; + const void *pNext; + VkImage WINE_VK_ALIGN(8) image; +} VkImageCaptureDescriptorDataInfoEXT;
-typedef struct VkPhysicalDeviceMeshShaderFeaturesEXT +typedef struct VkImageCompressionControlEXT { VkStructureType sType; - void *pNext; - VkBool32 taskShader; - VkBool32 meshShader; - VkBool32 multiviewMeshShader; - VkBool32 primitiveFragmentShadingRateMeshShader; - VkBool32 meshShaderQueries; -} VkPhysicalDeviceMeshShaderFeaturesEXT; + const void *pNext; + VkImageCompressionFlagsEXT flags; + uint32_t compressionControlPlaneCount; + VkImageCompressionFixedRateFlagsEXT *pFixedRateFlags; +} VkImageCompressionControlEXT;
-typedef struct VkPhysicalDeviceMeshShaderFeaturesNV +typedef struct VkImageCompressionPropertiesEXT { VkStructureType sType; void *pNext; - VkBool32 taskShader; - VkBool32 meshShader; -} VkPhysicalDeviceMeshShaderFeaturesNV; + VkImageCompressionFlagsEXT imageCompressionFlags; + VkImageCompressionFixedRateFlagsEXT imageCompressionFixedRateFlags; +} VkImageCompressionPropertiesEXT;
-typedef struct VkPhysicalDeviceMeshShaderPropertiesEXT +typedef struct VkImageCopy +{ + VkImageSubresourceLayers srcSubresource; + VkOffset3D srcOffset; + VkImageSubresourceLayers dstSubresource; + VkOffset3D dstOffset; + VkExtent3D extent; +} VkImageCopy; + +typedef struct VkImageFormatListCreateInfo { VkStructureType sType; - void *pNext; - uint32_t maxTaskWorkGroupTotalCount; - uint32_t maxTaskWorkGroupCount[3]; - uint32_t maxTaskWorkGroupInvocations; - uint32_t maxTaskWorkGroupSize[3]; - uint32_t maxTaskPayloadSize; - uint32_t maxTaskSharedMemorySize; - uint32_t maxTaskPayloadAndSharedMemorySize; - uint32_t maxMeshWorkGroupTotalCount; - uint32_t maxMeshWorkGroupCount[3]; - uint32_t maxMeshWorkGroupInvocations; - uint32_t maxMeshWorkGroupSize[3]; - uint32_t maxMeshSharedMemorySize; - uint32_t maxMeshPayloadAndSharedMemorySize; - uint32_t maxMeshOutputMemorySize; - uint32_t maxMeshPayloadAndOutputMemorySize; - uint32_t maxMeshOutputComponents; - uint32_t maxMeshOutputVertices; - uint32_t maxMeshOutputPrimitives; - uint32_t maxMeshOutputLayers; - uint32_t maxMeshMultiviewViewCount; - uint32_t meshOutputPerVertexGranularity; - uint32_t meshOutputPerPrimitiveGranularity; - uint32_t maxPreferredTaskWorkGroupInvocations; - uint32_t maxPreferredMeshWorkGroupInvocations; - VkBool32 prefersLocalInvocationVertexOutput; - VkBool32 prefersLocalInvocationPrimitiveOutput; - VkBool32 prefersCompactVertexOutput; - VkBool32 prefersCompactPrimitiveOutput; -} VkPhysicalDeviceMeshShaderPropertiesEXT; + const void *pNext; + uint32_t viewFormatCount; + const VkFormat *pViewFormats; +} VkImageFormatListCreateInfo; +typedef VkImageFormatListCreateInfo VkImageFormatListCreateInfoKHR;
-typedef struct VkPhysicalDeviceMeshShaderPropertiesNV +typedef struct VkImageFormatProperties2 { VkStructureType sType; void *pNext; - uint32_t maxDrawMeshTasksCount; - uint32_t maxTaskWorkGroupInvocations; - uint32_t maxTaskWorkGroupSize[3]; - uint32_t maxTaskTotalMemorySize; - uint32_t maxTaskOutputCount; - uint32_t maxMeshWorkGroupInvocations; - uint32_t maxMeshWorkGroupSize[3]; - uint32_t maxMeshTotalMemorySize; - uint32_t maxMeshOutputVertices; - uint32_t maxMeshOutputPrimitives; - uint32_t maxMeshMultiviewViewCount; - uint32_t meshOutputPerVertexGranularity; - uint32_t meshOutputPerPrimitiveGranularity; -} VkPhysicalDeviceMeshShaderPropertiesNV; + VkImageFormatProperties WINE_VK_ALIGN(8) imageFormatProperties; +} VkImageFormatProperties2; +typedef VkImageFormatProperties2 VkImageFormatProperties2KHR;
-typedef struct VkPhysicalDeviceMultiDrawFeaturesEXT +typedef struct VkImageMemoryBarrier { VkStructureType sType; - void *pNext; - VkBool32 multiDraw; -} VkPhysicalDeviceMultiDrawFeaturesEXT; + const void *pNext; + VkAccessFlags srcAccessMask; + VkAccessFlags dstAccessMask; + VkImageLayout oldLayout; + VkImageLayout newLayout; + uint32_t srcQueueFamilyIndex; + uint32_t dstQueueFamilyIndex; + VkImage WINE_VK_ALIGN(8) image; + VkImageSubresourceRange subresourceRange; +} VkImageMemoryBarrier;
-typedef struct VkPhysicalDeviceMultiDrawPropertiesEXT +typedef struct VkImageMemoryRequirementsInfo2 { VkStructureType sType; - void *pNext; - uint32_t maxMultiDrawCount; -} VkPhysicalDeviceMultiDrawPropertiesEXT; + const void *pNext; + VkImage WINE_VK_ALIGN(8) image; +} VkImageMemoryRequirementsInfo2; +typedef VkImageMemoryRequirementsInfo2 VkImageMemoryRequirementsInfo2KHR;
-typedef struct VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT +typedef struct VkImagePlaneMemoryRequirementsInfo { VkStructureType sType; - void *pNext; - VkBool32 multisampledRenderToSingleSampled; -} VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT; + const void *pNext; + VkImageAspectFlagBits planeAspect; +} VkImagePlaneMemoryRequirementsInfo; +typedef VkImagePlaneMemoryRequirementsInfo VkImagePlaneMemoryRequirementsInfoKHR;
-typedef struct VkPhysicalDeviceMultiviewFeatures +typedef struct VkImageResolve +{ + VkImageSubresourceLayers srcSubresource; + VkOffset3D srcOffset; + VkImageSubresourceLayers dstSubresource; + VkOffset3D dstOffset; + VkExtent3D extent; +} VkImageResolve; + +typedef struct VkImageSparseMemoryRequirementsInfo2 { VkStructureType sType; - void *pNext; - VkBool32 multiview; - VkBool32 multiviewGeometryShader; - VkBool32 multiviewTessellationShader; -} VkPhysicalDeviceMultiviewFeatures; -typedef VkPhysicalDeviceMultiviewFeatures VkPhysicalDeviceMultiviewFeaturesKHR; + const void *pNext; + VkImage WINE_VK_ALIGN(8) image; +} VkImageSparseMemoryRequirementsInfo2; +typedef VkImageSparseMemoryRequirementsInfo2 VkImageSparseMemoryRequirementsInfo2KHR;
-typedef struct VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM +typedef struct VkImageStencilUsageCreateInfo { VkStructureType sType; - void *pNext; - VkBool32 multiviewPerViewRenderAreas; -} VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM; + const void *pNext; + VkImageUsageFlags stencilUsage; +} VkImageStencilUsageCreateInfo; +typedef VkImageStencilUsageCreateInfo VkImageStencilUsageCreateInfoEXT;
-typedef struct VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM +typedef struct VkImageSwapchainCreateInfoKHR { VkStructureType sType; - void *pNext; - VkBool32 multiviewPerViewViewports; -} VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM; + const void *pNext; + VkSwapchainKHR WINE_VK_ALIGN(8) swapchain; +} VkImageSwapchainCreateInfoKHR;
-typedef struct VkPhysicalDeviceMultiviewProperties +typedef struct VkImageViewASTCDecodeModeEXT { VkStructureType sType; - void *pNext; - uint32_t maxMultiviewViewCount; - uint32_t maxMultiviewInstanceIndex; -} VkPhysicalDeviceMultiviewProperties; -typedef VkPhysicalDeviceMultiviewProperties VkPhysicalDeviceMultiviewPropertiesKHR; + const void *pNext; + VkFormat decodeMode; +} VkImageViewASTCDecodeModeEXT;
-typedef struct VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT +typedef struct VkImageViewAddressPropertiesNVX { VkStructureType sType; void *pNext; - VkBool32 mutableDescriptorType; -} VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT; -typedef VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE; + VkDeviceAddress WINE_VK_ALIGN(8) deviceAddress; + VkDeviceSize WINE_VK_ALIGN(8) size; +} VkImageViewAddressPropertiesNVX;
-typedef struct VkPhysicalDeviceNestedCommandBufferFeaturesEXT +typedef struct VkImageViewCaptureDescriptorDataInfoEXT { VkStructureType sType; - void *pNext; - VkBool32 nestedCommandBuffer; - VkBool32 nestedCommandBufferRendering; - VkBool32 nestedCommandBufferSimultaneousUse; -} VkPhysicalDeviceNestedCommandBufferFeaturesEXT; + const void *pNext; + VkImageView WINE_VK_ALIGN(8) imageView; +} VkImageViewCaptureDescriptorDataInfoEXT;
-typedef struct VkPhysicalDeviceNestedCommandBufferPropertiesEXT +typedef struct VkImageViewCreateInfo { VkStructureType sType; - void *pNext; - uint32_t maxCommandBufferNestingLevel; -} VkPhysicalDeviceNestedCommandBufferPropertiesEXT; + const void *pNext; + VkImageViewCreateFlags flags; + VkImage WINE_VK_ALIGN(8) image; + VkImageViewType viewType; + VkFormat format; + VkComponentMapping components; + VkImageSubresourceRange subresourceRange; +} VkImageViewCreateInfo;
-typedef struct VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT +typedef struct VkImageViewHandleInfoNVX { VkStructureType sType; - void *pNext; - VkBool32 nonSeamlessCubeMap; -} VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT; + const void *pNext; + VkImageView WINE_VK_ALIGN(8) imageView; + VkDescriptorType descriptorType; + VkSampler WINE_VK_ALIGN(8) sampler; +} VkImageViewHandleInfoNVX;
-typedef struct VkPhysicalDeviceOpacityMicromapFeaturesEXT +typedef struct VkImageViewMinLodCreateInfoEXT { VkStructureType sType; - void *pNext; - VkBool32 micromap; - VkBool32 micromapCaptureReplay; - VkBool32 micromapHostCommands; -} VkPhysicalDeviceOpacityMicromapFeaturesEXT; + const void *pNext; + float minLod; +} VkImageViewMinLodCreateInfoEXT;
-typedef struct VkPhysicalDeviceOpacityMicromapPropertiesEXT +typedef struct VkImageViewSampleWeightCreateInfoQCOM { VkStructureType sType; - void *pNext; - uint32_t maxOpacity2StateSubdivisionLevel; - uint32_t maxOpacity4StateSubdivisionLevel; -} VkPhysicalDeviceOpacityMicromapPropertiesEXT; + const void *pNext; + VkOffset2D filterCenter; + VkExtent2D filterSize; + uint32_t numPhases; +} VkImageViewSampleWeightCreateInfoQCOM;
-typedef struct VkPhysicalDeviceOpticalFlowFeaturesNV +typedef struct VkImageViewSlicedCreateInfoEXT { VkStructureType sType; - void *pNext; - VkBool32 opticalFlow; -} VkPhysicalDeviceOpticalFlowFeaturesNV; + const void *pNext; + uint32_t sliceOffset; + uint32_t sliceCount; +} VkImageViewSlicedCreateInfoEXT;
-typedef struct VkPhysicalDeviceOpticalFlowPropertiesNV +typedef struct VkImageViewUsageCreateInfo { VkStructureType sType; - void *pNext; - VkOpticalFlowGridSizeFlagsNV supportedOutputGridSizes; - VkOpticalFlowGridSizeFlagsNV supportedHintGridSizes; - VkBool32 hintSupported; - VkBool32 costSupported; - VkBool32 bidirectionalFlowSupported; - VkBool32 globalFlowSupported; - uint32_t minWidth; - uint32_t minHeight; - uint32_t maxWidth; - uint32_t maxHeight; - uint32_t maxNumRegionsOfInterest; -} VkPhysicalDeviceOpticalFlowPropertiesNV; + const void *pNext; + VkImageUsageFlags usage; +} VkImageViewUsageCreateInfo; +typedef VkImageViewUsageCreateInfo VkImageViewUsageCreateInfoKHR;
-typedef struct VkPhysicalDevicePCIBusInfoPropertiesEXT +typedef struct VkImportMemoryHostPointerInfoEXT { VkStructureType sType; - void *pNext; - uint32_t pciDomain; - uint32_t pciBus; - uint32_t pciDevice; - uint32_t pciFunction; -} VkPhysicalDevicePCIBusInfoPropertiesEXT; + const void *pNext; + VkExternalMemoryHandleTypeFlagBits handleType; + void *pHostPointer; +} VkImportMemoryHostPointerInfoEXT;
-typedef struct VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT +typedef struct VkImportMemoryWin32HandleInfoKHR { VkStructureType sType; - void *pNext; - VkBool32 pageableDeviceLocalMemory; -} VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT; + const void *pNext; + VkExternalMemoryHandleTypeFlagBits handleType; + HANDLE handle; + LPCWSTR name; +} VkImportMemoryWin32HandleInfoKHR;
-typedef struct VkPhysicalDevicePartitionedAccelerationStructureFeaturesNV +typedef struct VkIndirectCommandsLayoutCreateInfoEXT { VkStructureType sType; - void *pNext; - VkBool32 partitionedAccelerationStructure; -} VkPhysicalDevicePartitionedAccelerationStructureFeaturesNV; + const void *pNext; + VkIndirectCommandsLayoutUsageFlagsEXT flags; + VkShaderStageFlags shaderStages; + uint32_t indirectStride; + VkPipelineLayout WINE_VK_ALIGN(8) pipelineLayout; + uint32_t tokenCount; + const VkIndirectCommandsLayoutTokenEXT *pTokens; +} VkIndirectCommandsLayoutCreateInfoEXT;
-typedef struct VkPhysicalDevicePartitionedAccelerationStructurePropertiesNV +typedef struct VkIndirectCommandsLayoutCreateInfoNV { VkStructureType sType; - void *pNext; - uint32_t maxPartitionCount; -} VkPhysicalDevicePartitionedAccelerationStructurePropertiesNV; + const void *pNext; + VkIndirectCommandsLayoutUsageFlagsNV flags; + VkPipelineBindPoint pipelineBindPoint; + uint32_t tokenCount; + const VkIndirectCommandsLayoutTokenNV *pTokens; + uint32_t streamCount; + const uint32_t *pStreamStrides; +} VkIndirectCommandsLayoutCreateInfoNV;
-typedef struct VkPhysicalDevicePerStageDescriptorSetFeaturesNV +typedef struct VkIndirectExecutionSetCreateInfoEXT { VkStructureType sType; - void *pNext; - VkBool32 perStageDescriptorSet; - VkBool32 dynamicPipelineLayout; -} VkPhysicalDevicePerStageDescriptorSetFeaturesNV; + const void *pNext; + VkIndirectExecutionSetInfoTypeEXT type; + VkIndirectExecutionSetInfoEXT info; +} VkIndirectExecutionSetCreateInfoEXT;
-typedef struct VkPhysicalDevicePerformanceQueryFeaturesKHR +typedef struct VkInitializePerformanceApiInfoINTEL { VkStructureType sType; - void *pNext; - VkBool32 performanceCounterQueryPools; - VkBool32 performanceCounterMultipleQueryPools; -} VkPhysicalDevicePerformanceQueryFeaturesKHR; + const void *pNext; + void *pUserData; +} VkInitializePerformanceApiInfoINTEL;
-typedef struct VkPhysicalDevicePerformanceQueryPropertiesKHR +typedef struct VkInstanceCreateInfo { VkStructureType sType; - void *pNext; - VkBool32 allowCommandBufferQueryCopies; -} VkPhysicalDevicePerformanceQueryPropertiesKHR; + const void *pNext; + VkInstanceCreateFlags flags; + const VkApplicationInfo *pApplicationInfo; + uint32_t enabledLayerCount; + const char * const*ppEnabledLayerNames; + uint32_t enabledExtensionCount; + const char * const*ppEnabledExtensionNames; +} VkInstanceCreateInfo;
-typedef struct VkPhysicalDevicePipelineBinaryFeaturesKHR +typedef struct VkLatencySleepInfoNV { VkStructureType sType; - void *pNext; - VkBool32 pipelineBinaries; -} VkPhysicalDevicePipelineBinaryFeaturesKHR; + const void *pNext; + VkSemaphore WINE_VK_ALIGN(8) signalSemaphore; + uint64_t WINE_VK_ALIGN(8) value; +} VkLatencySleepInfoNV;
-typedef struct VkPhysicalDevicePipelineBinaryPropertiesKHR +typedef struct VkLatencySleepModeInfoNV { VkStructureType sType; - void *pNext; - VkBool32 pipelineBinaryInternalCache; - VkBool32 pipelineBinaryInternalCacheControl; - VkBool32 pipelineBinaryPrefersInternalCache; - VkBool32 pipelineBinaryPrecompiledInternalCache; - VkBool32 pipelineBinaryCompressedData; -} VkPhysicalDevicePipelineBinaryPropertiesKHR; + const void *pNext; + VkBool32 lowLatencyMode; + VkBool32 lowLatencyBoost; + uint32_t minimumIntervalUs; +} VkLatencySleepModeInfoNV;
-typedef struct VkPhysicalDevicePipelineCacheIncrementalModeFeaturesSEC +typedef struct VkLatencySubmissionPresentIdNV { VkStructureType sType; - void *pNext; - VkBool32 pipelineCacheIncrementalMode; -} VkPhysicalDevicePipelineCacheIncrementalModeFeaturesSEC; + const void *pNext; + uint64_t WINE_VK_ALIGN(8) presentID; +} VkLatencySubmissionPresentIdNV;
-typedef struct VkPhysicalDevicePipelineCreationCacheControlFeatures +typedef struct VkLatencySurfaceCapabilitiesNV { VkStructureType sType; - void *pNext; - VkBool32 pipelineCreationCacheControl; -} VkPhysicalDevicePipelineCreationCacheControlFeatures; -typedef VkPhysicalDevicePipelineCreationCacheControlFeatures VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT; + const void *pNext; + uint32_t presentModeCount; + VkPresentModeKHR *pPresentModes; +} VkLatencySurfaceCapabilitiesNV;
-typedef struct VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR +typedef struct VkLayerProperties +{ + char layerName[VK_MAX_EXTENSION_NAME_SIZE]; + uint32_t specVersion; + uint32_t implementationVersion; + char description[VK_MAX_DESCRIPTION_SIZE]; +} VkLayerProperties; + +typedef struct VkLayerSettingsCreateInfoEXT { VkStructureType sType; - void *pNext; - VkBool32 pipelineExecutableInfo; -} VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR; + const void *pNext; + uint32_t settingCount; + const VkLayerSettingEXT *pSettings; +} VkLayerSettingsCreateInfoEXT;
-typedef struct VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT +typedef struct VkMacOSSurfaceCreateInfoMVK { VkStructureType sType; - void *pNext; - VkBool32 pipelineLibraryGroupHandles; -} VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT; + const void *pNext; + VkMacOSSurfaceCreateFlagsMVK flags; + const void *pView; +} VkMacOSSurfaceCreateInfoMVK;
-typedef struct VkPhysicalDevicePipelineOpacityMicromapFeaturesARM +typedef struct VkMappedMemoryRange { VkStructureType sType; - void *pNext; - VkBool32 pipelineOpacityMicromap; -} VkPhysicalDevicePipelineOpacityMicromapFeaturesARM; + const void *pNext; + VkDeviceMemory WINE_VK_ALIGN(8) memory; + VkDeviceSize WINE_VK_ALIGN(8) offset; + VkDeviceSize WINE_VK_ALIGN(8) size; +} VkMappedMemoryRange;
-typedef struct VkPhysicalDevicePipelinePropertiesFeaturesEXT +typedef struct VkMemoryAllocateFlagsInfo { VkStructureType sType; - void *pNext; - VkBool32 pipelinePropertiesIdentifier; -} VkPhysicalDevicePipelinePropertiesFeaturesEXT; + const void *pNext; + VkMemoryAllocateFlags flags; + uint32_t deviceMask; +} VkMemoryAllocateFlagsInfo; +typedef VkMemoryAllocateFlagsInfo VkMemoryAllocateFlagsInfoKHR;
-typedef struct VkPhysicalDevicePipelineProtectedAccessFeatures +typedef struct VkMemoryAllocateInfo { VkStructureType sType; - void *pNext; - VkBool32 pipelineProtectedAccess; -} VkPhysicalDevicePipelineProtectedAccessFeatures; -typedef VkPhysicalDevicePipelineProtectedAccessFeatures VkPhysicalDevicePipelineProtectedAccessFeaturesEXT; + const void *pNext; + VkDeviceSize WINE_VK_ALIGN(8) allocationSize; + uint32_t memoryTypeIndex; +} VkMemoryAllocateInfo;
-typedef struct VkPhysicalDevicePipelineRobustnessFeatures +typedef struct VkMemoryBarrier { VkStructureType sType; - void *pNext; - VkBool32 pipelineRobustness; -} VkPhysicalDevicePipelineRobustnessFeatures; -typedef VkPhysicalDevicePipelineRobustnessFeatures VkPhysicalDevicePipelineRobustnessFeaturesEXT; + const void *pNext; + VkAccessFlags srcAccessMask; + VkAccessFlags dstAccessMask; +} VkMemoryBarrier;
-typedef struct VkPhysicalDevicePipelineRobustnessProperties +typedef struct VkMemoryBarrierAccessFlags3KHR { VkStructureType sType; - void *pNext; - VkPipelineRobustnessBufferBehavior defaultRobustnessStorageBuffers; - VkPipelineRobustnessBufferBehavior defaultRobustnessUniformBuffers; - VkPipelineRobustnessBufferBehavior defaultRobustnessVertexInputs; - VkPipelineRobustnessImageBehavior defaultRobustnessImages; -} VkPhysicalDevicePipelineRobustnessProperties; -typedef VkPhysicalDevicePipelineRobustnessProperties VkPhysicalDevicePipelineRobustnessPropertiesEXT; + const void *pNext; + VkAccessFlags3KHR WINE_VK_ALIGN(8) srcAccessMask3; + VkAccessFlags3KHR WINE_VK_ALIGN(8) dstAccessMask3; +} VkMemoryBarrierAccessFlags3KHR;
-typedef struct VkPhysicalDevicePointClippingProperties +typedef struct VkMemoryDedicatedAllocateInfo { VkStructureType sType; - void *pNext; - VkPointClippingBehavior pointClippingBehavior; -} VkPhysicalDevicePointClippingProperties; -typedef VkPhysicalDevicePointClippingProperties VkPhysicalDevicePointClippingPropertiesKHR; + const void *pNext; + VkImage WINE_VK_ALIGN(8) image; + VkBuffer WINE_VK_ALIGN(8) buffer; +} VkMemoryDedicatedAllocateInfo; +typedef VkMemoryDedicatedAllocateInfo VkMemoryDedicatedAllocateInfoKHR;
-typedef struct VkPhysicalDevicePresentBarrierFeaturesNV +typedef struct VkMemoryDedicatedAllocateInfoTensorARM { VkStructureType sType; - void *pNext; - VkBool32 presentBarrier; -} VkPhysicalDevicePresentBarrierFeaturesNV; + const void *pNext; + VkTensorARM WINE_VK_ALIGN(8) tensor; +} VkMemoryDedicatedAllocateInfoTensorARM;
-typedef struct VkPhysicalDevicePresentId2FeaturesKHR +typedef struct VkMemoryDedicatedRequirements { VkStructureType sType; void *pNext; - VkBool32 presentId2; -} VkPhysicalDevicePresentId2FeaturesKHR; + VkBool32 prefersDedicatedAllocation; + VkBool32 requiresDedicatedAllocation; +} VkMemoryDedicatedRequirements; +typedef VkMemoryDedicatedRequirements VkMemoryDedicatedRequirementsKHR;
-typedef struct VkPhysicalDevicePresentIdFeaturesKHR +typedef struct VkMemoryGetWin32HandleInfoKHR { VkStructureType sType; - void *pNext; - VkBool32 presentId; -} VkPhysicalDevicePresentIdFeaturesKHR; + const void *pNext; + VkDeviceMemory WINE_VK_ALIGN(8) memory; + VkExternalMemoryHandleTypeFlagBits handleType; +} VkMemoryGetWin32HandleInfoKHR;
-typedef struct VkPhysicalDevicePresentModeFifoLatestReadyFeaturesKHR +typedef struct VkMemoryHostPointerPropertiesEXT { VkStructureType sType; void *pNext; - VkBool32 presentModeFifoLatestReady; -} VkPhysicalDevicePresentModeFifoLatestReadyFeaturesKHR; -typedef VkPhysicalDevicePresentModeFifoLatestReadyFeaturesKHR VkPhysicalDevicePresentModeFifoLatestReadyFeaturesEXT; + uint32_t memoryTypeBits; +} VkMemoryHostPointerPropertiesEXT;
-typedef struct VkPhysicalDevicePresentWait2FeaturesKHR +typedef struct VkMemoryMapInfo { VkStructureType sType; - void *pNext; - VkBool32 presentWait2; -} VkPhysicalDevicePresentWait2FeaturesKHR; + const void *pNext; + VkMemoryMapFlags flags; + VkDeviceMemory WINE_VK_ALIGN(8) memory; + VkDeviceSize WINE_VK_ALIGN(8) offset; + VkDeviceSize WINE_VK_ALIGN(8) size; +} VkMemoryMapInfo; +typedef VkMemoryMapInfo VkMemoryMapInfoKHR;
-typedef struct VkPhysicalDevicePresentWaitFeaturesKHR +typedef struct VkMemoryMapPlacedInfoEXT { VkStructureType sType; - void *pNext; - VkBool32 presentWait; -} VkPhysicalDevicePresentWaitFeaturesKHR; + const void *pNext; + void *pPlacedAddress; +} VkMemoryMapPlacedInfoEXT;
-typedef struct VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT +typedef struct VkMemoryOpaqueCaptureAddressAllocateInfo { VkStructureType sType; - void *pNext; - VkBool32 primitiveTopologyListRestart; - VkBool32 primitiveTopologyPatchListRestart; -} VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT; + const void *pNext; + uint64_t WINE_VK_ALIGN(8) opaqueCaptureAddress; +} VkMemoryOpaqueCaptureAddressAllocateInfo; +typedef VkMemoryOpaqueCaptureAddressAllocateInfo VkMemoryOpaqueCaptureAddressAllocateInfoKHR;
-typedef struct VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT +typedef struct VkMemoryPriorityAllocateInfoEXT { VkStructureType sType; - void *pNext; - VkBool32 primitivesGeneratedQuery; - VkBool32 primitivesGeneratedQueryWithRasterizerDiscard; - VkBool32 primitivesGeneratedQueryWithNonZeroStreams; -} VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT; + const void *pNext; + float priority; +} VkMemoryPriorityAllocateInfoEXT;
-typedef struct VkPhysicalDevicePrivateDataFeatures +typedef struct VkMemoryRequirements2 { VkStructureType sType; void *pNext; - VkBool32 privateData; -} VkPhysicalDevicePrivateDataFeatures; -typedef VkPhysicalDevicePrivateDataFeatures VkPhysicalDevicePrivateDataFeaturesEXT; + VkMemoryRequirements WINE_VK_ALIGN(8) memoryRequirements; +} VkMemoryRequirements2; +typedef VkMemoryRequirements2 VkMemoryRequirements2KHR;
-typedef struct VkPhysicalDeviceProtectedMemoryFeatures + +typedef struct VkMemoryUnmapInfo { VkStructureType sType; - void *pNext; - VkBool32 protectedMemory; -} VkPhysicalDeviceProtectedMemoryFeatures; + const void *pNext; + VkMemoryUnmapFlags flags; + VkDeviceMemory WINE_VK_ALIGN(8) memory; +} VkMemoryUnmapInfo; +typedef VkMemoryUnmapInfo VkMemoryUnmapInfoKHR;
-typedef struct VkPhysicalDeviceProtectedMemoryProperties +typedef struct VkMemoryWin32HandlePropertiesKHR { VkStructureType sType; void *pNext; - VkBool32 protectedNoFault; -} VkPhysicalDeviceProtectedMemoryProperties; + uint32_t memoryTypeBits; +} VkMemoryWin32HandlePropertiesKHR;
-typedef struct VkPhysicalDeviceProvokingVertexFeaturesEXT +typedef struct VkMetalSurfaceCreateInfoEXT { VkStructureType sType; - void *pNext; - VkBool32 provokingVertexLast; - VkBool32 transformFeedbackPreservesProvokingVertex; -} VkPhysicalDeviceProvokingVertexFeaturesEXT; + const void *pNext; + VkMetalSurfaceCreateFlagsEXT flags; + const CAMetalLayer *pLayer; +} VkMetalSurfaceCreateInfoEXT;
-typedef struct VkPhysicalDeviceProvokingVertexPropertiesEXT +typedef struct VkMicromapBuildInfoEXT { VkStructureType sType; - void *pNext; - VkBool32 provokingVertexModePerPipeline; - VkBool32 transformFeedbackPreservesTriangleFanProvokingVertex; -} VkPhysicalDeviceProvokingVertexPropertiesEXT; + const void *pNext; + VkMicromapTypeEXT type; + VkBuildMicromapFlagsEXT flags; + VkBuildMicromapModeEXT mode; + VkMicromapEXT WINE_VK_ALIGN(8) dstMicromap; + uint32_t usageCountsCount; + const VkMicromapUsageEXT *pUsageCounts; + const VkMicromapUsageEXT * const*ppUsageCounts; + VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) data; + VkDeviceOrHostAddressKHR WINE_VK_ALIGN(8) scratchData; + VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) triangleArray; + VkDeviceSize WINE_VK_ALIGN(8) triangleArrayStride; +} VkMicromapBuildInfoEXT;
-typedef struct VkPhysicalDevicePushDescriptorProperties +typedef struct VkMicromapBuildSizesInfoEXT { VkStructureType sType; - void *pNext; - uint32_t maxPushDescriptors; -} VkPhysicalDevicePushDescriptorProperties; -typedef VkPhysicalDevicePushDescriptorProperties VkPhysicalDevicePushDescriptorPropertiesKHR; + const void *pNext; + VkDeviceSize WINE_VK_ALIGN(8) micromapSize; + VkDeviceSize WINE_VK_ALIGN(8) buildScratchSize; + VkBool32 discardable; +} VkMicromapBuildSizesInfoEXT;
-typedef struct VkPhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM +typedef struct VkMicromapCreateInfoEXT { VkStructureType sType; const void *pNext; - uint32_t queueFamilyIndex; - VkPhysicalDeviceDataGraphProcessingEngineTypeARM engineType; -} VkPhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM; + VkMicromapCreateFlagsEXT createFlags; + VkBuffer WINE_VK_ALIGN(8) buffer; + VkDeviceSize WINE_VK_ALIGN(8) offset; + VkDeviceSize WINE_VK_ALIGN(8) size; + VkMicromapTypeEXT type; + VkDeviceAddress WINE_VK_ALIGN(8) deviceAddress; +} VkMicromapCreateInfoEXT;
-typedef struct VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT +typedef struct VkMicromapTriangleEXT { - VkStructureType sType; - void *pNext; - VkBool32 formatRgba10x6WithoutYCbCrSampler; -} VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT; + uint32_t dataOffset; + uint16_t subdivisionLevel; + uint16_t format; +} VkMicromapTriangleEXT;
-typedef struct VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT +typedef struct VkMicromapVersionInfoEXT { VkStructureType sType; - void *pNext; - VkBool32 rasterizationOrderColorAttachmentAccess; - VkBool32 rasterizationOrderDepthAttachmentAccess; - VkBool32 rasterizationOrderStencilAttachmentAccess; -} VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT; -typedef VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM; + const void *pNext; + const uint8_t *pVersionData; +} VkMicromapVersionInfoEXT;
-typedef struct VkPhysicalDeviceRawAccessChainsFeaturesNV +typedef struct VkMultiDrawIndexedInfoEXT +{ + uint32_t firstIndex; + uint32_t indexCount; + int32_t vertexOffset; +} VkMultiDrawIndexedInfoEXT; + +typedef struct VkMultiDrawInfoEXT +{ + uint32_t firstVertex; + uint32_t vertexCount; +} VkMultiDrawInfoEXT; + +typedef struct VkMultisamplePropertiesEXT { VkStructureType sType; void *pNext; - VkBool32 shaderRawAccessChains; -} VkPhysicalDeviceRawAccessChainsFeaturesNV; + VkExtent2D maxSampleLocationGridSize; +} VkMultisamplePropertiesEXT;
-typedef struct VkPhysicalDeviceRayQueryFeaturesKHR +typedef struct VkMultisampledRenderToSingleSampledInfoEXT { VkStructureType sType; - void *pNext; - VkBool32 rayQuery; -} VkPhysicalDeviceRayQueryFeaturesKHR; + const void *pNext; + VkBool32 multisampledRenderToSingleSampledEnable; + VkSampleCountFlagBits rasterizationSamples; +} VkMultisampledRenderToSingleSampledInfoEXT;
-typedef struct VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV +typedef struct VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM { VkStructureType sType; - void *pNext; - VkBool32 rayTracingInvocationReorder; -} VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV; + const void *pNext; + uint32_t perViewRenderAreaCount; + const VkRect2D *pPerViewRenderAreas; +} VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM;
-typedef struct VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV +typedef struct VkMutableDescriptorTypeCreateInfoEXT { VkStructureType sType; - void *pNext; - VkRayTracingInvocationReorderModeNV rayTracingInvocationReorderReorderingHint; -} VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV; + const void *pNext; + uint32_t mutableDescriptorTypeListCount; + const VkMutableDescriptorTypeListEXT *pMutableDescriptorTypeLists; +} VkMutableDescriptorTypeCreateInfoEXT; +typedef VkMutableDescriptorTypeCreateInfoEXT VkMutableDescriptorTypeCreateInfoVALVE;
-typedef struct VkPhysicalDeviceRayTracingLinearSweptSpheresFeaturesNV +typedef struct VkOpaqueCaptureDescriptorDataCreateInfoEXT { VkStructureType sType; - void *pNext; - VkBool32 spheres; - VkBool32 linearSweptSpheres; -} VkPhysicalDeviceRayTracingLinearSweptSpheresFeaturesNV; + const void *pNext; + const void *opaqueCaptureDescriptorData; +} VkOpaqueCaptureDescriptorDataCreateInfoEXT;
-typedef struct VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR +typedef struct VkOpticalFlowExecuteInfoNV { VkStructureType sType; void *pNext; - VkBool32 rayTracingMaintenance1; - VkBool32 rayTracingPipelineTraceRaysIndirect2; -} VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR; + VkOpticalFlowExecuteFlagsNV flags; + uint32_t regionCount; + const VkRect2D *pRegions; +} VkOpticalFlowExecuteInfoNV;
-typedef struct VkPhysicalDeviceRayTracingMotionBlurFeaturesNV +typedef struct VkOpticalFlowImageFormatInfoNV { VkStructureType sType; - void *pNext; - VkBool32 rayTracingMotionBlur; - VkBool32 rayTracingMotionBlurPipelineTraceRaysIndirect; -} VkPhysicalDeviceRayTracingMotionBlurFeaturesNV; + const void *pNext; + VkOpticalFlowUsageFlagsNV usage; +} VkOpticalFlowImageFormatInfoNV;
-typedef struct VkPhysicalDeviceRayTracingPipelineFeaturesKHR +typedef struct VkOpticalFlowImageFormatPropertiesNV { VkStructureType sType; - void *pNext; - VkBool32 rayTracingPipeline; - VkBool32 rayTracingPipelineShaderGroupHandleCaptureReplay; - VkBool32 rayTracingPipelineShaderGroupHandleCaptureReplayMixed; - VkBool32 rayTracingPipelineTraceRaysIndirect; - VkBool32 rayTraversalPrimitiveCulling; -} VkPhysicalDeviceRayTracingPipelineFeaturesKHR; + const void *pNext; + VkFormat format; +} VkOpticalFlowImageFormatPropertiesNV;
-typedef struct VkPhysicalDeviceRayTracingPipelinePropertiesKHR +typedef struct VkOpticalFlowSessionCreateInfoNV { VkStructureType sType; void *pNext; - uint32_t shaderGroupHandleSize; - uint32_t maxRayRecursionDepth; - uint32_t maxShaderGroupStride; - uint32_t shaderGroupBaseAlignment; - uint32_t shaderGroupHandleCaptureReplaySize; - uint32_t maxRayDispatchInvocationCount; - uint32_t shaderGroupHandleAlignment; - uint32_t maxRayHitAttributeSize; -} VkPhysicalDeviceRayTracingPipelinePropertiesKHR; + uint32_t width; + uint32_t height; + VkFormat imageFormat; + VkFormat flowVectorFormat; + VkFormat costFormat; + VkOpticalFlowGridSizeFlagsNV outputGridSize; + VkOpticalFlowGridSizeFlagsNV hintGridSize; + VkOpticalFlowPerformanceLevelNV performanceLevel; + VkOpticalFlowSessionCreateFlagsNV flags; +} VkOpticalFlowSessionCreateInfoNV;
-typedef struct VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR +typedef struct VkOpticalFlowSessionCreatePrivateDataInfoNV { VkStructureType sType; void *pNext; - VkBool32 rayTracingPositionFetch; -} VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR; + uint32_t id; + uint32_t size; + const void *pPrivateData; +} VkOpticalFlowSessionCreatePrivateDataInfoNV;
-typedef struct VkPhysicalDeviceRayTracingPropertiesNV +typedef struct VkOutOfBandQueueTypeInfoNV { VkStructureType sType; - void *pNext; - uint32_t shaderGroupHandleSize; - uint32_t maxRecursionDepth; - uint32_t maxShaderGroupStride; - uint32_t shaderGroupBaseAlignment; - uint64_t WINE_VK_ALIGN(8) maxGeometryCount; - uint64_t WINE_VK_ALIGN(8) maxInstanceCount; - uint64_t WINE_VK_ALIGN(8) maxTriangleCount; - uint32_t maxDescriptorSetAccelerationStructures; -} VkPhysicalDeviceRayTracingPropertiesNV; + const void *pNext; + VkOutOfBandQueueTypeNV queueType; +} VkOutOfBandQueueTypeInfoNV;
-typedef struct VkPhysicalDeviceRayTracingValidationFeaturesNV +typedef struct VkPartitionedAccelerationStructureFlagsNV { VkStructureType sType; void *pNext; - VkBool32 rayTracingValidation; -} VkPhysicalDeviceRayTracingValidationFeaturesNV; + VkBool32 enablePartitionTranslation; +} VkPartitionedAccelerationStructureFlagsNV;
-typedef struct VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG +typedef struct VkPartitionedAccelerationStructureUpdateInstanceDataNV { - VkStructureType sType; - void *pNext; - VkBool32 relaxedLineRasterization; -} VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG; + uint32_t instanceIndex; + uint32_t instanceContributionToHitGroupIndex; + VkDeviceAddress WINE_VK_ALIGN(8) accelerationStructure; +} VkPartitionedAccelerationStructureUpdateInstanceDataNV;
-typedef struct VkPhysicalDeviceRenderPassStripedFeaturesARM +typedef struct VkPartitionedAccelerationStructureWriteInstanceDataNV { - VkStructureType sType; - void *pNext; - VkBool32 renderPassStriped; -} VkPhysicalDeviceRenderPassStripedFeaturesARM; + VkTransformMatrixKHR transform; + float explicitAABB[6]; + uint32_t instanceID; + uint32_t instanceMask; + uint32_t instanceContributionToHitGroupIndex; + VkPartitionedAccelerationStructureInstanceFlagsNV instanceFlags; + uint32_t instanceIndex; + uint32_t partitionIndex; + VkDeviceAddress WINE_VK_ALIGN(8) accelerationStructure; +} VkPartitionedAccelerationStructureWriteInstanceDataNV;
-typedef struct VkPhysicalDeviceRenderPassStripedPropertiesARM +typedef struct VkPartitionedAccelerationStructureWritePartitionTranslationDataNV { - VkStructureType sType; - void *pNext; - VkExtent2D renderPassStripeGranularity; - uint32_t maxRenderPassStripes; -} VkPhysicalDeviceRenderPassStripedPropertiesARM; + uint32_t partitionIndex; + float partitionTranslation[3]; +} VkPartitionedAccelerationStructureWritePartitionTranslationDataNV;
-typedef struct VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV +typedef struct VkPerTileBeginInfoQCOM { VkStructureType sType; - void *pNext; - VkBool32 representativeFragmentTest; -} VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV; + const void *pNext; +} VkPerTileBeginInfoQCOM;
-typedef struct VkPhysicalDeviceRobustness2FeaturesKHR +typedef struct VkPerTileEndInfoQCOM { VkStructureType sType; - void *pNext; - VkBool32 robustBufferAccess2; - VkBool32 robustImageAccess2; - VkBool32 nullDescriptor; -} VkPhysicalDeviceRobustness2FeaturesKHR; -typedef VkPhysicalDeviceRobustness2FeaturesKHR VkPhysicalDeviceRobustness2FeaturesEXT; + const void *pNext; +} VkPerTileEndInfoQCOM;
-typedef struct VkPhysicalDeviceRobustness2PropertiesKHR +typedef struct VkPerformanceConfigurationAcquireInfoINTEL { VkStructureType sType; - void *pNext; - VkDeviceSize WINE_VK_ALIGN(8) robustStorageBufferAccessSizeAlignment; - VkDeviceSize WINE_VK_ALIGN(8) robustUniformBufferAccessSizeAlignment; -} VkPhysicalDeviceRobustness2PropertiesKHR; -typedef VkPhysicalDeviceRobustness2PropertiesKHR VkPhysicalDeviceRobustness2PropertiesEXT; + const void *pNext; + VkPerformanceConfigurationTypeINTEL type; +} VkPerformanceConfigurationAcquireInfoINTEL;
-typedef struct VkPhysicalDeviceSampleLocationsPropertiesEXT +typedef struct VkPerformanceCounterDescriptionKHR { VkStructureType sType; void *pNext; - VkSampleCountFlags sampleLocationSampleCounts; - VkExtent2D maxSampleLocationGridSize; - float sampleLocationCoordinateRange[2]; - uint32_t sampleLocationSubPixelBits; - VkBool32 variableSampleLocations; -} VkPhysicalDeviceSampleLocationsPropertiesEXT; + VkPerformanceCounterDescriptionFlagsKHR flags; + char name[VK_MAX_DESCRIPTION_SIZE]; + char category[VK_MAX_DESCRIPTION_SIZE]; + char description[VK_MAX_DESCRIPTION_SIZE]; +} VkPerformanceCounterDescriptionKHR;
-typedef struct VkPhysicalDeviceSamplerFilterMinmaxProperties +typedef struct VkPerformanceCounterKHR { VkStructureType sType; void *pNext; - VkBool32 filterMinmaxSingleComponentFormats; - VkBool32 filterMinmaxImageComponentMapping; -} VkPhysicalDeviceSamplerFilterMinmaxProperties; -typedef VkPhysicalDeviceSamplerFilterMinmaxProperties VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT; + VkPerformanceCounterUnitKHR unit; + VkPerformanceCounterScopeKHR scope; + VkPerformanceCounterStorageKHR storage; + uint8_t uuid[VK_UUID_SIZE]; +} VkPerformanceCounterKHR;
-typedef struct VkPhysicalDeviceSamplerYcbcrConversionFeatures +typedef union VkPerformanceCounterResultKHR { - VkStructureType sType; - void *pNext; - VkBool32 samplerYcbcrConversion; -} VkPhysicalDeviceSamplerYcbcrConversionFeatures; -typedef VkPhysicalDeviceSamplerYcbcrConversionFeatures VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR; + int32_t int32; + int64_t int64; + uint32_t uint32; + uint64_t WINE_VK_ALIGN(8) uint64; + float float32; + double float64; +} VkPerformanceCounterResultKHR;
-typedef struct VkPhysicalDeviceScalarBlockLayoutFeatures +typedef struct VkPerformanceMarkerInfoINTEL { VkStructureType sType; - void *pNext; - VkBool32 scalarBlockLayout; -} VkPhysicalDeviceScalarBlockLayoutFeatures; -typedef VkPhysicalDeviceScalarBlockLayoutFeatures VkPhysicalDeviceScalarBlockLayoutFeaturesEXT; + const void *pNext; + uint64_t WINE_VK_ALIGN(8) marker; +} VkPerformanceMarkerInfoINTEL;
-typedef struct VkPhysicalDeviceSchedulingControlsFeaturesARM +typedef struct VkPerformanceOverrideInfoINTEL { VkStructureType sType; - void *pNext; - VkBool32 schedulingControls; -} VkPhysicalDeviceSchedulingControlsFeaturesARM; + const void *pNext; + VkPerformanceOverrideTypeINTEL type; + VkBool32 enable; + uint64_t WINE_VK_ALIGN(8) parameter; +} VkPerformanceOverrideInfoINTEL;
-typedef struct VkPhysicalDeviceSchedulingControlsPropertiesARM +typedef struct VkPerformanceQueryReservationInfoKHR { VkStructureType sType; - void *pNext; - VkPhysicalDeviceSchedulingControlsFlagsARM WINE_VK_ALIGN(8) schedulingControlsFlags; -} VkPhysicalDeviceSchedulingControlsPropertiesARM; + const void *pNext; + uint32_t maxPerformanceQueriesPerPool; +} VkPerformanceQueryReservationInfoKHR;
-typedef struct VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures +typedef struct VkPerformanceQuerySubmitInfoKHR { VkStructureType sType; - void *pNext; - VkBool32 separateDepthStencilLayouts; -} VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures; -typedef VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR; + const void *pNext; + uint32_t counterPassIndex; +} VkPerformanceQuerySubmitInfoKHR;
-typedef struct VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV +typedef struct VkPerformanceStreamMarkerInfoINTEL { VkStructureType sType; - void *pNext; - VkBool32 shaderFloat16VectorAtomics; -} VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV; + const void *pNext; + uint32_t marker; +} VkPerformanceStreamMarkerInfoINTEL;
-typedef struct VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT +typedef struct VkPerformanceValueINTEL { - VkStructureType sType; - void *pNext; - VkBool32 shaderBufferFloat16Atomics; - VkBool32 shaderBufferFloat16AtomicAdd; - VkBool32 shaderBufferFloat16AtomicMinMax; - VkBool32 shaderBufferFloat32AtomicMinMax; - VkBool32 shaderBufferFloat64AtomicMinMax; - VkBool32 shaderSharedFloat16Atomics; - VkBool32 shaderSharedFloat16AtomicAdd; - VkBool32 shaderSharedFloat16AtomicMinMax; - VkBool32 shaderSharedFloat32AtomicMinMax; - VkBool32 shaderSharedFloat64AtomicMinMax; - VkBool32 shaderImageFloat32AtomicMinMax; - VkBool32 sparseImageFloat32AtomicMinMax; -} VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT; + VkPerformanceValueTypeINTEL type; + VkPerformanceValueDataINTEL WINE_VK_ALIGN(8) data; +} VkPerformanceValueINTEL;
-typedef struct VkPhysicalDeviceShaderAtomicFloatFeaturesEXT +typedef struct VkPhysicalDevice16BitStorageFeatures { VkStructureType sType; void *pNext; - VkBool32 shaderBufferFloat32Atomics; - VkBool32 shaderBufferFloat32AtomicAdd; - VkBool32 shaderBufferFloat64Atomics; - VkBool32 shaderBufferFloat64AtomicAdd; - VkBool32 shaderSharedFloat32Atomics; - VkBool32 shaderSharedFloat32AtomicAdd; - VkBool32 shaderSharedFloat64Atomics; - VkBool32 shaderSharedFloat64AtomicAdd; - VkBool32 shaderImageFloat32Atomics; - VkBool32 shaderImageFloat32AtomicAdd; - VkBool32 sparseImageFloat32Atomics; - VkBool32 sparseImageFloat32AtomicAdd; -} VkPhysicalDeviceShaderAtomicFloatFeaturesEXT; + VkBool32 storageBuffer16BitAccess; + VkBool32 uniformAndStorageBuffer16BitAccess; + VkBool32 storagePushConstant16; + VkBool32 storageInputOutput16; +} VkPhysicalDevice16BitStorageFeatures; +typedef VkPhysicalDevice16BitStorageFeatures VkPhysicalDevice16BitStorageFeaturesKHR;
-typedef struct VkPhysicalDeviceShaderAtomicInt64Features +typedef struct VkPhysicalDevice4444FormatsFeaturesEXT { VkStructureType sType; void *pNext; - VkBool32 shaderBufferInt64Atomics; - VkBool32 shaderSharedInt64Atomics; -} VkPhysicalDeviceShaderAtomicInt64Features; -typedef VkPhysicalDeviceShaderAtomicInt64Features VkPhysicalDeviceShaderAtomicInt64FeaturesKHR; + VkBool32 formatA4R4G4B4; + VkBool32 formatA4B4G4R4; +} VkPhysicalDevice4444FormatsFeaturesEXT;
-typedef struct VkPhysicalDeviceShaderBfloat16FeaturesKHR +typedef struct VkPhysicalDevice8BitStorageFeatures { VkStructureType sType; void *pNext; - VkBool32 shaderBFloat16Type; - VkBool32 shaderBFloat16DotProduct; - VkBool32 shaderBFloat16CooperativeMatrix; -} VkPhysicalDeviceShaderBfloat16FeaturesKHR; + VkBool32 storageBuffer8BitAccess; + VkBool32 uniformAndStorageBuffer8BitAccess; + VkBool32 storagePushConstant8; +} VkPhysicalDevice8BitStorageFeatures; +typedef VkPhysicalDevice8BitStorageFeatures VkPhysicalDevice8BitStorageFeaturesKHR;
-typedef struct VkPhysicalDeviceShaderClockFeaturesKHR +typedef struct VkPhysicalDeviceASTCDecodeFeaturesEXT { VkStructureType sType; void *pNext; - VkBool32 shaderSubgroupClock; - VkBool32 shaderDeviceClock; -} VkPhysicalDeviceShaderClockFeaturesKHR; + VkBool32 decodeModeSharedExponent; +} VkPhysicalDeviceASTCDecodeFeaturesEXT;
-typedef struct VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM +typedef struct VkPhysicalDeviceAccelerationStructureFeaturesKHR { VkStructureType sType; void *pNext; - VkBool32 shaderCoreBuiltins; -} VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM; + VkBool32 accelerationStructure; + VkBool32 accelerationStructureCaptureReplay; + VkBool32 accelerationStructureIndirectBuild; + VkBool32 accelerationStructureHostCommands; + VkBool32 descriptorBindingAccelerationStructureUpdateAfterBind; +} VkPhysicalDeviceAccelerationStructureFeaturesKHR;
-typedef struct VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM +typedef struct VkPhysicalDeviceAccelerationStructurePropertiesKHR { VkStructureType sType; void *pNext; - uint64_t WINE_VK_ALIGN(8) shaderCoreMask; - uint32_t shaderCoreCount; - uint32_t shaderWarpsPerCore; -} VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM; + uint64_t WINE_VK_ALIGN(8) maxGeometryCount; + uint64_t WINE_VK_ALIGN(8) maxInstanceCount; + uint64_t WINE_VK_ALIGN(8) maxPrimitiveCount; + uint32_t maxPerStageDescriptorAccelerationStructures; + uint32_t maxPerStageDescriptorUpdateAfterBindAccelerationStructures; + uint32_t maxDescriptorSetAccelerationStructures; + uint32_t maxDescriptorSetUpdateAfterBindAccelerationStructures; + uint32_t minAccelerationStructureScratchOffsetAlignment; +} VkPhysicalDeviceAccelerationStructurePropertiesKHR;
-typedef struct VkPhysicalDeviceShaderCoreProperties2AMD +typedef struct VkPhysicalDeviceAddressBindingReportFeaturesEXT { VkStructureType sType; void *pNext; - VkShaderCorePropertiesFlagsAMD shaderCoreFeatures; - uint32_t activeComputeUnitCount; -} VkPhysicalDeviceShaderCoreProperties2AMD; + VkBool32 reportAddressBinding; +} VkPhysicalDeviceAddressBindingReportFeaturesEXT;
-typedef struct VkPhysicalDeviceShaderCorePropertiesAMD +typedef struct VkPhysicalDeviceAntiLagFeaturesAMD { VkStructureType sType; void *pNext; - uint32_t shaderEngineCount; - uint32_t shaderArraysPerEngineCount; - uint32_t computeUnitsPerShaderArray; - uint32_t simdPerComputeUnit; - uint32_t wavefrontsPerSimd; - uint32_t wavefrontSize; - uint32_t sgprsPerSimd; - uint32_t minSgprAllocation; - uint32_t maxSgprAllocation; - uint32_t sgprAllocationGranularity; - uint32_t vgprsPerSimd; - uint32_t minVgprAllocation; - uint32_t maxVgprAllocation; - uint32_t vgprAllocationGranularity; -} VkPhysicalDeviceShaderCorePropertiesAMD; + VkBool32 antiLag; +} VkPhysicalDeviceAntiLagFeaturesAMD;
-typedef struct VkPhysicalDeviceShaderCorePropertiesARM +typedef struct VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT { VkStructureType sType; void *pNext; - uint32_t pixelRate; - uint32_t texelRate; - uint32_t fmaRate; -} VkPhysicalDeviceShaderCorePropertiesARM; + VkBool32 attachmentFeedbackLoopDynamicState; +} VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT;
-typedef struct VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures +typedef struct VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT { VkStructureType sType; void *pNext; - VkBool32 shaderDemoteToHelperInvocation; -} VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures; -typedef VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT; - + VkBool32 attachmentFeedbackLoopLayout; +} VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT;
-typedef struct VkPhysicalDeviceShaderDrawParametersFeatures +typedef struct VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT { VkStructureType sType; void *pNext; - VkBool32 shaderDrawParameters; -} VkPhysicalDeviceShaderDrawParametersFeatures; -typedef VkPhysicalDeviceShaderDrawParametersFeatures VkPhysicalDeviceShaderDrawParameterFeatures; + VkBool32 advancedBlendCoherentOperations; +} VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT;
-typedef struct VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD +typedef struct VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT { VkStructureType sType; void *pNext; - VkBool32 shaderEarlyAndLateFragmentTests; -} VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD; + uint32_t advancedBlendMaxColorAttachments; + VkBool32 advancedBlendIndependentBlend; + VkBool32 advancedBlendNonPremultipliedSrcColor; + VkBool32 advancedBlendNonPremultipliedDstColor; + VkBool32 advancedBlendCorrelatedOverlap; + VkBool32 advancedBlendAllOperations; +} VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT;
-typedef struct VkPhysicalDeviceShaderExpectAssumeFeatures +typedef struct VkPhysicalDeviceBorderColorSwizzleFeaturesEXT { VkStructureType sType; void *pNext; - VkBool32 shaderExpectAssume; -} VkPhysicalDeviceShaderExpectAssumeFeatures; -typedef VkPhysicalDeviceShaderExpectAssumeFeatures VkPhysicalDeviceShaderExpectAssumeFeaturesKHR; + VkBool32 borderColorSwizzle; + VkBool32 borderColorSwizzleFromImage; +} VkPhysicalDeviceBorderColorSwizzleFeaturesEXT;
-typedef struct VkPhysicalDeviceShaderFloat16Int8Features +typedef struct VkPhysicalDeviceBufferDeviceAddressFeatures { VkStructureType sType; void *pNext; - VkBool32 shaderFloat16; - VkBool32 shaderInt8; -} VkPhysicalDeviceShaderFloat16Int8Features; -typedef VkPhysicalDeviceShaderFloat16Int8Features VkPhysicalDeviceShaderFloat16Int8FeaturesKHR; -typedef VkPhysicalDeviceShaderFloat16Int8Features VkPhysicalDeviceFloat16Int8FeaturesKHR; + VkBool32 bufferDeviceAddress; + VkBool32 bufferDeviceAddressCaptureReplay; + VkBool32 bufferDeviceAddressMultiDevice; +} VkPhysicalDeviceBufferDeviceAddressFeatures; +typedef VkPhysicalDeviceBufferDeviceAddressFeatures VkPhysicalDeviceBufferDeviceAddressFeaturesKHR;
-typedef struct VkPhysicalDeviceShaderFloat8FeaturesEXT +typedef struct VkPhysicalDeviceBufferDeviceAddressFeaturesEXT { VkStructureType sType; void *pNext; - VkBool32 shaderFloat8; - VkBool32 shaderFloat8CooperativeMatrix; -} VkPhysicalDeviceShaderFloat8FeaturesEXT; + VkBool32 bufferDeviceAddress; + VkBool32 bufferDeviceAddressCaptureReplay; + VkBool32 bufferDeviceAddressMultiDevice; +} VkPhysicalDeviceBufferDeviceAddressFeaturesEXT; +typedef VkPhysicalDeviceBufferDeviceAddressFeaturesEXT VkPhysicalDeviceBufferAddressFeaturesEXT;
-typedef struct VkPhysicalDeviceShaderFloatControls2Features +typedef struct VkPhysicalDeviceClusterAccelerationStructureFeaturesNV { VkStructureType sType; void *pNext; - VkBool32 shaderFloatControls2; -} VkPhysicalDeviceShaderFloatControls2Features; -typedef VkPhysicalDeviceShaderFloatControls2Features VkPhysicalDeviceShaderFloatControls2FeaturesKHR; + VkBool32 clusterAccelerationStructure; +} VkPhysicalDeviceClusterAccelerationStructureFeaturesNV;
-typedef struct VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT +typedef struct VkPhysicalDeviceClusterAccelerationStructurePropertiesNV { VkStructureType sType; void *pNext; - VkBool32 shaderImageInt64Atomics; - VkBool32 sparseImageInt64Atomics; -} VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT; + uint32_t maxVerticesPerCluster; + uint32_t maxTrianglesPerCluster; + uint32_t clusterScratchByteAlignment; + uint32_t clusterByteAlignment; + uint32_t clusterTemplateByteAlignment; + uint32_t clusterBottomLevelByteAlignment; + uint32_t clusterTemplateBoundsByteAlignment; + uint32_t maxClusterGeometryIndex; +} VkPhysicalDeviceClusterAccelerationStructurePropertiesNV;
-typedef struct VkPhysicalDeviceShaderImageFootprintFeaturesNV +typedef struct VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI { VkStructureType sType; void *pNext; - VkBool32 imageFootprint; -} VkPhysicalDeviceShaderImageFootprintFeaturesNV; + VkBool32 clustercullingShader; + VkBool32 multiviewClusterCullingShader; +} VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI;
-typedef struct VkPhysicalDeviceShaderIntegerDotProductFeatures +typedef struct VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI { VkStructureType sType; void *pNext; - VkBool32 shaderIntegerDotProduct; -} VkPhysicalDeviceShaderIntegerDotProductFeatures; -typedef VkPhysicalDeviceShaderIntegerDotProductFeatures VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR; + uint32_t maxWorkGroupCount[3]; + uint32_t maxWorkGroupSize[3]; + uint32_t maxOutputClusterCount; + VkDeviceSize WINE_VK_ALIGN(8) indirectBufferOffsetAlignment; +} VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI;
-typedef struct VkPhysicalDeviceShaderIntegerDotProductProperties +typedef struct VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI { VkStructureType sType; void *pNext; - VkBool32 integerDotProduct8BitUnsignedAccelerated; - VkBool32 integerDotProduct8BitSignedAccelerated; - VkBool32 integerDotProduct8BitMixedSignednessAccelerated; - VkBool32 integerDotProduct4x8BitPackedUnsignedAccelerated; - VkBool32 integerDotProduct4x8BitPackedSignedAccelerated; - VkBool32 integerDotProduct4x8BitPackedMixedSignednessAccelerated; - VkBool32 integerDotProduct16BitUnsignedAccelerated; - VkBool32 integerDotProduct16BitSignedAccelerated; - VkBool32 integerDotProduct16BitMixedSignednessAccelerated; - VkBool32 integerDotProduct32BitUnsignedAccelerated; - VkBool32 integerDotProduct32BitSignedAccelerated; - VkBool32 integerDotProduct32BitMixedSignednessAccelerated; - VkBool32 integerDotProduct64BitUnsignedAccelerated; - VkBool32 integerDotProduct64BitSignedAccelerated; - VkBool32 integerDotProduct64BitMixedSignednessAccelerated; - VkBool32 integerDotProductAccumulatingSaturating8BitUnsignedAccelerated; - VkBool32 integerDotProductAccumulatingSaturating8BitSignedAccelerated; - VkBool32 integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated; - VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated; - VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated; - VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated; - VkBool32 integerDotProductAccumulatingSaturating16BitUnsignedAccelerated; - VkBool32 integerDotProductAccumulatingSaturating16BitSignedAccelerated; - VkBool32 integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated; - VkBool32 integerDotProductAccumulatingSaturating32BitUnsignedAccelerated; - VkBool32 integerDotProductAccumulatingSaturating32BitSignedAccelerated; - VkBool32 integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated; - VkBool32 integerDotProductAccumulatingSaturating64BitUnsignedAccelerated; - VkBool32 integerDotProductAccumulatingSaturating64BitSignedAccelerated; - VkBool32 integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated; -} VkPhysicalDeviceShaderIntegerDotProductProperties; -typedef VkPhysicalDeviceShaderIntegerDotProductProperties VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR; + VkBool32 clusterShadingRate; +} VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI;
-typedef struct VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL +typedef struct VkPhysicalDeviceCoherentMemoryFeaturesAMD { VkStructureType sType; void *pNext; - VkBool32 shaderIntegerFunctions2; -} VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL; + VkBool32 deviceCoherentMemory; +} VkPhysicalDeviceCoherentMemoryFeaturesAMD;
-typedef struct VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR +typedef struct VkPhysicalDeviceColorWriteEnableFeaturesEXT { VkStructureType sType; void *pNext; - VkBool32 shaderMaximalReconvergence; -} VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR; + VkBool32 colorWriteEnable; +} VkPhysicalDeviceColorWriteEnableFeaturesEXT;
-typedef struct VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT +typedef struct VkPhysicalDeviceCommandBufferInheritanceFeaturesNV { VkStructureType sType; void *pNext; - VkBool32 shaderModuleIdentifier; -} VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT; + VkBool32 commandBufferInheritance; +} VkPhysicalDeviceCommandBufferInheritanceFeaturesNV;
-typedef struct VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT +typedef struct VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR { VkStructureType sType; void *pNext; - uint8_t shaderModuleIdentifierAlgorithmUUID[VK_UUID_SIZE]; -} VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT; + VkBool32 computeDerivativeGroupQuads; + VkBool32 computeDerivativeGroupLinear; +} VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR; +typedef VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR VkPhysicalDeviceComputeShaderDerivativesFeaturesNV;
-typedef struct VkPhysicalDeviceShaderObjectFeaturesEXT +typedef struct VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR { VkStructureType sType; void *pNext; - VkBool32 shaderObject; -} VkPhysicalDeviceShaderObjectFeaturesEXT; + VkBool32 meshAndTaskShaderDerivatives; +} VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR;
-typedef struct VkPhysicalDeviceShaderObjectPropertiesEXT +typedef struct VkPhysicalDeviceConditionalRenderingFeaturesEXT { VkStructureType sType; void *pNext; - uint8_t shaderBinaryUUID[VK_UUID_SIZE]; - uint32_t shaderBinaryVersion; -} VkPhysicalDeviceShaderObjectPropertiesEXT; + VkBool32 conditionalRendering; + VkBool32 inheritedConditionalRendering; +} VkPhysicalDeviceConditionalRenderingFeaturesEXT;
-typedef struct VkPhysicalDeviceShaderQuadControlFeaturesKHR +typedef struct VkPhysicalDeviceConservativeRasterizationPropertiesEXT { VkStructureType sType; void *pNext; - VkBool32 shaderQuadControl; -} VkPhysicalDeviceShaderQuadControlFeaturesKHR; + float primitiveOverestimationSize; + float maxExtraPrimitiveOverestimationSize; + float extraPrimitiveOverestimationSizeGranularity; + VkBool32 primitiveUnderestimation; + VkBool32 conservativePointAndLineRasterization; + VkBool32 degenerateTrianglesRasterized; + VkBool32 degenerateLinesRasterized; + VkBool32 fullyCoveredFragmentShaderInputVariable; + VkBool32 conservativeRasterizationPostDepthCoverage; +} VkPhysicalDeviceConservativeRasterizationPropertiesEXT;
-typedef struct VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR +typedef struct VkPhysicalDeviceCooperativeMatrix2FeaturesNV { VkStructureType sType; void *pNext; - VkBool32 shaderRelaxedExtendedInstruction; -} VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR; + VkBool32 cooperativeMatrixWorkgroupScope; + VkBool32 cooperativeMatrixFlexibleDimensions; + VkBool32 cooperativeMatrixReductions; + VkBool32 cooperativeMatrixConversions; + VkBool32 cooperativeMatrixPerElementOperations; + VkBool32 cooperativeMatrixTensorAddressing; + VkBool32 cooperativeMatrixBlockLoads; +} VkPhysicalDeviceCooperativeMatrix2FeaturesNV;
-typedef struct VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT +typedef struct VkPhysicalDeviceCooperativeMatrix2PropertiesNV { VkStructureType sType; void *pNext; - VkBool32 shaderReplicatedComposites; -} VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT; + uint32_t cooperativeMatrixWorkgroupScopeMaxWorkgroupSize; + uint32_t cooperativeMatrixFlexibleDimensionsMaxDimension; + uint32_t cooperativeMatrixWorkgroupScopeReservedSharedMemory; +} VkPhysicalDeviceCooperativeMatrix2PropertiesNV;
-typedef struct VkPhysicalDeviceShaderSMBuiltinsFeaturesNV +typedef struct VkPhysicalDeviceCooperativeMatrixFeaturesKHR { VkStructureType sType; void *pNext; - VkBool32 shaderSMBuiltins; -} VkPhysicalDeviceShaderSMBuiltinsFeaturesNV; + VkBool32 cooperativeMatrix; + VkBool32 cooperativeMatrixRobustBufferAccess; +} VkPhysicalDeviceCooperativeMatrixFeaturesKHR;
-typedef struct VkPhysicalDeviceShaderSMBuiltinsPropertiesNV +typedef struct VkPhysicalDeviceCooperativeMatrixFeaturesNV { VkStructureType sType; void *pNext; - uint32_t shaderSMCount; - uint32_t shaderWarpsPerSM; -} VkPhysicalDeviceShaderSMBuiltinsPropertiesNV; + VkBool32 cooperativeMatrix; + VkBool32 cooperativeMatrixRobustBufferAccess; +} VkPhysicalDeviceCooperativeMatrixFeaturesNV;
-typedef struct VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures +typedef struct VkPhysicalDeviceCooperativeMatrixPropertiesKHR { VkStructureType sType; void *pNext; - VkBool32 shaderSubgroupExtendedTypes; -} VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures; -typedef VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures VkPhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR; + VkShaderStageFlags cooperativeMatrixSupportedStages; +} VkPhysicalDeviceCooperativeMatrixPropertiesKHR;
-typedef struct VkPhysicalDeviceShaderSubgroupRotateFeatures +typedef struct VkPhysicalDeviceCooperativeMatrixPropertiesNV { VkStructureType sType; void *pNext; - VkBool32 shaderSubgroupRotate; - VkBool32 shaderSubgroupRotateClustered; -} VkPhysicalDeviceShaderSubgroupRotateFeatures; -typedef VkPhysicalDeviceShaderSubgroupRotateFeatures VkPhysicalDeviceShaderSubgroupRotateFeaturesKHR; + VkShaderStageFlags cooperativeMatrixSupportedStages; +} VkPhysicalDeviceCooperativeMatrixPropertiesNV;
-typedef struct VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR +typedef struct VkPhysicalDeviceCooperativeVectorFeaturesNV { VkStructureType sType; void *pNext; - VkBool32 shaderSubgroupUniformControlFlow; -} VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR; + VkBool32 cooperativeVector; + VkBool32 cooperativeVectorTraining; +} VkPhysicalDeviceCooperativeVectorFeaturesNV;
-typedef struct VkPhysicalDeviceShaderTerminateInvocationFeatures +typedef struct VkPhysicalDeviceCooperativeVectorPropertiesNV { VkStructureType sType; void *pNext; - VkBool32 shaderTerminateInvocation; -} VkPhysicalDeviceShaderTerminateInvocationFeatures; -typedef VkPhysicalDeviceShaderTerminateInvocationFeatures VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR; + VkShaderStageFlags cooperativeVectorSupportedStages; + VkBool32 cooperativeVectorTrainingFloat16Accumulation; + VkBool32 cooperativeVectorTrainingFloat32Accumulation; + uint32_t maxCooperativeVectorComponents; +} VkPhysicalDeviceCooperativeVectorPropertiesNV;
-typedef struct VkPhysicalDeviceShaderTileImageFeaturesEXT +typedef struct VkPhysicalDeviceCopyMemoryIndirectFeaturesNV { VkStructureType sType; void *pNext; - VkBool32 shaderTileImageColorReadAccess; - VkBool32 shaderTileImageDepthReadAccess; - VkBool32 shaderTileImageStencilReadAccess; -} VkPhysicalDeviceShaderTileImageFeaturesEXT; + VkBool32 indirectCopy; +} VkPhysicalDeviceCopyMemoryIndirectFeaturesNV;
-typedef struct VkPhysicalDeviceShaderTileImagePropertiesEXT +typedef struct VkPhysicalDeviceCopyMemoryIndirectPropertiesNV { VkStructureType sType; void *pNext; - VkBool32 shaderTileImageCoherentReadAccelerated; - VkBool32 shaderTileImageReadSampleFromPixelRateInvocation; - VkBool32 shaderTileImageReadFromHelperInvocation; -} VkPhysicalDeviceShaderTileImagePropertiesEXT; + VkQueueFlags supportedQueues; +} VkPhysicalDeviceCopyMemoryIndirectPropertiesNV;
-typedef struct VkPhysicalDeviceShaderUntypedPointersFeaturesKHR +typedef struct VkPhysicalDeviceCornerSampledImageFeaturesNV { VkStructureType sType; void *pNext; - VkBool32 shaderUntypedPointers; -} VkPhysicalDeviceShaderUntypedPointersFeaturesKHR; + VkBool32 cornerSampledImage; +} VkPhysicalDeviceCornerSampledImageFeaturesNV;
-typedef struct VkPhysicalDeviceShadingRateImageFeaturesNV +typedef struct VkPhysicalDeviceCoverageReductionModeFeaturesNV { VkStructureType sType; void *pNext; - VkBool32 shadingRateImage; - VkBool32 shadingRateCoarseSampleOrder; -} VkPhysicalDeviceShadingRateImageFeaturesNV; + VkBool32 coverageReductionMode; +} VkPhysicalDeviceCoverageReductionModeFeaturesNV;
-typedef struct VkPhysicalDeviceShadingRateImagePropertiesNV +typedef struct VkPhysicalDeviceCubicClampFeaturesQCOM { VkStructureType sType; void *pNext; - VkExtent2D shadingRateTexelSize; - uint32_t shadingRatePaletteSize; - uint32_t shadingRateMaxCoarseSamples; -} VkPhysicalDeviceShadingRateImagePropertiesNV; + VkBool32 cubicRangeClamp; +} VkPhysicalDeviceCubicClampFeaturesQCOM;
-typedef struct VkPhysicalDeviceSparseImageFormatInfo2 +typedef struct VkPhysicalDeviceCubicWeightsFeaturesQCOM { VkStructureType sType; - const void *pNext; - VkFormat format; - VkImageType type; - VkSampleCountFlagBits samples; - VkImageUsageFlags usage; - VkImageTiling tiling; -} VkPhysicalDeviceSparseImageFormatInfo2; -typedef VkPhysicalDeviceSparseImageFormatInfo2 VkPhysicalDeviceSparseImageFormatInfo2KHR; - -typedef struct VkPhysicalDeviceSparseProperties -{ - VkBool32 residencyStandard2DBlockShape; - VkBool32 residencyStandard2DMultisampleBlockShape; - VkBool32 residencyStandard3DBlockShape; - VkBool32 residencyAlignedMipSize; - VkBool32 residencyNonResidentStrict; -} VkPhysicalDeviceSparseProperties; + void *pNext; + VkBool32 selectableCubicWeights; +} VkPhysicalDeviceCubicWeightsFeaturesQCOM;
-typedef struct VkPhysicalDeviceSubgroupProperties +typedef struct VkPhysicalDeviceCustomBorderColorFeaturesEXT { VkStructureType sType; void *pNext; - uint32_t subgroupSize; - VkShaderStageFlags supportedStages; - VkSubgroupFeatureFlags supportedOperations; - VkBool32 quadOperationsInAllStages; -} VkPhysicalDeviceSubgroupProperties; + VkBool32 customBorderColors; + VkBool32 customBorderColorWithoutFormat; +} VkPhysicalDeviceCustomBorderColorFeaturesEXT;
-typedef struct VkPhysicalDeviceSubgroupSizeControlFeatures +typedef struct VkPhysicalDeviceCustomBorderColorPropertiesEXT { VkStructureType sType; void *pNext; - VkBool32 subgroupSizeControl; - VkBool32 computeFullSubgroups; -} VkPhysicalDeviceSubgroupSizeControlFeatures; -typedef VkPhysicalDeviceSubgroupSizeControlFeatures VkPhysicalDeviceSubgroupSizeControlFeaturesEXT; + uint32_t maxCustomBorderColorSamplers; +} VkPhysicalDeviceCustomBorderColorPropertiesEXT;
-typedef struct VkPhysicalDeviceSubgroupSizeControlProperties +typedef struct VkPhysicalDeviceDataGraphFeaturesARM { VkStructureType sType; void *pNext; - uint32_t minSubgroupSize; - uint32_t maxSubgroupSize; - uint32_t maxComputeWorkgroupSubgroups; - VkShaderStageFlags requiredSubgroupSizeStages; -} VkPhysicalDeviceSubgroupSizeControlProperties; -typedef VkPhysicalDeviceSubgroupSizeControlProperties VkPhysicalDeviceSubgroupSizeControlPropertiesEXT; + VkBool32 dataGraph; + VkBool32 dataGraphUpdateAfterBind; + VkBool32 dataGraphSpecializationConstants; + VkBool32 dataGraphDescriptorBuffer; + VkBool32 dataGraphShaderModule; +} VkPhysicalDeviceDataGraphFeaturesARM;
-typedef struct VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT +typedef struct VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV { VkStructureType sType; void *pNext; - VkBool32 subpassMergeFeedback; -} VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT; + VkBool32 dedicatedAllocationImageAliasing; +} VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV;
-typedef struct VkPhysicalDeviceSubpassShadingFeaturesHUAWEI +typedef struct VkPhysicalDeviceDepthBiasControlFeaturesEXT { VkStructureType sType; void *pNext; - VkBool32 subpassShading; -} VkPhysicalDeviceSubpassShadingFeaturesHUAWEI; + VkBool32 depthBiasControl; + VkBool32 leastRepresentableValueForceUnormRepresentation; + VkBool32 floatRepresentation; + VkBool32 depthBiasExact; +} VkPhysicalDeviceDepthBiasControlFeaturesEXT;
-typedef struct VkPhysicalDeviceSubpassShadingPropertiesHUAWEI +typedef struct VkPhysicalDeviceDepthClampControlFeaturesEXT { VkStructureType sType; void *pNext; - uint32_t maxSubpassShadingWorkgroupSizeAspectRatio; -} VkPhysicalDeviceSubpassShadingPropertiesHUAWEI; + VkBool32 depthClampControl; +} VkPhysicalDeviceDepthClampControlFeaturesEXT;
-typedef struct VkPhysicalDeviceSurfaceInfo2KHR +typedef struct VkPhysicalDeviceDepthClampZeroOneFeaturesKHR { VkStructureType sType; - const void *pNext; - VkSurfaceKHR WINE_VK_ALIGN(8) surface; -} VkPhysicalDeviceSurfaceInfo2KHR; + void *pNext; + VkBool32 depthClampZeroOne; +} VkPhysicalDeviceDepthClampZeroOneFeaturesKHR; +typedef VkPhysicalDeviceDepthClampZeroOneFeaturesKHR VkPhysicalDeviceDepthClampZeroOneFeaturesEXT;
-typedef struct VkPhysicalDeviceSwapchainMaintenance1FeaturesKHR +typedef struct VkPhysicalDeviceDepthClipControlFeaturesEXT { VkStructureType sType; void *pNext; - VkBool32 swapchainMaintenance1; -} VkPhysicalDeviceSwapchainMaintenance1FeaturesKHR; -typedef VkPhysicalDeviceSwapchainMaintenance1FeaturesKHR VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT; + VkBool32 depthClipControl; +} VkPhysicalDeviceDepthClipControlFeaturesEXT;
-typedef struct VkPhysicalDeviceSynchronization2Features +typedef struct VkPhysicalDeviceDepthClipEnableFeaturesEXT { VkStructureType sType; void *pNext; - VkBool32 synchronization2; -} VkPhysicalDeviceSynchronization2Features; -typedef VkPhysicalDeviceSynchronization2Features VkPhysicalDeviceSynchronization2FeaturesKHR; + VkBool32 depthClipEnable; +} VkPhysicalDeviceDepthClipEnableFeaturesEXT;
-typedef struct VkPhysicalDeviceTensorFeaturesARM +typedef struct VkPhysicalDeviceDepthStencilResolveProperties { VkStructureType sType; void *pNext; - VkBool32 tensorNonPacked; - VkBool32 shaderTensorAccess; - VkBool32 shaderStorageTensorArrayDynamicIndexing; - VkBool32 shaderStorageTensorArrayNonUniformIndexing; - VkBool32 descriptorBindingStorageTensorUpdateAfterBind; - VkBool32 tensors; -} VkPhysicalDeviceTensorFeaturesARM; + VkResolveModeFlags supportedDepthResolveModes; + VkResolveModeFlags supportedStencilResolveModes; + VkBool32 independentResolveNone; + VkBool32 independentResolve; +} VkPhysicalDeviceDepthStencilResolveProperties; +typedef VkPhysicalDeviceDepthStencilResolveProperties VkPhysicalDeviceDepthStencilResolvePropertiesKHR;
-typedef struct VkPhysicalDeviceTensorPropertiesARM +typedef struct VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT { VkStructureType sType; void *pNext; - uint32_t maxTensorDimensionCount; - uint64_t WINE_VK_ALIGN(8) maxTensorElements; - uint64_t WINE_VK_ALIGN(8) maxPerDimensionTensorElements; - int64_t maxTensorStride; - uint64_t WINE_VK_ALIGN(8) maxTensorSize; - uint32_t maxTensorShaderAccessArrayLength; - uint32_t maxTensorShaderAccessSize; - uint32_t maxDescriptorSetStorageTensors; - uint32_t maxPerStageDescriptorSetStorageTensors; - uint32_t maxDescriptorSetUpdateAfterBindStorageTensors; - uint32_t maxPerStageDescriptorUpdateAfterBindStorageTensors; - VkBool32 shaderStorageTensorArrayNonUniformIndexingNative; - VkShaderStageFlags shaderTensorSupportedStages; -} VkPhysicalDeviceTensorPropertiesARM; + size_t combinedImageSamplerDensityMapDescriptorSize; +} VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT;
-typedef struct VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT +typedef struct VkPhysicalDeviceDescriptorBufferFeaturesEXT { VkStructureType sType; void *pNext; - VkBool32 texelBufferAlignment; -} VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT; + VkBool32 descriptorBuffer; + VkBool32 descriptorBufferCaptureReplay; + VkBool32 descriptorBufferImageLayoutIgnored; + VkBool32 descriptorBufferPushDescriptors; +} VkPhysicalDeviceDescriptorBufferFeaturesEXT;
-typedef struct VkPhysicalDeviceTexelBufferAlignmentProperties +typedef struct VkPhysicalDeviceDescriptorBufferPropertiesEXT { VkStructureType sType; void *pNext; - VkDeviceSize WINE_VK_ALIGN(8) storageTexelBufferOffsetAlignmentBytes; - VkBool32 storageTexelBufferOffsetSingleTexelAlignment; - VkDeviceSize WINE_VK_ALIGN(8) uniformTexelBufferOffsetAlignmentBytes; - VkBool32 uniformTexelBufferOffsetSingleTexelAlignment; -} VkPhysicalDeviceTexelBufferAlignmentProperties; -typedef VkPhysicalDeviceTexelBufferAlignmentProperties VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT; + VkBool32 combinedImageSamplerDescriptorSingleArray; + VkBool32 bufferlessPushDescriptors; + VkBool32 allowSamplerImageViewPostSubmitCreation; + VkDeviceSize WINE_VK_ALIGN(8) descriptorBufferOffsetAlignment; + uint32_t maxDescriptorBufferBindings; + uint32_t maxResourceDescriptorBufferBindings; + uint32_t maxSamplerDescriptorBufferBindings; + uint32_t maxEmbeddedImmutableSamplerBindings; + uint32_t maxEmbeddedImmutableSamplers; + size_t bufferCaptureReplayDescriptorDataSize; + size_t imageCaptureReplayDescriptorDataSize; + size_t imageViewCaptureReplayDescriptorDataSize; + size_t samplerCaptureReplayDescriptorDataSize; + size_t accelerationStructureCaptureReplayDescriptorDataSize; + size_t samplerDescriptorSize; + size_t combinedImageSamplerDescriptorSize; + size_t sampledImageDescriptorSize; + size_t storageImageDescriptorSize; + size_t uniformTexelBufferDescriptorSize; + size_t robustUniformTexelBufferDescriptorSize; + size_t storageTexelBufferDescriptorSize; + size_t robustStorageTexelBufferDescriptorSize; + size_t uniformBufferDescriptorSize; + size_t robustUniformBufferDescriptorSize; + size_t storageBufferDescriptorSize; + size_t robustStorageBufferDescriptorSize; + size_t inputAttachmentDescriptorSize; + size_t accelerationStructureDescriptorSize; + VkDeviceSize WINE_VK_ALIGN(8) maxSamplerDescriptorBufferRange; + VkDeviceSize WINE_VK_ALIGN(8) maxResourceDescriptorBufferRange; + VkDeviceSize WINE_VK_ALIGN(8) samplerDescriptorBufferAddressSpaceSize; + VkDeviceSize WINE_VK_ALIGN(8) resourceDescriptorBufferAddressSpaceSize; + VkDeviceSize WINE_VK_ALIGN(8) descriptorBufferAddressSpaceSize; +} VkPhysicalDeviceDescriptorBufferPropertiesEXT;
-typedef struct VkPhysicalDeviceTextureCompressionASTCHDRFeatures +typedef struct VkPhysicalDeviceDescriptorBufferTensorFeaturesARM { VkStructureType sType; void *pNext; - VkBool32 textureCompressionASTC_HDR; -} VkPhysicalDeviceTextureCompressionASTCHDRFeatures; -typedef VkPhysicalDeviceTextureCompressionASTCHDRFeatures VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT; + VkBool32 descriptorBufferTensorDescriptors; +} VkPhysicalDeviceDescriptorBufferTensorFeaturesARM;
-typedef struct VkPhysicalDeviceTileMemoryHeapFeaturesQCOM +typedef struct VkPhysicalDeviceDescriptorBufferTensorPropertiesARM { VkStructureType sType; void *pNext; - VkBool32 tileMemoryHeap; -} VkPhysicalDeviceTileMemoryHeapFeaturesQCOM; - -typedef struct VkPhysicalDeviceTileMemoryHeapPropertiesQCOM -{ - VkStructureType sType; - void *pNext; - VkBool32 queueSubmitBoundary; - VkBool32 tileBufferTransfers; -} VkPhysicalDeviceTileMemoryHeapPropertiesQCOM; - -typedef struct VkPhysicalDeviceTilePropertiesFeaturesQCOM -{ - VkStructureType sType; - void *pNext; - VkBool32 tileProperties; -} VkPhysicalDeviceTilePropertiesFeaturesQCOM; - -typedef struct VkPhysicalDeviceTileShadingFeaturesQCOM -{ - VkStructureType sType; - void *pNext; - VkBool32 tileShading; - VkBool32 tileShadingFragmentStage; - VkBool32 tileShadingColorAttachments; - VkBool32 tileShadingDepthAttachments; - VkBool32 tileShadingStencilAttachments; - VkBool32 tileShadingInputAttachments; - VkBool32 tileShadingSampledAttachments; - VkBool32 tileShadingPerTileDraw; - VkBool32 tileShadingPerTileDispatch; - VkBool32 tileShadingDispatchTile; - VkBool32 tileShadingApron; - VkBool32 tileShadingAnisotropicApron; - VkBool32 tileShadingAtomicOps; - VkBool32 tileShadingImageProcessing; -} VkPhysicalDeviceTileShadingFeaturesQCOM; + size_t tensorCaptureReplayDescriptorDataSize; + size_t tensorViewCaptureReplayDescriptorDataSize; + size_t tensorDescriptorSize; +} VkPhysicalDeviceDescriptorBufferTensorPropertiesARM;
-typedef struct VkPhysicalDeviceTileShadingPropertiesQCOM +typedef struct VkPhysicalDeviceDescriptorIndexingFeatures { VkStructureType sType; void *pNext; - uint32_t maxApronSize; - VkBool32 preferNonCoherent; - VkExtent2D tileGranularity; - VkExtent2D maxTileShadingRate; -} VkPhysicalDeviceTileShadingPropertiesQCOM; + VkBool32 shaderInputAttachmentArrayDynamicIndexing; + VkBool32 shaderUniformTexelBufferArrayDynamicIndexing; + VkBool32 shaderStorageTexelBufferArrayDynamicIndexing; + VkBool32 shaderUniformBufferArrayNonUniformIndexing; + VkBool32 shaderSampledImageArrayNonUniformIndexing; + VkBool32 shaderStorageBufferArrayNonUniformIndexing; + VkBool32 shaderStorageImageArrayNonUniformIndexing; + VkBool32 shaderInputAttachmentArrayNonUniformIndexing; + VkBool32 shaderUniformTexelBufferArrayNonUniformIndexing; + VkBool32 shaderStorageTexelBufferArrayNonUniformIndexing; + VkBool32 descriptorBindingUniformBufferUpdateAfterBind; + VkBool32 descriptorBindingSampledImageUpdateAfterBind; + VkBool32 descriptorBindingStorageImageUpdateAfterBind; + VkBool32 descriptorBindingStorageBufferUpdateAfterBind; + VkBool32 descriptorBindingUniformTexelBufferUpdateAfterBind; + VkBool32 descriptorBindingStorageTexelBufferUpdateAfterBind; + VkBool32 descriptorBindingUpdateUnusedWhilePending; + VkBool32 descriptorBindingPartiallyBound; + VkBool32 descriptorBindingVariableDescriptorCount; + VkBool32 runtimeDescriptorArray; +} VkPhysicalDeviceDescriptorIndexingFeatures; +typedef VkPhysicalDeviceDescriptorIndexingFeatures VkPhysicalDeviceDescriptorIndexingFeaturesEXT;
-typedef struct VkPhysicalDeviceTimelineSemaphoreFeatures +typedef struct VkPhysicalDeviceDescriptorIndexingProperties { VkStructureType sType; void *pNext; - VkBool32 timelineSemaphore; -} VkPhysicalDeviceTimelineSemaphoreFeatures; -typedef VkPhysicalDeviceTimelineSemaphoreFeatures VkPhysicalDeviceTimelineSemaphoreFeaturesKHR; + uint32_t maxUpdateAfterBindDescriptorsInAllPools; + VkBool32 shaderUniformBufferArrayNonUniformIndexingNative; + VkBool32 shaderSampledImageArrayNonUniformIndexingNative; + VkBool32 shaderStorageBufferArrayNonUniformIndexingNative; + VkBool32 shaderStorageImageArrayNonUniformIndexingNative; + VkBool32 shaderInputAttachmentArrayNonUniformIndexingNative; + VkBool32 robustBufferAccessUpdateAfterBind; + VkBool32 quadDivergentImplicitLod; + uint32_t maxPerStageDescriptorUpdateAfterBindSamplers; + uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers; + uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers; + uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages; + uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages; + uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments; + uint32_t maxPerStageUpdateAfterBindResources; + uint32_t maxDescriptorSetUpdateAfterBindSamplers; + uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers; + uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic; + uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers; + uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic; + uint32_t maxDescriptorSetUpdateAfterBindSampledImages; + uint32_t maxDescriptorSetUpdateAfterBindStorageImages; + uint32_t maxDescriptorSetUpdateAfterBindInputAttachments; +} VkPhysicalDeviceDescriptorIndexingProperties; +typedef VkPhysicalDeviceDescriptorIndexingProperties VkPhysicalDeviceDescriptorIndexingPropertiesEXT;
-typedef struct VkPhysicalDeviceTimelineSemaphoreProperties +typedef struct VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV { VkStructureType sType; void *pNext; - uint64_t WINE_VK_ALIGN(8) maxTimelineSemaphoreValueDifference; -} VkPhysicalDeviceTimelineSemaphoreProperties; -typedef VkPhysicalDeviceTimelineSemaphoreProperties VkPhysicalDeviceTimelineSemaphorePropertiesKHR; + VkBool32 descriptorPoolOverallocation; +} VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV;
-typedef struct VkPhysicalDeviceToolProperties +typedef struct VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE { VkStructureType sType; void *pNext; - char name[VK_MAX_EXTENSION_NAME_SIZE]; - char version[VK_MAX_EXTENSION_NAME_SIZE]; - VkToolPurposeFlags purposes; - char description[VK_MAX_DESCRIPTION_SIZE]; - char layer[VK_MAX_EXTENSION_NAME_SIZE]; -} VkPhysicalDeviceToolProperties; -typedef VkPhysicalDeviceToolProperties VkPhysicalDeviceToolPropertiesEXT; + VkBool32 descriptorSetHostMapping; +} VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE;
-typedef struct VkPhysicalDeviceTransformFeedbackFeaturesEXT +typedef struct VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV { VkStructureType sType; void *pNext; - VkBool32 transformFeedback; - VkBool32 geometryStreams; -} VkPhysicalDeviceTransformFeedbackFeaturesEXT; + VkBool32 deviceGeneratedCompute; + VkBool32 deviceGeneratedComputePipelines; + VkBool32 deviceGeneratedComputeCaptureReplay; +} VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV;
-typedef struct VkPhysicalDeviceTransformFeedbackPropertiesEXT +typedef struct VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT { VkStructureType sType; void *pNext; - uint32_t maxTransformFeedbackStreams; - uint32_t maxTransformFeedbackBuffers; - VkDeviceSize WINE_VK_ALIGN(8) maxTransformFeedbackBufferSize; - uint32_t maxTransformFeedbackStreamDataSize; - uint32_t maxTransformFeedbackBufferDataSize; - uint32_t maxTransformFeedbackBufferDataStride; - VkBool32 transformFeedbackQueries; - VkBool32 transformFeedbackStreamsLinesTriangles; - VkBool32 transformFeedbackRasterizationStreamSelect; - VkBool32 transformFeedbackDraw; -} VkPhysicalDeviceTransformFeedbackPropertiesEXT; + VkBool32 deviceGeneratedCommands; + VkBool32 dynamicGeneratedPipelineLayout; +} VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT;
-typedef struct VkPhysicalDeviceUnifiedImageLayoutsFeaturesKHR +typedef struct VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV { VkStructureType sType; void *pNext; - VkBool32 unifiedImageLayouts; - VkBool32 unifiedImageLayoutsVideo; -} VkPhysicalDeviceUnifiedImageLayoutsFeaturesKHR; + VkBool32 deviceGeneratedCommands; +} VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV;
-typedef struct VkPhysicalDeviceUniformBufferStandardLayoutFeatures +typedef struct VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT { VkStructureType sType; void *pNext; - VkBool32 uniformBufferStandardLayout; -} VkPhysicalDeviceUniformBufferStandardLayoutFeatures; -typedef VkPhysicalDeviceUniformBufferStandardLayoutFeatures VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR; - + uint32_t maxIndirectPipelineCount; + uint32_t maxIndirectShaderObjectCount; + uint32_t maxIndirectSequenceCount; + uint32_t maxIndirectCommandsTokenCount; + uint32_t maxIndirectCommandsTokenOffset; + uint32_t maxIndirectCommandsIndirectStride; + VkIndirectCommandsInputModeFlagsEXT supportedIndirectCommandsInputModes; + VkShaderStageFlags supportedIndirectCommandsShaderStages; + VkShaderStageFlags supportedIndirectCommandsShaderStagesPipelineBinding; + VkShaderStageFlags supportedIndirectCommandsShaderStagesShaderBinding; + VkBool32 deviceGeneratedCommandsTransformFeedback; + VkBool32 deviceGeneratedCommandsMultiDrawIndirectCount; +} VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT;
-typedef struct VkPhysicalDeviceVariablePointersFeatures +typedef struct VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV { VkStructureType sType; void *pNext; - VkBool32 variablePointersStorageBuffer; - VkBool32 variablePointers; -} VkPhysicalDeviceVariablePointersFeatures; -typedef VkPhysicalDeviceVariablePointersFeatures VkPhysicalDeviceVariablePointersFeaturesKHR; -typedef VkPhysicalDeviceVariablePointersFeatures VkPhysicalDeviceVariablePointerFeaturesKHR; -typedef VkPhysicalDeviceVariablePointersFeatures VkPhysicalDeviceVariablePointerFeatures; + uint32_t maxGraphicsShaderGroupCount; + uint32_t maxIndirectSequenceCount; + uint32_t maxIndirectCommandsTokenCount; + uint32_t maxIndirectCommandsStreamCount; + uint32_t maxIndirectCommandsTokenOffset; + uint32_t maxIndirectCommandsStreamStride; + uint32_t minSequencesCountBufferOffsetAlignment; + uint32_t minSequencesIndexBufferOffsetAlignment; + uint32_t minIndirectCommandsBufferOffsetAlignment; +} VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV;
-typedef struct VkPhysicalDeviceVertexAttributeDivisorFeatures +typedef struct VkPhysicalDeviceDiagnosticsConfigFeaturesNV { VkStructureType sType; void *pNext; - VkBool32 vertexAttributeInstanceRateDivisor; - VkBool32 vertexAttributeInstanceRateZeroDivisor; -} VkPhysicalDeviceVertexAttributeDivisorFeatures; -typedef VkPhysicalDeviceVertexAttributeDivisorFeatures VkPhysicalDeviceVertexAttributeDivisorFeaturesKHR; -typedef VkPhysicalDeviceVertexAttributeDivisorFeatures VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT; + VkBool32 diagnosticsConfig; +} VkPhysicalDeviceDiagnosticsConfigFeaturesNV;
-typedef struct VkPhysicalDeviceVertexAttributeDivisorProperties +typedef struct VkPhysicalDeviceDiscardRectanglePropertiesEXT { VkStructureType sType; void *pNext; - uint32_t maxVertexAttribDivisor; - VkBool32 supportsNonZeroFirstInstance; -} VkPhysicalDeviceVertexAttributeDivisorProperties; -typedef VkPhysicalDeviceVertexAttributeDivisorProperties VkPhysicalDeviceVertexAttributeDivisorPropertiesKHR; + uint32_t maxDiscardRectangles; +} VkPhysicalDeviceDiscardRectanglePropertiesEXT;
-typedef struct VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT +typedef struct VkPhysicalDeviceDriverProperties { VkStructureType sType; void *pNext; - uint32_t maxVertexAttribDivisor; -} VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT; + VkDriverId driverID; + char driverName[VK_MAX_DRIVER_NAME_SIZE]; + char driverInfo[VK_MAX_DRIVER_INFO_SIZE]; + VkConformanceVersion conformanceVersion; +} VkPhysicalDeviceDriverProperties; +typedef VkPhysicalDeviceDriverProperties VkPhysicalDeviceDriverPropertiesKHR;
-typedef struct VkPhysicalDeviceVertexAttributeRobustnessFeaturesEXT +typedef struct VkPhysicalDeviceDynamicRenderingFeatures { VkStructureType sType; void *pNext; - VkBool32 vertexAttributeRobustness; -} VkPhysicalDeviceVertexAttributeRobustnessFeaturesEXT; + VkBool32 dynamicRendering; +} VkPhysicalDeviceDynamicRenderingFeatures; +typedef VkPhysicalDeviceDynamicRenderingFeatures VkPhysicalDeviceDynamicRenderingFeaturesKHR;
-typedef struct VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT +typedef struct VkPhysicalDeviceDynamicRenderingLocalReadFeatures { VkStructureType sType; void *pNext; - VkBool32 vertexInputDynamicState; -} VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT; + VkBool32 dynamicRenderingLocalRead; +} VkPhysicalDeviceDynamicRenderingLocalReadFeatures; +typedef VkPhysicalDeviceDynamicRenderingLocalReadFeatures VkPhysicalDeviceDynamicRenderingLocalReadFeaturesKHR;
-typedef struct VkPhysicalDeviceVideoDecodeVP9FeaturesKHR +typedef struct VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT { VkStructureType sType; void *pNext; - VkBool32 videoDecodeVP9; -} VkPhysicalDeviceVideoDecodeVP9FeaturesKHR; + VkBool32 dynamicRenderingUnusedAttachments; +} VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT;
-typedef struct VkPhysicalDeviceVideoEncodeAV1FeaturesKHR +typedef struct VkPhysicalDeviceExclusiveScissorFeaturesNV { VkStructureType sType; void *pNext; - VkBool32 videoEncodeAV1; -} VkPhysicalDeviceVideoEncodeAV1FeaturesKHR; + VkBool32 exclusiveScissor; +} VkPhysicalDeviceExclusiveScissorFeaturesNV;
-typedef struct VkPhysicalDeviceVideoEncodeIntraRefreshFeaturesKHR +typedef struct VkPhysicalDeviceExtendedDynamicState2FeaturesEXT { VkStructureType sType; void *pNext; - VkBool32 videoEncodeIntraRefresh; -} VkPhysicalDeviceVideoEncodeIntraRefreshFeaturesKHR; + VkBool32 extendedDynamicState2; + VkBool32 extendedDynamicState2LogicOp; + VkBool32 extendedDynamicState2PatchControlPoints; +} VkPhysicalDeviceExtendedDynamicState2FeaturesEXT;
-typedef struct VkPhysicalDeviceVideoEncodeQuantizationMapFeaturesKHR +typedef struct VkPhysicalDeviceExtendedDynamicState3FeaturesEXT { VkStructureType sType; void *pNext; - VkBool32 videoEncodeQuantizationMap; -} VkPhysicalDeviceVideoEncodeQuantizationMapFeaturesKHR; - -typedef struct VkPhysicalDeviceVideoFormatInfoKHR -{ - VkStructureType sType; - const void *pNext; - VkImageUsageFlags imageUsage; -} VkPhysicalDeviceVideoFormatInfoKHR; + VkBool32 extendedDynamicState3TessellationDomainOrigin; + VkBool32 extendedDynamicState3DepthClampEnable; + VkBool32 extendedDynamicState3PolygonMode; + VkBool32 extendedDynamicState3RasterizationSamples; + VkBool32 extendedDynamicState3SampleMask; + VkBool32 extendedDynamicState3AlphaToCoverageEnable; + VkBool32 extendedDynamicState3AlphaToOneEnable; + VkBool32 extendedDynamicState3LogicOpEnable; + VkBool32 extendedDynamicState3ColorBlendEnable; + VkBool32 extendedDynamicState3ColorBlendEquation; + VkBool32 extendedDynamicState3ColorWriteMask; + VkBool32 extendedDynamicState3RasterizationStream; + VkBool32 extendedDynamicState3ConservativeRasterizationMode; + VkBool32 extendedDynamicState3ExtraPrimitiveOverestimationSize; + VkBool32 extendedDynamicState3DepthClipEnable; + VkBool32 extendedDynamicState3SampleLocationsEnable; + VkBool32 extendedDynamicState3ColorBlendAdvanced; + VkBool32 extendedDynamicState3ProvokingVertexMode; + VkBool32 extendedDynamicState3LineRasterizationMode; + VkBool32 extendedDynamicState3LineStippleEnable; + VkBool32 extendedDynamicState3DepthClipNegativeOneToOne; + VkBool32 extendedDynamicState3ViewportWScalingEnable; + VkBool32 extendedDynamicState3ViewportSwizzle; + VkBool32 extendedDynamicState3CoverageToColorEnable; + VkBool32 extendedDynamicState3CoverageToColorLocation; + VkBool32 extendedDynamicState3CoverageModulationMode; + VkBool32 extendedDynamicState3CoverageModulationTableEnable; + VkBool32 extendedDynamicState3CoverageModulationTable; + VkBool32 extendedDynamicState3CoverageReductionMode; + VkBool32 extendedDynamicState3RepresentativeFragmentTestEnable; + VkBool32 extendedDynamicState3ShadingRateImageEnable; +} VkPhysicalDeviceExtendedDynamicState3FeaturesEXT;
-typedef struct VkPhysicalDeviceVideoMaintenance1FeaturesKHR +typedef struct VkPhysicalDeviceExtendedDynamicState3PropertiesEXT { VkStructureType sType; void *pNext; - VkBool32 videoMaintenance1; -} VkPhysicalDeviceVideoMaintenance1FeaturesKHR; + VkBool32 dynamicPrimitiveTopologyUnrestricted; +} VkPhysicalDeviceExtendedDynamicState3PropertiesEXT;
-typedef struct VkPhysicalDeviceVulkan11Features +typedef struct VkPhysicalDeviceExtendedDynamicStateFeaturesEXT { VkStructureType sType; void *pNext; - VkBool32 storageBuffer16BitAccess; - VkBool32 uniformAndStorageBuffer16BitAccess; - VkBool32 storagePushConstant16; - VkBool32 storageInputOutput16; - VkBool32 multiview; - VkBool32 multiviewGeometryShader; - VkBool32 multiviewTessellationShader; - VkBool32 variablePointersStorageBuffer; - VkBool32 variablePointers; - VkBool32 protectedMemory; - VkBool32 samplerYcbcrConversion; - VkBool32 shaderDrawParameters; -} VkPhysicalDeviceVulkan11Features; + VkBool32 extendedDynamicState; +} VkPhysicalDeviceExtendedDynamicStateFeaturesEXT;
-typedef struct VkPhysicalDeviceVulkan11Properties +typedef struct VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV { VkStructureType sType; void *pNext; - uint8_t deviceUUID[VK_UUID_SIZE]; - uint8_t driverUUID[VK_UUID_SIZE]; - uint8_t deviceLUID[VK_LUID_SIZE]; - uint32_t deviceNodeMask; - VkBool32 deviceLUIDValid; - uint32_t subgroupSize; - VkShaderStageFlags subgroupSupportedStages; - VkSubgroupFeatureFlags subgroupSupportedOperations; - VkBool32 subgroupQuadOperationsInAllStages; - VkPointClippingBehavior pointClippingBehavior; - uint32_t maxMultiviewViewCount; - uint32_t maxMultiviewInstanceIndex; - VkBool32 protectedNoFault; - uint32_t maxPerSetDescriptors; - VkDeviceSize WINE_VK_ALIGN(8) maxMemoryAllocationSize; -} VkPhysicalDeviceVulkan11Properties; + VkBool32 extendedSparseAddressSpace; +} VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV;
-typedef struct VkPhysicalDeviceVulkan12Features +typedef struct VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV { VkStructureType sType; void *pNext; - VkBool32 samplerMirrorClampToEdge; - VkBool32 drawIndirectCount; - VkBool32 storageBuffer8BitAccess; - VkBool32 uniformAndStorageBuffer8BitAccess; - VkBool32 storagePushConstant8; - VkBool32 shaderBufferInt64Atomics; - VkBool32 shaderSharedInt64Atomics; - VkBool32 shaderFloat16; - VkBool32 shaderInt8; - VkBool32 descriptorIndexing; - VkBool32 shaderInputAttachmentArrayDynamicIndexing; - VkBool32 shaderUniformTexelBufferArrayDynamicIndexing; - VkBool32 shaderStorageTexelBufferArrayDynamicIndexing; - VkBool32 shaderUniformBufferArrayNonUniformIndexing; - VkBool32 shaderSampledImageArrayNonUniformIndexing; - VkBool32 shaderStorageBufferArrayNonUniformIndexing; - VkBool32 shaderStorageImageArrayNonUniformIndexing; - VkBool32 shaderInputAttachmentArrayNonUniformIndexing; - VkBool32 shaderUniformTexelBufferArrayNonUniformIndexing; - VkBool32 shaderStorageTexelBufferArrayNonUniformIndexing; - VkBool32 descriptorBindingUniformBufferUpdateAfterBind; - VkBool32 descriptorBindingSampledImageUpdateAfterBind; - VkBool32 descriptorBindingStorageImageUpdateAfterBind; - VkBool32 descriptorBindingStorageBufferUpdateAfterBind; - VkBool32 descriptorBindingUniformTexelBufferUpdateAfterBind; - VkBool32 descriptorBindingStorageTexelBufferUpdateAfterBind; - VkBool32 descriptorBindingUpdateUnusedWhilePending; - VkBool32 descriptorBindingPartiallyBound; - VkBool32 descriptorBindingVariableDescriptorCount; - VkBool32 runtimeDescriptorArray; - VkBool32 samplerFilterMinmax; - VkBool32 scalarBlockLayout; - VkBool32 imagelessFramebuffer; - VkBool32 uniformBufferStandardLayout; - VkBool32 shaderSubgroupExtendedTypes; - VkBool32 separateDepthStencilLayouts; - VkBool32 hostQueryReset; - VkBool32 timelineSemaphore; - VkBool32 bufferDeviceAddress; - VkBool32 bufferDeviceAddressCaptureReplay; - VkBool32 bufferDeviceAddressMultiDevice; - VkBool32 vulkanMemoryModel; - VkBool32 vulkanMemoryModelDeviceScope; - VkBool32 vulkanMemoryModelAvailabilityVisibilityChains; - VkBool32 shaderOutputViewportIndex; - VkBool32 shaderOutputLayer; - VkBool32 subgroupBroadcastDynamicId; -} VkPhysicalDeviceVulkan12Features; + VkDeviceSize WINE_VK_ALIGN(8) extendedSparseAddressSpaceSize; + VkImageUsageFlags extendedSparseImageUsageFlags; + VkBufferUsageFlags extendedSparseBufferUsageFlags; +} VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV;
-typedef struct VkPhysicalDeviceVulkan12Properties +typedef struct VkPhysicalDeviceExternalBufferInfo +{ + VkStructureType sType; + const void *pNext; + VkBufferCreateFlags flags; + VkBufferUsageFlags usage; + VkExternalMemoryHandleTypeFlagBits handleType; +} VkPhysicalDeviceExternalBufferInfo; +typedef VkPhysicalDeviceExternalBufferInfo VkPhysicalDeviceExternalBufferInfoKHR; + +typedef struct VkPhysicalDeviceExternalFenceInfo +{ + VkStructureType sType; + const void *pNext; + VkExternalFenceHandleTypeFlagBits handleType; +} VkPhysicalDeviceExternalFenceInfo; +typedef VkPhysicalDeviceExternalFenceInfo VkPhysicalDeviceExternalFenceInfoKHR; + +typedef struct VkPhysicalDeviceExternalImageFormatInfo +{ + VkStructureType sType; + const void *pNext; + VkExternalMemoryHandleTypeFlagBits handleType; +} VkPhysicalDeviceExternalImageFormatInfo; +typedef VkPhysicalDeviceExternalImageFormatInfo VkPhysicalDeviceExternalImageFormatInfoKHR; + +typedef struct VkPhysicalDeviceExternalMemoryHostPropertiesEXT +{ + VkStructureType sType; + void *pNext; + VkDeviceSize WINE_VK_ALIGN(8) minImportedHostPointerAlignment; +} VkPhysicalDeviceExternalMemoryHostPropertiesEXT; + +typedef struct VkPhysicalDeviceExternalSemaphoreInfo +{ + VkStructureType sType; + const void *pNext; + VkExternalSemaphoreHandleTypeFlagBits handleType; +} VkPhysicalDeviceExternalSemaphoreInfo; +typedef VkPhysicalDeviceExternalSemaphoreInfo VkPhysicalDeviceExternalSemaphoreInfoKHR; + +typedef struct VkPhysicalDeviceExternalTensorInfoARM +{ + VkStructureType sType; + const void *pNext; + VkTensorCreateFlagsARM WINE_VK_ALIGN(8) flags; + const VkTensorDescriptionARM *pDescription; + VkExternalMemoryHandleTypeFlagBits handleType; +} VkPhysicalDeviceExternalTensorInfoARM; + +typedef struct VkPhysicalDeviceFaultFeaturesEXT +{ + VkStructureType sType; + void *pNext; + VkBool32 deviceFault; + VkBool32 deviceFaultVendorBinary; +} VkPhysicalDeviceFaultFeaturesEXT; + +typedef struct VkPhysicalDeviceFeatures2 +{ + VkStructureType sType; + void *pNext; + VkPhysicalDeviceFeatures features; +} VkPhysicalDeviceFeatures2; +typedef VkPhysicalDeviceFeatures2 VkPhysicalDeviceFeatures2KHR; + +typedef struct VkPhysicalDeviceFloatControlsProperties { VkStructureType sType; void *pNext; - VkDriverId driverID; - char driverName[VK_MAX_DRIVER_NAME_SIZE]; - char driverInfo[VK_MAX_DRIVER_INFO_SIZE]; - VkConformanceVersion conformanceVersion; VkShaderFloatControlsIndependence denormBehaviorIndependence; VkShaderFloatControlsIndependence roundingModeIndependence; VkBool32 shaderSignedZeroInfNanPreserveFloat16; @@ -13469,4408 +13868,4241 @@ typedef struct VkPhysicalDeviceVulkan12Properties VkBool32 shaderRoundingModeRTZFloat16; VkBool32 shaderRoundingModeRTZFloat32; VkBool32 shaderRoundingModeRTZFloat64; - uint32_t maxUpdateAfterBindDescriptorsInAllPools; - VkBool32 shaderUniformBufferArrayNonUniformIndexingNative; - VkBool32 shaderSampledImageArrayNonUniformIndexingNative; - VkBool32 shaderStorageBufferArrayNonUniformIndexingNative; - VkBool32 shaderStorageImageArrayNonUniformIndexingNative; - VkBool32 shaderInputAttachmentArrayNonUniformIndexingNative; - VkBool32 robustBufferAccessUpdateAfterBind; - VkBool32 quadDivergentImplicitLod; - uint32_t maxPerStageDescriptorUpdateAfterBindSamplers; - uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers; - uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers; - uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages; - uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages; - uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments; - uint32_t maxPerStageUpdateAfterBindResources; - uint32_t maxDescriptorSetUpdateAfterBindSamplers; - uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers; - uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic; - uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers; - uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic; - uint32_t maxDescriptorSetUpdateAfterBindSampledImages; - uint32_t maxDescriptorSetUpdateAfterBindStorageImages; - uint32_t maxDescriptorSetUpdateAfterBindInputAttachments; - VkResolveModeFlags supportedDepthResolveModes; - VkResolveModeFlags supportedStencilResolveModes; - VkBool32 independentResolveNone; - VkBool32 independentResolve; - VkBool32 filterMinmaxSingleComponentFormats; - VkBool32 filterMinmaxImageComponentMapping; - uint64_t WINE_VK_ALIGN(8) maxTimelineSemaphoreValueDifference; - VkSampleCountFlags framebufferIntegerColorSampleCounts; -} VkPhysicalDeviceVulkan12Properties; +} VkPhysicalDeviceFloatControlsProperties; +typedef VkPhysicalDeviceFloatControlsProperties VkPhysicalDeviceFloatControlsPropertiesKHR;
-typedef struct VkPhysicalDeviceVulkan13Features +typedef struct VkPhysicalDeviceFormatPackFeaturesARM { VkStructureType sType; void *pNext; - VkBool32 robustImageAccess; - VkBool32 inlineUniformBlock; - VkBool32 descriptorBindingInlineUniformBlockUpdateAfterBind; - VkBool32 pipelineCreationCacheControl; - VkBool32 privateData; - VkBool32 shaderDemoteToHelperInvocation; - VkBool32 shaderTerminateInvocation; - VkBool32 subgroupSizeControl; - VkBool32 computeFullSubgroups; - VkBool32 synchronization2; - VkBool32 textureCompressionASTC_HDR; - VkBool32 shaderZeroInitializeWorkgroupMemory; - VkBool32 dynamicRendering; - VkBool32 shaderIntegerDotProduct; - VkBool32 maintenance4; -} VkPhysicalDeviceVulkan13Features; - -typedef struct VkPhysicalDeviceVulkan13Properties + VkBool32 formatPack; +} VkPhysicalDeviceFormatPackFeaturesARM; + +typedef struct VkPhysicalDeviceFragmentDensityMap2FeaturesEXT { VkStructureType sType; void *pNext; - uint32_t minSubgroupSize; - uint32_t maxSubgroupSize; - uint32_t maxComputeWorkgroupSubgroups; - VkShaderStageFlags requiredSubgroupSizeStages; - uint32_t maxInlineUniformBlockSize; - uint32_t maxPerStageDescriptorInlineUniformBlocks; - uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks; - uint32_t maxDescriptorSetInlineUniformBlocks; - uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks; - uint32_t maxInlineUniformTotalSize; - VkBool32 integerDotProduct8BitUnsignedAccelerated; - VkBool32 integerDotProduct8BitSignedAccelerated; - VkBool32 integerDotProduct8BitMixedSignednessAccelerated; - VkBool32 integerDotProduct4x8BitPackedUnsignedAccelerated; - VkBool32 integerDotProduct4x8BitPackedSignedAccelerated; - VkBool32 integerDotProduct4x8BitPackedMixedSignednessAccelerated; - VkBool32 integerDotProduct16BitUnsignedAccelerated; - VkBool32 integerDotProduct16BitSignedAccelerated; - VkBool32 integerDotProduct16BitMixedSignednessAccelerated; - VkBool32 integerDotProduct32BitUnsignedAccelerated; - VkBool32 integerDotProduct32BitSignedAccelerated; - VkBool32 integerDotProduct32BitMixedSignednessAccelerated; - VkBool32 integerDotProduct64BitUnsignedAccelerated; - VkBool32 integerDotProduct64BitSignedAccelerated; - VkBool32 integerDotProduct64BitMixedSignednessAccelerated; - VkBool32 integerDotProductAccumulatingSaturating8BitUnsignedAccelerated; - VkBool32 integerDotProductAccumulatingSaturating8BitSignedAccelerated; - VkBool32 integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated; - VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated; - VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated; - VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated; - VkBool32 integerDotProductAccumulatingSaturating16BitUnsignedAccelerated; - VkBool32 integerDotProductAccumulatingSaturating16BitSignedAccelerated; - VkBool32 integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated; - VkBool32 integerDotProductAccumulatingSaturating32BitUnsignedAccelerated; - VkBool32 integerDotProductAccumulatingSaturating32BitSignedAccelerated; - VkBool32 integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated; - VkBool32 integerDotProductAccumulatingSaturating64BitUnsignedAccelerated; - VkBool32 integerDotProductAccumulatingSaturating64BitSignedAccelerated; - VkBool32 integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated; - VkDeviceSize WINE_VK_ALIGN(8) storageTexelBufferOffsetAlignmentBytes; - VkBool32 storageTexelBufferOffsetSingleTexelAlignment; - VkDeviceSize WINE_VK_ALIGN(8) uniformTexelBufferOffsetAlignmentBytes; - VkBool32 uniformTexelBufferOffsetSingleTexelAlignment; - VkDeviceSize WINE_VK_ALIGN(8) maxBufferSize; -} VkPhysicalDeviceVulkan13Properties; + VkBool32 fragmentDensityMapDeferred; +} VkPhysicalDeviceFragmentDensityMap2FeaturesEXT;
-typedef struct VkPhysicalDeviceVulkan14Features +typedef struct VkPhysicalDeviceFragmentDensityMap2PropertiesEXT { VkStructureType sType; void *pNext; - VkBool32 globalPriorityQuery; - VkBool32 shaderSubgroupRotate; - VkBool32 shaderSubgroupRotateClustered; - VkBool32 shaderFloatControls2; - VkBool32 shaderExpectAssume; - VkBool32 rectangularLines; - VkBool32 bresenhamLines; - VkBool32 smoothLines; - VkBool32 stippledRectangularLines; - VkBool32 stippledBresenhamLines; - VkBool32 stippledSmoothLines; - VkBool32 vertexAttributeInstanceRateDivisor; - VkBool32 vertexAttributeInstanceRateZeroDivisor; - VkBool32 indexTypeUint8; - VkBool32 dynamicRenderingLocalRead; - VkBool32 maintenance5; - VkBool32 maintenance6; - VkBool32 pipelineProtectedAccess; - VkBool32 pipelineRobustness; - VkBool32 hostImageCopy; - VkBool32 pushDescriptor; -} VkPhysicalDeviceVulkan14Features; + VkBool32 subsampledLoads; + VkBool32 subsampledCoarseReconstructionEarlyAccess; + uint32_t maxSubsampledArrayLayers; + uint32_t maxDescriptorSetSubsampledSamplers; +} VkPhysicalDeviceFragmentDensityMap2PropertiesEXT;
-typedef struct VkPhysicalDeviceVulkan14Properties +typedef struct VkPhysicalDeviceFragmentDensityMapFeaturesEXT { VkStructureType sType; void *pNext; - uint32_t lineSubPixelPrecisionBits; - uint32_t maxVertexAttribDivisor; - VkBool32 supportsNonZeroFirstInstance; - uint32_t maxPushDescriptors; - VkBool32 dynamicRenderingLocalReadDepthStencilAttachments; - VkBool32 dynamicRenderingLocalReadMultisampledAttachments; - VkBool32 earlyFragmentMultisampleCoverageAfterSampleCounting; - VkBool32 earlyFragmentSampleMaskTestBeforeSampleCounting; - VkBool32 depthStencilSwizzleOneSupport; - VkBool32 polygonModePointSize; - VkBool32 nonStrictSinglePixelWideLinesUseParallelogram; - VkBool32 nonStrictWideLinesUseParallelogram; - VkBool32 blockTexelViewCompatibleMultipleLayers; - uint32_t maxCombinedImageSamplerDescriptorCount; - VkBool32 fragmentShadingRateClampCombinerInputs; - VkPipelineRobustnessBufferBehavior defaultRobustnessStorageBuffers; - VkPipelineRobustnessBufferBehavior defaultRobustnessUniformBuffers; - VkPipelineRobustnessBufferBehavior defaultRobustnessVertexInputs; - VkPipelineRobustnessImageBehavior defaultRobustnessImages; - uint32_t copySrcLayoutCount; - VkImageLayout *pCopySrcLayouts; - uint32_t copyDstLayoutCount; - VkImageLayout *pCopyDstLayouts; - uint8_t optimalTilingLayoutUUID[VK_UUID_SIZE]; - VkBool32 identicalMemoryTypeRequirements; -} VkPhysicalDeviceVulkan14Properties; + VkBool32 fragmentDensityMap; + VkBool32 fragmentDensityMapDynamic; + VkBool32 fragmentDensityMapNonSubsampledImages; +} VkPhysicalDeviceFragmentDensityMapFeaturesEXT;
-typedef struct VkPhysicalDeviceVulkanMemoryModelFeatures +typedef struct VkPhysicalDeviceFragmentDensityMapLayeredFeaturesVALVE { VkStructureType sType; void *pNext; - VkBool32 vulkanMemoryModel; - VkBool32 vulkanMemoryModelDeviceScope; - VkBool32 vulkanMemoryModelAvailabilityVisibilityChains; -} VkPhysicalDeviceVulkanMemoryModelFeatures; -typedef VkPhysicalDeviceVulkanMemoryModelFeatures VkPhysicalDeviceVulkanMemoryModelFeaturesKHR; + VkBool32 fragmentDensityMapLayered; +} VkPhysicalDeviceFragmentDensityMapLayeredFeaturesVALVE;
-typedef struct VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR +typedef struct VkPhysicalDeviceFragmentDensityMapLayeredPropertiesVALVE { VkStructureType sType; void *pNext; - VkBool32 workgroupMemoryExplicitLayout; - VkBool32 workgroupMemoryExplicitLayoutScalarBlockLayout; - VkBool32 workgroupMemoryExplicitLayout8BitAccess; - VkBool32 workgroupMemoryExplicitLayout16BitAccess; -} VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR; + uint32_t maxFragmentDensityMapLayers; +} VkPhysicalDeviceFragmentDensityMapLayeredPropertiesVALVE;
-typedef struct VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT +typedef struct VkPhysicalDeviceFragmentDensityMapOffsetFeaturesEXT { VkStructureType sType; void *pNext; - VkBool32 ycbcr2plane444Formats; -} VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT; + VkBool32 fragmentDensityMapOffset; +} VkPhysicalDeviceFragmentDensityMapOffsetFeaturesEXT; +typedef VkPhysicalDeviceFragmentDensityMapOffsetFeaturesEXT VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM;
-typedef struct VkPhysicalDeviceYcbcrDegammaFeaturesQCOM +typedef struct VkPhysicalDeviceFragmentDensityMapOffsetPropertiesEXT { VkStructureType sType; void *pNext; - VkBool32 ycbcrDegamma; -} VkPhysicalDeviceYcbcrDegammaFeaturesQCOM; + VkExtent2D fragmentDensityOffsetGranularity; +} VkPhysicalDeviceFragmentDensityMapOffsetPropertiesEXT; +typedef VkPhysicalDeviceFragmentDensityMapOffsetPropertiesEXT VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM;
-typedef struct VkPhysicalDeviceYcbcrImageArraysFeaturesEXT +typedef struct VkPhysicalDeviceFragmentDensityMapPropertiesEXT { VkStructureType sType; void *pNext; - VkBool32 ycbcrImageArrays; -} VkPhysicalDeviceYcbcrImageArraysFeaturesEXT; + VkExtent2D minFragmentDensityTexelSize; + VkExtent2D maxFragmentDensityTexelSize; + VkBool32 fragmentDensityInvocations; +} VkPhysicalDeviceFragmentDensityMapPropertiesEXT;
-typedef struct VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT +typedef struct VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR { VkStructureType sType; void *pNext; - VkBool32 zeroInitializeDeviceMemory; -} VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT; + VkBool32 fragmentShaderBarycentric; +} VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR; +typedef VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV;
-typedef struct VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures +typedef struct VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR { VkStructureType sType; void *pNext; - VkBool32 shaderZeroInitializeWorkgroupMemory; -} VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures; -typedef VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR; + VkBool32 triStripVertexOrderIndependentOfProvokingVertex; +} VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR;
-typedef struct VkPipelineBinaryDataInfoKHR +typedef struct VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT { VkStructureType sType; void *pNext; - VkPipelineBinaryKHR WINE_VK_ALIGN(8) pipelineBinary; -} VkPipelineBinaryDataInfoKHR; + VkBool32 fragmentShaderSampleInterlock; + VkBool32 fragmentShaderPixelInterlock; + VkBool32 fragmentShaderShadingRateInterlock; +} VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT;
-typedef struct VkPipelineBinaryDataKHR +typedef struct VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV { - size_t dataSize; - void *pData; -} VkPipelineBinaryDataKHR; + VkStructureType sType; + void *pNext; + VkBool32 fragmentShadingRateEnums; + VkBool32 supersampleFragmentShadingRates; + VkBool32 noInvocationFragmentShadingRates; +} VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV;
-typedef struct VkPipelineBinaryHandlesInfoKHR +typedef struct VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV { VkStructureType sType; - const void *pNext; - uint32_t pipelineBinaryCount; - VkPipelineBinaryKHR *pPipelineBinaries; -} VkPipelineBinaryHandlesInfoKHR; + void *pNext; + VkSampleCountFlagBits maxFragmentShadingRateInvocationCount; +} VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV;
-typedef struct VkPipelineBinaryInfoKHR +typedef struct VkPhysicalDeviceFragmentShadingRateFeaturesKHR { VkStructureType sType; - const void *pNext; - uint32_t binaryCount; - const VkPipelineBinaryKHR *pPipelineBinaries; -} VkPipelineBinaryInfoKHR; + void *pNext; + VkBool32 pipelineFragmentShadingRate; + VkBool32 primitiveFragmentShadingRate; + VkBool32 attachmentFragmentShadingRate; +} VkPhysicalDeviceFragmentShadingRateFeaturesKHR;
-typedef struct VkPipelineBinaryKeyKHR +typedef struct VkPhysicalDeviceFragmentShadingRateKHR { VkStructureType sType; void *pNext; - uint32_t keySize; - uint8_t key[VK_MAX_PIPELINE_BINARY_KEY_SIZE_KHR]; -} VkPipelineBinaryKeyKHR; + VkSampleCountFlags sampleCounts; + VkExtent2D fragmentSize; +} VkPhysicalDeviceFragmentShadingRateKHR;
-typedef struct VkPipelineBinaryKeysAndDataKHR +typedef struct VkPhysicalDeviceFragmentShadingRatePropertiesKHR { - uint32_t binaryCount; - const VkPipelineBinaryKeyKHR *pPipelineBinaryKeys; - const VkPipelineBinaryDataKHR *pPipelineBinaryData; -} VkPipelineBinaryKeysAndDataKHR; + VkStructureType sType; + void *pNext; + VkExtent2D minFragmentShadingRateAttachmentTexelSize; + VkExtent2D maxFragmentShadingRateAttachmentTexelSize; + uint32_t maxFragmentShadingRateAttachmentTexelSizeAspectRatio; + VkBool32 primitiveFragmentShadingRateWithMultipleViewports; + VkBool32 layeredShadingRateAttachments; + VkBool32 fragmentShadingRateNonTrivialCombinerOps; + VkExtent2D maxFragmentSize; + uint32_t maxFragmentSizeAspectRatio; + uint32_t maxFragmentShadingRateCoverageSamples; + VkSampleCountFlagBits maxFragmentShadingRateRasterizationSamples; + VkBool32 fragmentShadingRateWithShaderDepthStencilWrites; + VkBool32 fragmentShadingRateWithSampleMask; + VkBool32 fragmentShadingRateWithShaderSampleMask; + VkBool32 fragmentShadingRateWithConservativeRasterization; + VkBool32 fragmentShadingRateWithFragmentShaderInterlock; + VkBool32 fragmentShadingRateWithCustomSampleLocations; + VkBool32 fragmentShadingRateStrictMultiplyCombiner; +} VkPhysicalDeviceFragmentShadingRatePropertiesKHR;
-typedef struct VkPipelineCacheCreateInfo +typedef struct VkPhysicalDeviceFrameBoundaryFeaturesEXT { VkStructureType sType; - const void *pNext; - VkPipelineCacheCreateFlags flags; - size_t initialDataSize; - const void *pInitialData; -} VkPipelineCacheCreateInfo; + void *pNext; + VkBool32 frameBoundary; +} VkPhysicalDeviceFrameBoundaryFeaturesEXT;
-typedef struct VkPipelineCacheHeaderVersionOne +typedef struct VkPhysicalDeviceGlobalPriorityQueryFeatures { - uint32_t headerSize; - VkPipelineCacheHeaderVersion headerVersion; - uint32_t vendorID; - uint32_t deviceID; - uint8_t pipelineCacheUUID[VK_UUID_SIZE]; -} VkPipelineCacheHeaderVersionOne; + VkStructureType sType; + void *pNext; + VkBool32 globalPriorityQuery; +} VkPhysicalDeviceGlobalPriorityQueryFeatures; +typedef VkPhysicalDeviceGlobalPriorityQueryFeatures VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR; +typedef VkPhysicalDeviceGlobalPriorityQueryFeatures VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT;
-typedef struct VkPipelineColorBlendAdvancedStateCreateInfoEXT +typedef struct VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT { VkStructureType sType; - const void *pNext; - VkBool32 srcPremultiplied; - VkBool32 dstPremultiplied; - VkBlendOverlapEXT blendOverlap; -} VkPipelineColorBlendAdvancedStateCreateInfoEXT; + void *pNext; + VkBool32 graphicsPipelineLibrary; +} VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT;
-typedef struct VkPipelineColorBlendAttachmentState +typedef struct VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT { - VkBool32 blendEnable; - VkBlendFactor srcColorBlendFactor; - VkBlendFactor dstColorBlendFactor; - VkBlendOp colorBlendOp; - VkBlendFactor srcAlphaBlendFactor; - VkBlendFactor dstAlphaBlendFactor; - VkBlendOp alphaBlendOp; - VkColorComponentFlags colorWriteMask; -} VkPipelineColorBlendAttachmentState; + VkStructureType sType; + void *pNext; + VkBool32 graphicsPipelineLibraryFastLinking; + VkBool32 graphicsPipelineLibraryIndependentInterpolationDecoration; +} VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT;
-typedef struct VkPipelineColorBlendStateCreateInfo +typedef struct VkPhysicalDeviceGroupProperties { VkStructureType sType; - const void *pNext; - VkPipelineColorBlendStateCreateFlags flags; - VkBool32 logicOpEnable; - VkLogicOp logicOp; - uint32_t attachmentCount; - const VkPipelineColorBlendAttachmentState *pAttachments; - float blendConstants[4]; -} VkPipelineColorBlendStateCreateInfo; + void *pNext; + uint32_t physicalDeviceCount; + VkPhysicalDevice physicalDevices[VK_MAX_DEVICE_GROUP_SIZE]; + VkBool32 subsetAllocation; +} VkPhysicalDeviceGroupProperties; +typedef VkPhysicalDeviceGroupProperties VkPhysicalDeviceGroupPropertiesKHR;
-typedef struct VkPipelineColorWriteCreateInfoEXT +typedef struct VkPhysicalDeviceHdrVividFeaturesHUAWEI { VkStructureType sType; - const void *pNext; - uint32_t attachmentCount; - const VkBool32 *pColorWriteEnables; -} VkPipelineColorWriteCreateInfoEXT; + void *pNext; + VkBool32 hdrVivid; +} VkPhysicalDeviceHdrVividFeaturesHUAWEI;
-typedef struct VkPipelineCompilerControlCreateInfoAMD +typedef struct VkPhysicalDeviceHostImageCopyFeatures { VkStructureType sType; - const void *pNext; - VkPipelineCompilerControlFlagsAMD compilerControlFlags; -} VkPipelineCompilerControlCreateInfoAMD; + void *pNext; + VkBool32 hostImageCopy; +} VkPhysicalDeviceHostImageCopyFeatures; +typedef VkPhysicalDeviceHostImageCopyFeatures VkPhysicalDeviceHostImageCopyFeaturesEXT;
-typedef struct VkPipelineCoverageModulationStateCreateInfoNV +typedef struct VkPhysicalDeviceHostImageCopyProperties { VkStructureType sType; - const void *pNext; - VkPipelineCoverageModulationStateCreateFlagsNV flags; - VkCoverageModulationModeNV coverageModulationMode; - VkBool32 coverageModulationTableEnable; - uint32_t coverageModulationTableCount; - const float *pCoverageModulationTable; -} VkPipelineCoverageModulationStateCreateInfoNV; + void *pNext; + uint32_t copySrcLayoutCount; + VkImageLayout *pCopySrcLayouts; + uint32_t copyDstLayoutCount; + VkImageLayout *pCopyDstLayouts; + uint8_t optimalTilingLayoutUUID[VK_UUID_SIZE]; + VkBool32 identicalMemoryTypeRequirements; +} VkPhysicalDeviceHostImageCopyProperties; +typedef VkPhysicalDeviceHostImageCopyProperties VkPhysicalDeviceHostImageCopyPropertiesEXT;
-typedef struct VkPipelineCoverageReductionStateCreateInfoNV +typedef struct VkPhysicalDeviceHostQueryResetFeatures { VkStructureType sType; - const void *pNext; - VkPipelineCoverageReductionStateCreateFlagsNV flags; - VkCoverageReductionModeNV coverageReductionMode; -} VkPipelineCoverageReductionStateCreateInfoNV; + void *pNext; + VkBool32 hostQueryReset; +} VkPhysicalDeviceHostQueryResetFeatures; +typedef VkPhysicalDeviceHostQueryResetFeatures VkPhysicalDeviceHostQueryResetFeaturesEXT;
-typedef struct VkPipelineCoverageToColorStateCreateInfoNV +typedef struct VkPhysicalDeviceIDProperties { VkStructureType sType; - const void *pNext; - VkPipelineCoverageToColorStateCreateFlagsNV flags; - VkBool32 coverageToColorEnable; - uint32_t coverageToColorLocation; -} VkPipelineCoverageToColorStateCreateInfoNV; + void *pNext; + uint8_t deviceUUID[VK_UUID_SIZE]; + uint8_t driverUUID[VK_UUID_SIZE]; + uint8_t deviceLUID[VK_LUID_SIZE]; + uint32_t deviceNodeMask; + VkBool32 deviceLUIDValid; +} VkPhysicalDeviceIDProperties; +typedef VkPhysicalDeviceIDProperties VkPhysicalDeviceIDPropertiesKHR;
-typedef struct VkPipelineCreateFlags2CreateInfo +typedef struct VkPhysicalDeviceImage2DViewOf3DFeaturesEXT { VkStructureType sType; - const void *pNext; - VkPipelineCreateFlags2 WINE_VK_ALIGN(8) flags; -} VkPipelineCreateFlags2CreateInfo; -typedef VkPipelineCreateFlags2CreateInfo VkPipelineCreateFlags2CreateInfoKHR; + void *pNext; + VkBool32 image2DViewOf3D; + VkBool32 sampler2DViewOf3D; +} VkPhysicalDeviceImage2DViewOf3DFeaturesEXT;
-typedef struct VkPipelineCreateInfoKHR +typedef struct VkPhysicalDeviceImageAlignmentControlFeaturesMESA { VkStructureType sType; void *pNext; -} VkPipelineCreateInfoKHR; + VkBool32 imageAlignmentControl; +} VkPhysicalDeviceImageAlignmentControlFeaturesMESA;
-typedef struct VkPipelineCreationFeedback +typedef struct VkPhysicalDeviceImageAlignmentControlPropertiesMESA { - VkPipelineCreationFeedbackFlags flags; - uint64_t WINE_VK_ALIGN(8) duration; -} VkPipelineCreationFeedback; -typedef VkPipelineCreationFeedback VkPipelineCreationFeedbackEXT; + VkStructureType sType; + void *pNext; + uint32_t supportedImageAlignmentMask; +} VkPhysicalDeviceImageAlignmentControlPropertiesMESA;
-typedef struct VkPipelineCreationFeedbackCreateInfo +typedef struct VkPhysicalDeviceImageCompressionControlFeaturesEXT { VkStructureType sType; - const void *pNext; - VkPipelineCreationFeedback *pPipelineCreationFeedback; - uint32_t pipelineStageCreationFeedbackCount; - VkPipelineCreationFeedback *pPipelineStageCreationFeedbacks; -} VkPipelineCreationFeedbackCreateInfo; -typedef VkPipelineCreationFeedbackCreateInfo VkPipelineCreationFeedbackCreateInfoEXT; + void *pNext; + VkBool32 imageCompressionControl; +} VkPhysicalDeviceImageCompressionControlFeaturesEXT;
-typedef struct VkPipelineDynamicStateCreateInfo +typedef struct VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT { VkStructureType sType; - const void *pNext; - VkPipelineDynamicStateCreateFlags flags; - uint32_t dynamicStateCount; - const VkDynamicState *pDynamicStates; -} VkPipelineDynamicStateCreateInfo; + void *pNext; + VkBool32 imageCompressionControlSwapchain; +} VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT;
-typedef struct VkPipelineExecutableInfoKHR +typedef struct VkPhysicalDeviceImageFormatInfo2 { VkStructureType sType; const void *pNext; - VkPipeline WINE_VK_ALIGN(8) pipeline; - uint32_t executableIndex; -} VkPipelineExecutableInfoKHR; + VkFormat format; + VkImageType type; + VkImageTiling tiling; + VkImageUsageFlags usage; + VkImageCreateFlags flags; +} VkPhysicalDeviceImageFormatInfo2; +typedef VkPhysicalDeviceImageFormatInfo2 VkPhysicalDeviceImageFormatInfo2KHR;
-typedef struct VkPipelineExecutableInternalRepresentationKHR +typedef struct VkPhysicalDeviceImageProcessing2FeaturesQCOM { VkStructureType sType; void *pNext; - char name[VK_MAX_DESCRIPTION_SIZE]; - char description[VK_MAX_DESCRIPTION_SIZE]; - VkBool32 isText; - size_t dataSize; - void *pData; -} VkPipelineExecutableInternalRepresentationKHR; + VkBool32 textureBlockMatch2; +} VkPhysicalDeviceImageProcessing2FeaturesQCOM;
-typedef struct VkPipelineExecutablePropertiesKHR +typedef struct VkPhysicalDeviceImageProcessing2PropertiesQCOM { VkStructureType sType; void *pNext; - VkShaderStageFlags stages; - char name[VK_MAX_DESCRIPTION_SIZE]; - char description[VK_MAX_DESCRIPTION_SIZE]; - uint32_t subgroupSize; -} VkPipelineExecutablePropertiesKHR; + VkExtent2D maxBlockMatchWindow; +} VkPhysicalDeviceImageProcessing2PropertiesQCOM;
-typedef union VkPipelineExecutableStatisticValueKHR +typedef struct VkPhysicalDeviceImageProcessingFeaturesQCOM { - VkBool32 b32; - int64_t i64; - uint64_t WINE_VK_ALIGN(8) u64; - double f64; -} VkPipelineExecutableStatisticValueKHR; + VkStructureType sType; + void *pNext; + VkBool32 textureSampleWeighted; + VkBool32 textureBoxFilter; + VkBool32 textureBlockMatch; +} VkPhysicalDeviceImageProcessingFeaturesQCOM;
-typedef struct VkPipelineFragmentDensityMapLayeredCreateInfoVALVE +typedef struct VkPhysicalDeviceImageProcessingPropertiesQCOM { VkStructureType sType; - const void *pNext; - uint32_t maxFragmentDensityMapLayers; -} VkPipelineFragmentDensityMapLayeredCreateInfoVALVE; + void *pNext; + uint32_t maxWeightFilterPhases; + VkExtent2D maxWeightFilterDimension; + VkExtent2D maxBlockMatchRegion; + VkExtent2D maxBoxFilterBlockSize; +} VkPhysicalDeviceImageProcessingPropertiesQCOM;
-typedef struct VkPipelineFragmentShadingRateEnumStateCreateInfoNV +typedef struct VkPhysicalDeviceImageRobustnessFeatures { VkStructureType sType; - const void *pNext; - VkFragmentShadingRateTypeNV shadingRateType; - VkFragmentShadingRateNV shadingRate; - VkFragmentShadingRateCombinerOpKHR combinerOps[2]; -} VkPipelineFragmentShadingRateEnumStateCreateInfoNV; + void *pNext; + VkBool32 robustImageAccess; +} VkPhysicalDeviceImageRobustnessFeatures; +typedef VkPhysicalDeviceImageRobustnessFeatures VkPhysicalDeviceImageRobustnessFeaturesEXT;
-typedef struct VkPipelineFragmentShadingRateStateCreateInfoKHR +typedef struct VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT { VkStructureType sType; - const void *pNext; - VkExtent2D fragmentSize; - VkFragmentShadingRateCombinerOpKHR combinerOps[2]; -} VkPipelineFragmentShadingRateStateCreateInfoKHR; + void *pNext; + VkBool32 imageSlicedViewOf3D; +} VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT;
-typedef struct VkPipelineIndirectDeviceAddressInfoNV +typedef struct VkPhysicalDeviceImageViewImageFormatInfoEXT { VkStructureType sType; - const void *pNext; - VkPipelineBindPoint pipelineBindPoint; - VkPipeline WINE_VK_ALIGN(8) pipeline; -} VkPipelineIndirectDeviceAddressInfoNV; - + void *pNext; + VkImageViewType imageViewType; +} VkPhysicalDeviceImageViewImageFormatInfoEXT;
-typedef struct VkPipelineInfoKHR +typedef struct VkPhysicalDeviceImageViewMinLodFeaturesEXT { VkStructureType sType; - const void *pNext; - VkPipeline WINE_VK_ALIGN(8) pipeline; -} VkPipelineInfoKHR; -typedef VkPipelineInfoKHR VkPipelineInfoEXT; + void *pNext; + VkBool32 minLod; +} VkPhysicalDeviceImageViewMinLodFeaturesEXT;
-typedef struct VkPipelineInputAssemblyStateCreateInfo +typedef struct VkPhysicalDeviceImagelessFramebufferFeatures { VkStructureType sType; - const void *pNext; - VkPipelineInputAssemblyStateCreateFlags flags; - VkPrimitiveTopology topology; - VkBool32 primitiveRestartEnable; -} VkPipelineInputAssemblyStateCreateInfo; + void *pNext; + VkBool32 imagelessFramebuffer; +} VkPhysicalDeviceImagelessFramebufferFeatures; +typedef VkPhysicalDeviceImagelessFramebufferFeatures VkPhysicalDeviceImagelessFramebufferFeaturesKHR;
-typedef struct VkPipelineLibraryCreateInfoKHR +typedef struct VkPhysicalDeviceIndexTypeUint8Features { VkStructureType sType; - const void *pNext; - uint32_t libraryCount; - const VkPipeline *pLibraries; -} VkPipelineLibraryCreateInfoKHR; + void *pNext; + VkBool32 indexTypeUint8; +} VkPhysicalDeviceIndexTypeUint8Features; +typedef VkPhysicalDeviceIndexTypeUint8Features VkPhysicalDeviceIndexTypeUint8FeaturesKHR; +typedef VkPhysicalDeviceIndexTypeUint8Features VkPhysicalDeviceIndexTypeUint8FeaturesEXT;
-typedef struct VkPipelineMultisampleStateCreateInfo +typedef struct VkPhysicalDeviceInheritedViewportScissorFeaturesNV { VkStructureType sType; - const void *pNext; - VkPipelineMultisampleStateCreateFlags flags; - VkSampleCountFlagBits rasterizationSamples; - VkBool32 sampleShadingEnable; - float minSampleShading; - const VkSampleMask *pSampleMask; - VkBool32 alphaToCoverageEnable; - VkBool32 alphaToOneEnable; -} VkPipelineMultisampleStateCreateInfo; + void *pNext; + VkBool32 inheritedViewportScissor2D; +} VkPhysicalDeviceInheritedViewportScissorFeaturesNV;
-typedef struct VkPipelinePropertiesIdentifierEXT +typedef struct VkPhysicalDeviceInlineUniformBlockFeatures { VkStructureType sType; void *pNext; - uint8_t pipelineIdentifier[VK_UUID_SIZE]; -} VkPipelinePropertiesIdentifierEXT; + VkBool32 inlineUniformBlock; + VkBool32 descriptorBindingInlineUniformBlockUpdateAfterBind; +} VkPhysicalDeviceInlineUniformBlockFeatures; +typedef VkPhysicalDeviceInlineUniformBlockFeatures VkPhysicalDeviceInlineUniformBlockFeaturesEXT;
-typedef struct VkPipelineRasterizationConservativeStateCreateInfoEXT +typedef struct VkPhysicalDeviceInlineUniformBlockProperties { VkStructureType sType; - const void *pNext; - VkPipelineRasterizationConservativeStateCreateFlagsEXT flags; - VkConservativeRasterizationModeEXT conservativeRasterizationMode; - float extraPrimitiveOverestimationSize; -} VkPipelineRasterizationConservativeStateCreateInfoEXT; + void *pNext; + uint32_t maxInlineUniformBlockSize; + uint32_t maxPerStageDescriptorInlineUniformBlocks; + uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks; + uint32_t maxDescriptorSetInlineUniformBlocks; + uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks; +} VkPhysicalDeviceInlineUniformBlockProperties; +typedef VkPhysicalDeviceInlineUniformBlockProperties VkPhysicalDeviceInlineUniformBlockPropertiesEXT;
-typedef struct VkPipelineRasterizationDepthClipStateCreateInfoEXT +typedef struct VkPhysicalDeviceInvocationMaskFeaturesHUAWEI { VkStructureType sType; - const void *pNext; - VkPipelineRasterizationDepthClipStateCreateFlagsEXT flags; - VkBool32 depthClipEnable; -} VkPipelineRasterizationDepthClipStateCreateInfoEXT; + void *pNext; + VkBool32 invocationMask; +} VkPhysicalDeviceInvocationMaskFeaturesHUAWEI;
-typedef struct VkPipelineRasterizationLineStateCreateInfo +typedef struct VkPhysicalDeviceLayeredDriverPropertiesMSFT { VkStructureType sType; - const void *pNext; - VkLineRasterizationMode lineRasterizationMode; - VkBool32 stippledLineEnable; - uint32_t lineStippleFactor; - uint16_t lineStipplePattern; -} VkPipelineRasterizationLineStateCreateInfo; -typedef VkPipelineRasterizationLineStateCreateInfo VkPipelineRasterizationLineStateCreateInfoKHR; -typedef VkPipelineRasterizationLineStateCreateInfo VkPipelineRasterizationLineStateCreateInfoEXT; + void *pNext; + VkLayeredDriverUnderlyingApiMSFT underlyingAPI; +} VkPhysicalDeviceLayeredDriverPropertiesMSFT;
-typedef struct VkPipelineRasterizationProvokingVertexStateCreateInfoEXT +typedef struct VkPhysicalDeviceLegacyDitheringFeaturesEXT { VkStructureType sType; - const void *pNext; - VkProvokingVertexModeEXT provokingVertexMode; -} VkPipelineRasterizationProvokingVertexStateCreateInfoEXT; + void *pNext; + VkBool32 legacyDithering; +} VkPhysicalDeviceLegacyDitheringFeaturesEXT;
-typedef struct VkPipelineRasterizationStateCreateInfo +typedef struct VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT { VkStructureType sType; - const void *pNext; - VkPipelineRasterizationStateCreateFlags flags; - VkBool32 depthClampEnable; - VkBool32 rasterizerDiscardEnable; - VkPolygonMode polygonMode; - VkCullModeFlags cullMode; - VkFrontFace frontFace; - VkBool32 depthBiasEnable; - float depthBiasConstantFactor; - float depthBiasClamp; - float depthBiasSlopeFactor; - float lineWidth; -} VkPipelineRasterizationStateCreateInfo; + void *pNext; + VkBool32 legacyVertexAttributes; +} VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT;
-typedef struct VkPipelineRasterizationStateRasterizationOrderAMD +typedef struct VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT { VkStructureType sType; - const void *pNext; - VkRasterizationOrderAMD rasterizationOrder; -} VkPipelineRasterizationStateRasterizationOrderAMD; + void *pNext; + VkBool32 nativeUnalignedPerformance; +} VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT;
-typedef struct VkPipelineRasterizationStateStreamCreateInfoEXT +typedef struct VkPhysicalDeviceLineRasterizationFeatures { VkStructureType sType; - const void *pNext; - VkPipelineRasterizationStateStreamCreateFlagsEXT flags; - uint32_t rasterizationStream; -} VkPipelineRasterizationStateStreamCreateInfoEXT; + void *pNext; + VkBool32 rectangularLines; + VkBool32 bresenhamLines; + VkBool32 smoothLines; + VkBool32 stippledRectangularLines; + VkBool32 stippledBresenhamLines; + VkBool32 stippledSmoothLines; +} VkPhysicalDeviceLineRasterizationFeatures; +typedef VkPhysicalDeviceLineRasterizationFeatures VkPhysicalDeviceLineRasterizationFeaturesKHR; +typedef VkPhysicalDeviceLineRasterizationFeatures VkPhysicalDeviceLineRasterizationFeaturesEXT;
-typedef struct VkPipelineRenderingCreateInfo +typedef struct VkPhysicalDeviceLineRasterizationProperties { VkStructureType sType; - const void *pNext; - uint32_t viewMask; - uint32_t colorAttachmentCount; - const VkFormat *pColorAttachmentFormats; - VkFormat depthAttachmentFormat; - VkFormat stencilAttachmentFormat; -} VkPipelineRenderingCreateInfo; -typedef VkPipelineRenderingCreateInfo VkPipelineRenderingCreateInfoKHR; + void *pNext; + uint32_t lineSubPixelPrecisionBits; +} VkPhysicalDeviceLineRasterizationProperties; +typedef VkPhysicalDeviceLineRasterizationProperties VkPhysicalDeviceLineRasterizationPropertiesKHR; +typedef VkPhysicalDeviceLineRasterizationProperties VkPhysicalDeviceLineRasterizationPropertiesEXT;
-typedef struct VkPipelineRepresentativeFragmentTestStateCreateInfoNV +typedef struct VkPhysicalDeviceLinearColorAttachmentFeaturesNV { VkStructureType sType; - const void *pNext; - VkBool32 representativeFragmentTestEnable; -} VkPipelineRepresentativeFragmentTestStateCreateInfoNV; + void *pNext; + VkBool32 linearColorAttachment; +} VkPhysicalDeviceLinearColorAttachmentFeaturesNV;
-typedef struct VkPipelineRobustnessCreateInfo +typedef struct VkPhysicalDeviceMaintenance3Properties { VkStructureType sType; - const void *pNext; - VkPipelineRobustnessBufferBehavior storageBuffers; - VkPipelineRobustnessBufferBehavior uniformBuffers; - VkPipelineRobustnessBufferBehavior vertexInputs; - VkPipelineRobustnessImageBehavior images; -} VkPipelineRobustnessCreateInfo; -typedef VkPipelineRobustnessCreateInfo VkPipelineRobustnessCreateInfoEXT; + void *pNext; + uint32_t maxPerSetDescriptors; + VkDeviceSize WINE_VK_ALIGN(8) maxMemoryAllocationSize; +} VkPhysicalDeviceMaintenance3Properties; +typedef VkPhysicalDeviceMaintenance3Properties VkPhysicalDeviceMaintenance3PropertiesKHR;
-typedef struct VkPipelineShaderStageModuleIdentifierCreateInfoEXT +typedef struct VkPhysicalDeviceMaintenance4Features { VkStructureType sType; - const void *pNext; - uint32_t identifierSize; - const uint8_t *pIdentifier; -} VkPipelineShaderStageModuleIdentifierCreateInfoEXT; + void *pNext; + VkBool32 maintenance4; +} VkPhysicalDeviceMaintenance4Features; +typedef VkPhysicalDeviceMaintenance4Features VkPhysicalDeviceMaintenance4FeaturesKHR;
-typedef struct VkPipelineShaderStageRequiredSubgroupSizeCreateInfo +typedef struct VkPhysicalDeviceMaintenance4Properties { VkStructureType sType; void *pNext; - uint32_t requiredSubgroupSize; -} VkPipelineShaderStageRequiredSubgroupSizeCreateInfo; -typedef VkPipelineShaderStageRequiredSubgroupSizeCreateInfo VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT; -typedef VkPipelineShaderStageRequiredSubgroupSizeCreateInfo VkShaderRequiredSubgroupSizeCreateInfoEXT; + VkDeviceSize WINE_VK_ALIGN(8) maxBufferSize; +} VkPhysicalDeviceMaintenance4Properties; +typedef VkPhysicalDeviceMaintenance4Properties VkPhysicalDeviceMaintenance4PropertiesKHR;
-typedef struct VkPipelineTessellationDomainOriginStateCreateInfo +typedef struct VkPhysicalDeviceMaintenance5Features { VkStructureType sType; - const void *pNext; - VkTessellationDomainOrigin domainOrigin; -} VkPipelineTessellationDomainOriginStateCreateInfo; -typedef VkPipelineTessellationDomainOriginStateCreateInfo VkPipelineTessellationDomainOriginStateCreateInfoKHR; + void *pNext; + VkBool32 maintenance5; +} VkPhysicalDeviceMaintenance5Features; +typedef VkPhysicalDeviceMaintenance5Features VkPhysicalDeviceMaintenance5FeaturesKHR;
-typedef struct VkPipelineTessellationStateCreateInfo +typedef struct VkPhysicalDeviceMaintenance5Properties { VkStructureType sType; - const void *pNext; - VkPipelineTessellationStateCreateFlags flags; - uint32_t patchControlPoints; -} VkPipelineTessellationStateCreateInfo; + void *pNext; + VkBool32 earlyFragmentMultisampleCoverageAfterSampleCounting; + VkBool32 earlyFragmentSampleMaskTestBeforeSampleCounting; + VkBool32 depthStencilSwizzleOneSupport; + VkBool32 polygonModePointSize; + VkBool32 nonStrictSinglePixelWideLinesUseParallelogram; + VkBool32 nonStrictWideLinesUseParallelogram; +} VkPhysicalDeviceMaintenance5Properties; +typedef VkPhysicalDeviceMaintenance5Properties VkPhysicalDeviceMaintenance5PropertiesKHR;
-typedef struct VkPipelineViewportCoarseSampleOrderStateCreateInfoNV +typedef struct VkPhysicalDeviceMaintenance6Features { VkStructureType sType; - const void *pNext; - VkCoarseSampleOrderTypeNV sampleOrderType; - uint32_t customSampleOrderCount; - const VkCoarseSampleOrderCustomNV *pCustomSampleOrders; -} VkPipelineViewportCoarseSampleOrderStateCreateInfoNV; + void *pNext; + VkBool32 maintenance6; +} VkPhysicalDeviceMaintenance6Features; +typedef VkPhysicalDeviceMaintenance6Features VkPhysicalDeviceMaintenance6FeaturesKHR;
-typedef struct VkPipelineViewportDepthClampControlCreateInfoEXT +typedef struct VkPhysicalDeviceMaintenance6Properties { VkStructureType sType; - const void *pNext; - VkDepthClampModeEXT depthClampMode; - const VkDepthClampRangeEXT *pDepthClampRange; -} VkPipelineViewportDepthClampControlCreateInfoEXT; + void *pNext; + VkBool32 blockTexelViewCompatibleMultipleLayers; + uint32_t maxCombinedImageSamplerDescriptorCount; + VkBool32 fragmentShadingRateClampCombinerInputs; +} VkPhysicalDeviceMaintenance6Properties; +typedef VkPhysicalDeviceMaintenance6Properties VkPhysicalDeviceMaintenance6PropertiesKHR;
-typedef struct VkPipelineViewportDepthClipControlCreateInfoEXT +typedef struct VkPhysicalDeviceMaintenance8FeaturesKHR { VkStructureType sType; - const void *pNext; - VkBool32 negativeOneToOne; -} VkPipelineViewportDepthClipControlCreateInfoEXT; + void *pNext; + VkBool32 maintenance8; +} VkPhysicalDeviceMaintenance8FeaturesKHR;
-typedef struct VkPresentId2KHR +typedef struct VkPhysicalDeviceMaintenance9FeaturesKHR { VkStructureType sType; - const void *pNext; - uint32_t swapchainCount; - const uint64_t *pPresentIds; -} VkPresentId2KHR; + void *pNext; + VkBool32 maintenance9; +} VkPhysicalDeviceMaintenance9FeaturesKHR;
-typedef struct VkPresentIdKHR +typedef struct VkPhysicalDeviceMaintenance9PropertiesKHR { VkStructureType sType; - const void *pNext; - uint32_t swapchainCount; - const uint64_t *pPresentIds; -} VkPresentIdKHR; - -typedef struct VkPresentInfoKHR -{ - VkStructureType sType; - const void *pNext; - uint32_t waitSemaphoreCount; - const VkSemaphore *pWaitSemaphores; - uint32_t swapchainCount; - const VkSwapchainKHR *pSwapchains; - const uint32_t *pImageIndices; - VkResult *pResults; -} VkPresentInfoKHR; + void *pNext; + VkBool32 image2DViewOf3DSparse; + VkDefaultVertexAttributeValueKHR defaultVertexAttributeValue; +} VkPhysicalDeviceMaintenance9PropertiesKHR;
-typedef struct VkPresentWait2InfoKHR +typedef struct VkPhysicalDeviceMapMemoryPlacedFeaturesEXT { VkStructureType sType; - const void *pNext; - uint64_t WINE_VK_ALIGN(8) presentId; - uint64_t WINE_VK_ALIGN(8) timeout; -} VkPresentWait2InfoKHR; + void *pNext; + VkBool32 memoryMapPlaced; + VkBool32 memoryMapRangePlaced; + VkBool32 memoryUnmapReserve; +} VkPhysicalDeviceMapMemoryPlacedFeaturesEXT;
-typedef struct VkPrivateDataSlotCreateInfo +typedef struct VkPhysicalDeviceMapMemoryPlacedPropertiesEXT { VkStructureType sType; - const void *pNext; - VkPrivateDataSlotCreateFlags flags; -} VkPrivateDataSlotCreateInfo; -typedef VkPrivateDataSlotCreateInfo VkPrivateDataSlotCreateInfoEXT; + void *pNext; + VkDeviceSize WINE_VK_ALIGN(8) minPlacedMemoryMapAlignment; +} VkPhysicalDeviceMapMemoryPlacedPropertiesEXT;
-typedef struct VkProtectedSubmitInfo +typedef struct VkPhysicalDeviceMemoryBudgetPropertiesEXT { VkStructureType sType; - const void *pNext; - VkBool32 protectedSubmit; -} VkProtectedSubmitInfo; + void *pNext; + VkDeviceSize WINE_VK_ALIGN(8) heapBudget[VK_MAX_MEMORY_HEAPS]; + VkDeviceSize WINE_VK_ALIGN(8) heapUsage[VK_MAX_MEMORY_HEAPS]; +} VkPhysicalDeviceMemoryBudgetPropertiesEXT;
-typedef struct VkPushConstantRange +typedef struct VkPhysicalDeviceMemoryDecompressionFeaturesNV { - VkShaderStageFlags stageFlags; - uint32_t offset; - uint32_t size; -} VkPushConstantRange; + VkStructureType sType; + void *pNext; + VkBool32 memoryDecompression; +} VkPhysicalDeviceMemoryDecompressionFeaturesNV;
-typedef struct VkPushConstantsInfo +typedef struct VkPhysicalDeviceMemoryDecompressionPropertiesNV { VkStructureType sType; - const void *pNext; - VkPipelineLayout WINE_VK_ALIGN(8) layout; - VkShaderStageFlags stageFlags; - uint32_t offset; - uint32_t size; - const void *pValues; -} VkPushConstantsInfo; -typedef VkPushConstantsInfo VkPushConstantsInfoKHR; + void *pNext; + VkMemoryDecompressionMethodFlagsNV WINE_VK_ALIGN(8) decompressionMethods; + uint64_t WINE_VK_ALIGN(8) maxDecompressionIndirectCount; +} VkPhysicalDeviceMemoryDecompressionPropertiesNV;
-typedef struct VkPushDescriptorSetWithTemplateInfo +typedef struct VkPhysicalDeviceMemoryPriorityFeaturesEXT { VkStructureType sType; - const void *pNext; - VkDescriptorUpdateTemplate WINE_VK_ALIGN(8) descriptorUpdateTemplate; - VkPipelineLayout WINE_VK_ALIGN(8) layout; - uint32_t set; - const void *pData; -} VkPushDescriptorSetWithTemplateInfo; -typedef VkPushDescriptorSetWithTemplateInfo VkPushDescriptorSetWithTemplateInfoKHR; + void *pNext; + VkBool32 memoryPriority; +} VkPhysicalDeviceMemoryPriorityFeaturesEXT;
-typedef struct VkQueryLowLatencySupportNV +typedef struct VkPhysicalDeviceMemoryProperties2 { VkStructureType sType; - const void *pNext; - void *pQueriedLowLatencyData; -} VkQueryLowLatencySupportNV; + void *pNext; + VkPhysicalDeviceMemoryProperties WINE_VK_ALIGN(8) memoryProperties; +} VkPhysicalDeviceMemoryProperties2; +typedef VkPhysicalDeviceMemoryProperties2 VkPhysicalDeviceMemoryProperties2KHR;
-typedef struct VkQueryPoolCreateInfo +typedef struct VkPhysicalDeviceMeshShaderFeaturesEXT { VkStructureType sType; - const void *pNext; - VkQueryPoolCreateFlags flags; - VkQueryType queryType; - uint32_t queryCount; - VkQueryPipelineStatisticFlags pipelineStatistics; -} VkQueryPoolCreateInfo; + void *pNext; + VkBool32 taskShader; + VkBool32 meshShader; + VkBool32 multiviewMeshShader; + VkBool32 primitiveFragmentShadingRateMeshShader; + VkBool32 meshShaderQueries; +} VkPhysicalDeviceMeshShaderFeaturesEXT;
-typedef struct VkQueryPoolPerformanceCreateInfoKHR +typedef struct VkPhysicalDeviceMeshShaderFeaturesNV { VkStructureType sType; - const void *pNext; - uint32_t queueFamilyIndex; - uint32_t counterIndexCount; - const uint32_t *pCounterIndices; -} VkQueryPoolPerformanceCreateInfoKHR; + void *pNext; + VkBool32 taskShader; + VkBool32 meshShader; +} VkPhysicalDeviceMeshShaderFeaturesNV;
-typedef struct VkQueryPoolPerformanceQueryCreateInfoINTEL +typedef struct VkPhysicalDeviceMeshShaderPropertiesEXT { VkStructureType sType; - const void *pNext; - VkQueryPoolSamplingModeINTEL performanceCountersSampling; -} VkQueryPoolPerformanceQueryCreateInfoINTEL; -typedef VkQueryPoolPerformanceQueryCreateInfoINTEL VkQueryPoolCreateInfoINTEL; + void *pNext; + uint32_t maxTaskWorkGroupTotalCount; + uint32_t maxTaskWorkGroupCount[3]; + uint32_t maxTaskWorkGroupInvocations; + uint32_t maxTaskWorkGroupSize[3]; + uint32_t maxTaskPayloadSize; + uint32_t maxTaskSharedMemorySize; + uint32_t maxTaskPayloadAndSharedMemorySize; + uint32_t maxMeshWorkGroupTotalCount; + uint32_t maxMeshWorkGroupCount[3]; + uint32_t maxMeshWorkGroupInvocations; + uint32_t maxMeshWorkGroupSize[3]; + uint32_t maxMeshSharedMemorySize; + uint32_t maxMeshPayloadAndSharedMemorySize; + uint32_t maxMeshOutputMemorySize; + uint32_t maxMeshPayloadAndOutputMemorySize; + uint32_t maxMeshOutputComponents; + uint32_t maxMeshOutputVertices; + uint32_t maxMeshOutputPrimitives; + uint32_t maxMeshOutputLayers; + uint32_t maxMeshMultiviewViewCount; + uint32_t meshOutputPerVertexGranularity; + uint32_t meshOutputPerPrimitiveGranularity; + uint32_t maxPreferredTaskWorkGroupInvocations; + uint32_t maxPreferredMeshWorkGroupInvocations; + VkBool32 prefersLocalInvocationVertexOutput; + VkBool32 prefersLocalInvocationPrimitiveOutput; + VkBool32 prefersCompactVertexOutput; + VkBool32 prefersCompactPrimitiveOutput; +} VkPhysicalDeviceMeshShaderPropertiesEXT;
-typedef struct VkQueryPoolVideoEncodeFeedbackCreateInfoKHR +typedef struct VkPhysicalDeviceMeshShaderPropertiesNV { VkStructureType sType; - const void *pNext; - VkVideoEncodeFeedbackFlagsKHR encodeFeedbackFlags; -} VkQueryPoolVideoEncodeFeedbackCreateInfoKHR; + void *pNext; + uint32_t maxDrawMeshTasksCount; + uint32_t maxTaskWorkGroupInvocations; + uint32_t maxTaskWorkGroupSize[3]; + uint32_t maxTaskTotalMemorySize; + uint32_t maxTaskOutputCount; + uint32_t maxMeshWorkGroupInvocations; + uint32_t maxMeshWorkGroupSize[3]; + uint32_t maxMeshTotalMemorySize; + uint32_t maxMeshOutputVertices; + uint32_t maxMeshOutputPrimitives; + uint32_t maxMeshMultiviewViewCount; + uint32_t meshOutputPerVertexGranularity; + uint32_t meshOutputPerPrimitiveGranularity; +} VkPhysicalDeviceMeshShaderPropertiesNV;
-typedef struct VkQueueFamilyCheckpointProperties2NV +typedef struct VkPhysicalDeviceMultiDrawFeaturesEXT { VkStructureType sType; void *pNext; - VkPipelineStageFlags2 WINE_VK_ALIGN(8) checkpointExecutionStageMask; -} VkQueueFamilyCheckpointProperties2NV; + VkBool32 multiDraw; +} VkPhysicalDeviceMultiDrawFeaturesEXT;
-typedef struct VkQueueFamilyCheckpointPropertiesNV +typedef struct VkPhysicalDeviceMultiDrawPropertiesEXT { VkStructureType sType; void *pNext; - VkPipelineStageFlags checkpointExecutionStageMask; -} VkQueueFamilyCheckpointPropertiesNV; + uint32_t maxMultiDrawCount; +} VkPhysicalDeviceMultiDrawPropertiesEXT;
-typedef struct VkQueueFamilyDataGraphProcessingEnginePropertiesARM +typedef struct VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT { VkStructureType sType; - const void *pNext; - VkExternalSemaphoreHandleTypeFlags foreignSemaphoreHandleTypes; - VkExternalMemoryHandleTypeFlags foreignMemoryHandleTypes; -} VkQueueFamilyDataGraphProcessingEnginePropertiesARM; + void *pNext; + VkBool32 multisampledRenderToSingleSampled; +} VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT;
-typedef struct VkQueueFamilyDataGraphPropertiesARM +typedef struct VkPhysicalDeviceMultiviewFeatures { VkStructureType sType; - const void *pNext; - VkPhysicalDeviceDataGraphProcessingEngineARM engine; - VkPhysicalDeviceDataGraphOperationSupportARM operation; -} VkQueueFamilyDataGraphPropertiesARM; + void *pNext; + VkBool32 multiview; + VkBool32 multiviewGeometryShader; + VkBool32 multiviewTessellationShader; +} VkPhysicalDeviceMultiviewFeatures; +typedef VkPhysicalDeviceMultiviewFeatures VkPhysicalDeviceMultiviewFeaturesKHR;
-typedef struct VkQueueFamilyGlobalPriorityProperties +typedef struct VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM { VkStructureType sType; void *pNext; - uint32_t priorityCount; - VkQueueGlobalPriority priorities[VK_MAX_GLOBAL_PRIORITY_SIZE]; -} VkQueueFamilyGlobalPriorityProperties; -typedef VkQueueFamilyGlobalPriorityProperties VkQueueFamilyGlobalPriorityPropertiesKHR; -typedef VkQueueFamilyGlobalPriorityProperties VkQueueFamilyGlobalPriorityPropertiesEXT; + VkBool32 multiviewPerViewRenderAreas; +} VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM;
-typedef struct VkQueueFamilyOwnershipTransferPropertiesKHR +typedef struct VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM { VkStructureType sType; void *pNext; - uint32_t optimalImageTransferToQueueFamilies; -} VkQueueFamilyOwnershipTransferPropertiesKHR; + VkBool32 multiviewPerViewViewports; +} VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM;
-typedef struct VkQueueFamilyProperties +typedef struct VkPhysicalDeviceMultiviewProperties { - VkQueueFlags queueFlags; - uint32_t queueCount; - uint32_t timestampValidBits; - VkExtent3D minImageTransferGranularity; -} VkQueueFamilyProperties; + VkStructureType sType; + void *pNext; + uint32_t maxMultiviewViewCount; + uint32_t maxMultiviewInstanceIndex; +} VkPhysicalDeviceMultiviewProperties; +typedef VkPhysicalDeviceMultiviewProperties VkPhysicalDeviceMultiviewPropertiesKHR;
-typedef struct VkQueueFamilyProperties2 +typedef struct VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT { VkStructureType sType; void *pNext; - VkQueueFamilyProperties queueFamilyProperties; -} VkQueueFamilyProperties2; -typedef VkQueueFamilyProperties2 VkQueueFamilyProperties2KHR; + VkBool32 mutableDescriptorType; +} VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT; +typedef VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE;
-typedef struct VkQueueFamilyQueryResultStatusPropertiesKHR +typedef struct VkPhysicalDeviceNestedCommandBufferFeaturesEXT { VkStructureType sType; void *pNext; - VkBool32 queryResultStatusSupport; -} VkQueueFamilyQueryResultStatusPropertiesKHR; + VkBool32 nestedCommandBuffer; + VkBool32 nestedCommandBufferRendering; + VkBool32 nestedCommandBufferSimultaneousUse; +} VkPhysicalDeviceNestedCommandBufferFeaturesEXT;
-typedef struct VkQueueFamilyVideoPropertiesKHR +typedef struct VkPhysicalDeviceNestedCommandBufferPropertiesEXT { VkStructureType sType; void *pNext; - VkVideoCodecOperationFlagsKHR videoCodecOperations; -} VkQueueFamilyVideoPropertiesKHR; + uint32_t maxCommandBufferNestingLevel; +} VkPhysicalDeviceNestedCommandBufferPropertiesEXT;
-typedef struct VkRayTracingPipelineClusterAccelerationStructureCreateInfoNV +typedef struct VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT { VkStructureType sType; void *pNext; - VkBool32 allowClusterAccelerationStructure; -} VkRayTracingPipelineClusterAccelerationStructureCreateInfoNV; + VkBool32 nonSeamlessCubeMap; +} VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT;
-typedef struct VkRayTracingPipelineInterfaceCreateInfoKHR +typedef struct VkPhysicalDeviceOpacityMicromapFeaturesEXT { VkStructureType sType; - const void *pNext; - uint32_t maxPipelineRayPayloadSize; - uint32_t maxPipelineRayHitAttributeSize; -} VkRayTracingPipelineInterfaceCreateInfoKHR; + void *pNext; + VkBool32 micromap; + VkBool32 micromapCaptureReplay; + VkBool32 micromapHostCommands; +} VkPhysicalDeviceOpacityMicromapFeaturesEXT;
-typedef struct VkRayTracingShaderGroupCreateInfoKHR +typedef struct VkPhysicalDeviceOpacityMicromapPropertiesEXT { VkStructureType sType; - const void *pNext; - VkRayTracingShaderGroupTypeKHR type; - uint32_t generalShader; - uint32_t closestHitShader; - uint32_t anyHitShader; - uint32_t intersectionShader; - const void *pShaderGroupCaptureReplayHandle; -} VkRayTracingShaderGroupCreateInfoKHR; + void *pNext; + uint32_t maxOpacity2StateSubdivisionLevel; + uint32_t maxOpacity4StateSubdivisionLevel; +} VkPhysicalDeviceOpacityMicromapPropertiesEXT;
-typedef struct VkRayTracingShaderGroupCreateInfoNV +typedef struct VkPhysicalDeviceOpticalFlowFeaturesNV { VkStructureType sType; - const void *pNext; - VkRayTracingShaderGroupTypeKHR type; - uint32_t generalShader; - uint32_t closestHitShader; - uint32_t anyHitShader; - uint32_t intersectionShader; -} VkRayTracingShaderGroupCreateInfoNV; - -typedef struct VkRect2D -{ - VkOffset2D offset; - VkExtent2D extent; -} VkRect2D; - -typedef struct VkRectLayerKHR -{ - VkOffset2D offset; - VkExtent2D extent; - uint32_t layer; -} VkRectLayerKHR; + void *pNext; + VkBool32 opticalFlow; +} VkPhysicalDeviceOpticalFlowFeaturesNV;
-typedef struct VkReleaseCapturedPipelineDataInfoKHR +typedef struct VkPhysicalDeviceOpticalFlowPropertiesNV { VkStructureType sType; void *pNext; - VkPipeline WINE_VK_ALIGN(8) pipeline; -} VkReleaseCapturedPipelineDataInfoKHR; + VkOpticalFlowGridSizeFlagsNV supportedOutputGridSizes; + VkOpticalFlowGridSizeFlagsNV supportedHintGridSizes; + VkBool32 hintSupported; + VkBool32 costSupported; + VkBool32 bidirectionalFlowSupported; + VkBool32 globalFlowSupported; + uint32_t minWidth; + uint32_t minHeight; + uint32_t maxWidth; + uint32_t maxHeight; + uint32_t maxNumRegionsOfInterest; +} VkPhysicalDeviceOpticalFlowPropertiesNV;
-typedef struct VkReleaseSwapchainImagesInfoKHR +typedef struct VkPhysicalDevicePCIBusInfoPropertiesEXT { VkStructureType sType; - const void *pNext; - VkSwapchainKHR WINE_VK_ALIGN(8) swapchain; - uint32_t imageIndexCount; - const uint32_t *pImageIndices; -} VkReleaseSwapchainImagesInfoKHR; -typedef VkReleaseSwapchainImagesInfoKHR VkReleaseSwapchainImagesInfoEXT; + void *pNext; + uint32_t pciDomain; + uint32_t pciBus; + uint32_t pciDevice; + uint32_t pciFunction; +} VkPhysicalDevicePCIBusInfoPropertiesEXT;
-typedef struct VkRenderPassAttachmentBeginInfo +typedef struct VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT { VkStructureType sType; - const void *pNext; - uint32_t attachmentCount; - const VkImageView *pAttachments; -} VkRenderPassAttachmentBeginInfo; -typedef VkRenderPassAttachmentBeginInfo VkRenderPassAttachmentBeginInfoKHR; + void *pNext; + VkBool32 pageableDeviceLocalMemory; +} VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT;
-typedef struct VkRenderPassBeginInfo +typedef struct VkPhysicalDevicePartitionedAccelerationStructureFeaturesNV { VkStructureType sType; - const void *pNext; - VkRenderPass WINE_VK_ALIGN(8) renderPass; - VkFramebuffer WINE_VK_ALIGN(8) framebuffer; - VkRect2D renderArea; - uint32_t clearValueCount; - const VkClearValue *pClearValues; -} VkRenderPassBeginInfo; + void *pNext; + VkBool32 partitionedAccelerationStructure; +} VkPhysicalDevicePartitionedAccelerationStructureFeaturesNV;
-typedef struct VkRenderPassCreationControlEXT +typedef struct VkPhysicalDevicePartitionedAccelerationStructurePropertiesNV { VkStructureType sType; - const void *pNext; - VkBool32 disallowMerging; -} VkRenderPassCreationControlEXT; + void *pNext; + uint32_t maxPartitionCount; +} VkPhysicalDevicePartitionedAccelerationStructurePropertiesNV;
-typedef struct VkRenderPassCreationFeedbackInfoEXT +typedef struct VkPhysicalDevicePerStageDescriptorSetFeaturesNV { - uint32_t postMergeSubpassCount; -} VkRenderPassCreationFeedbackInfoEXT; + VkStructureType sType; + void *pNext; + VkBool32 perStageDescriptorSet; + VkBool32 dynamicPipelineLayout; +} VkPhysicalDevicePerStageDescriptorSetFeaturesNV;
-typedef struct VkRenderPassFragmentDensityMapCreateInfoEXT +typedef struct VkPhysicalDevicePerformanceQueryFeaturesKHR { VkStructureType sType; - const void *pNext; - VkAttachmentReference fragmentDensityMapAttachment; -} VkRenderPassFragmentDensityMapCreateInfoEXT; + void *pNext; + VkBool32 performanceCounterQueryPools; + VkBool32 performanceCounterMultipleQueryPools; +} VkPhysicalDevicePerformanceQueryFeaturesKHR;
-typedef struct VkRenderPassFragmentDensityMapOffsetEndInfoEXT +typedef struct VkPhysicalDevicePerformanceQueryPropertiesKHR { VkStructureType sType; - const void *pNext; - uint32_t fragmentDensityOffsetCount; - const VkOffset2D *pFragmentDensityOffsets; -} VkRenderPassFragmentDensityMapOffsetEndInfoEXT; -typedef VkRenderPassFragmentDensityMapOffsetEndInfoEXT VkSubpassFragmentDensityMapOffsetEndInfoQCOM; + void *pNext; + VkBool32 allowCommandBufferQueryCopies; +} VkPhysicalDevicePerformanceQueryPropertiesKHR;
-typedef struct VkRenderPassInputAttachmentAspectCreateInfo +typedef struct VkPhysicalDevicePipelineBinaryFeaturesKHR { VkStructureType sType; - const void *pNext; - uint32_t aspectReferenceCount; - const VkInputAttachmentAspectReference *pAspectReferences; -} VkRenderPassInputAttachmentAspectCreateInfo; -typedef VkRenderPassInputAttachmentAspectCreateInfo VkRenderPassInputAttachmentAspectCreateInfoKHR; + void *pNext; + VkBool32 pipelineBinaries; +} VkPhysicalDevicePipelineBinaryFeaturesKHR;
-typedef struct VkRenderPassMultiviewCreateInfo +typedef struct VkPhysicalDevicePipelineBinaryPropertiesKHR { VkStructureType sType; - const void *pNext; - uint32_t subpassCount; - const uint32_t *pViewMasks; - uint32_t dependencyCount; - const int32_t *pViewOffsets; - uint32_t correlationMaskCount; - const uint32_t *pCorrelationMasks; -} VkRenderPassMultiviewCreateInfo; -typedef VkRenderPassMultiviewCreateInfo VkRenderPassMultiviewCreateInfoKHR; + void *pNext; + VkBool32 pipelineBinaryInternalCache; + VkBool32 pipelineBinaryInternalCacheControl; + VkBool32 pipelineBinaryPrefersInternalCache; + VkBool32 pipelineBinaryPrecompiledInternalCache; + VkBool32 pipelineBinaryCompressedData; +} VkPhysicalDevicePipelineBinaryPropertiesKHR;
-typedef struct VkRenderPassStripeInfoARM +typedef struct VkPhysicalDevicePipelineCacheIncrementalModeFeaturesSEC { VkStructureType sType; - const void *pNext; - VkRect2D stripeArea; -} VkRenderPassStripeInfoARM; + void *pNext; + VkBool32 pipelineCacheIncrementalMode; +} VkPhysicalDevicePipelineCacheIncrementalModeFeaturesSEC;
-typedef struct VkRenderPassSubpassFeedbackInfoEXT +typedef struct VkPhysicalDevicePipelineCreationCacheControlFeatures { - VkSubpassMergeStatusEXT subpassMergeStatus; - char description[VK_MAX_DESCRIPTION_SIZE]; - uint32_t postMergeIndex; -} VkRenderPassSubpassFeedbackInfoEXT; + VkStructureType sType; + void *pNext; + VkBool32 pipelineCreationCacheControl; +} VkPhysicalDevicePipelineCreationCacheControlFeatures; +typedef VkPhysicalDevicePipelineCreationCacheControlFeatures VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT;
-typedef struct VkRenderPassTileShadingCreateInfoQCOM +typedef struct VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR { VkStructureType sType; - const void *pNext; - VkTileShadingRenderPassFlagsQCOM flags; - VkExtent2D tileApronSize; -} VkRenderPassTileShadingCreateInfoQCOM; + void *pNext; + VkBool32 pipelineExecutableInfo; +} VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR;
-typedef struct VkRenderPassTransformBeginInfoQCOM +typedef struct VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT { VkStructureType sType; - const void *pNext; - VkSurfaceTransformFlagBitsKHR transform; -} VkRenderPassTransformBeginInfoQCOM; + void *pNext; + VkBool32 pipelineLibraryGroupHandles; +} VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT;
-typedef struct VkRenderingAreaInfo +typedef struct VkPhysicalDevicePipelineOpacityMicromapFeaturesARM { VkStructureType sType; - const void *pNext; - uint32_t viewMask; - uint32_t colorAttachmentCount; - const VkFormat *pColorAttachmentFormats; - VkFormat depthAttachmentFormat; - VkFormat stencilAttachmentFormat; -} VkRenderingAreaInfo; -typedef VkRenderingAreaInfo VkRenderingAreaInfoKHR; + void *pNext; + VkBool32 pipelineOpacityMicromap; +} VkPhysicalDevicePipelineOpacityMicromapFeaturesARM;
-typedef struct VkRenderingAttachmentInfo +typedef struct VkPhysicalDevicePipelinePropertiesFeaturesEXT { VkStructureType sType; - const void *pNext; - VkImageView WINE_VK_ALIGN(8) imageView; - VkImageLayout imageLayout; - VkResolveModeFlagBits resolveMode; - VkImageView WINE_VK_ALIGN(8) resolveImageView; - VkImageLayout resolveImageLayout; - VkAttachmentLoadOp loadOp; - VkAttachmentStoreOp storeOp; - VkClearValue clearValue; -} VkRenderingAttachmentInfo; -typedef VkRenderingAttachmentInfo VkRenderingAttachmentInfoKHR; + void *pNext; + VkBool32 pipelinePropertiesIdentifier; +} VkPhysicalDevicePipelinePropertiesFeaturesEXT;
-typedef struct VkRenderingAttachmentLocationInfo +typedef struct VkPhysicalDevicePipelineProtectedAccessFeatures { VkStructureType sType; - const void *pNext; - uint32_t colorAttachmentCount; - const uint32_t *pColorAttachmentLocations; -} VkRenderingAttachmentLocationInfo; -typedef VkRenderingAttachmentLocationInfo VkRenderingAttachmentLocationInfoKHR; + void *pNext; + VkBool32 pipelineProtectedAccess; +} VkPhysicalDevicePipelineProtectedAccessFeatures; +typedef VkPhysicalDevicePipelineProtectedAccessFeatures VkPhysicalDevicePipelineProtectedAccessFeaturesEXT;
-typedef struct VkRenderingEndInfoEXT +typedef struct VkPhysicalDevicePipelineRobustnessFeatures { VkStructureType sType; - const void *pNext; -} VkRenderingEndInfoEXT; + void *pNext; + VkBool32 pipelineRobustness; +} VkPhysicalDevicePipelineRobustnessFeatures; +typedef VkPhysicalDevicePipelineRobustnessFeatures VkPhysicalDevicePipelineRobustnessFeaturesEXT;
-typedef struct VkRenderingFragmentDensityMapAttachmentInfoEXT +typedef struct VkPhysicalDevicePipelineRobustnessProperties { VkStructureType sType; - const void *pNext; - VkImageView WINE_VK_ALIGN(8) imageView; - VkImageLayout imageLayout; -} VkRenderingFragmentDensityMapAttachmentInfoEXT; + void *pNext; + VkPipelineRobustnessBufferBehavior defaultRobustnessStorageBuffers; + VkPipelineRobustnessBufferBehavior defaultRobustnessUniformBuffers; + VkPipelineRobustnessBufferBehavior defaultRobustnessVertexInputs; + VkPipelineRobustnessImageBehavior defaultRobustnessImages; +} VkPhysicalDevicePipelineRobustnessProperties; +typedef VkPhysicalDevicePipelineRobustnessProperties VkPhysicalDevicePipelineRobustnessPropertiesEXT;
-typedef struct VkRenderingFragmentShadingRateAttachmentInfoKHR +typedef struct VkPhysicalDevicePointClippingProperties { VkStructureType sType; - const void *pNext; - VkImageView WINE_VK_ALIGN(8) imageView; - VkImageLayout imageLayout; - VkExtent2D shadingRateAttachmentTexelSize; -} VkRenderingFragmentShadingRateAttachmentInfoKHR; + void *pNext; + VkPointClippingBehavior pointClippingBehavior; +} VkPhysicalDevicePointClippingProperties; +typedef VkPhysicalDevicePointClippingProperties VkPhysicalDevicePointClippingPropertiesKHR;
-typedef struct VkRenderingInfo +typedef struct VkPhysicalDevicePresentBarrierFeaturesNV { VkStructureType sType; - const void *pNext; - VkRenderingFlags flags; - VkRect2D renderArea; - uint32_t layerCount; - uint32_t viewMask; - uint32_t colorAttachmentCount; - const VkRenderingAttachmentInfo *pColorAttachments; - const VkRenderingAttachmentInfo *pDepthAttachment; - const VkRenderingAttachmentInfo *pStencilAttachment; -} VkRenderingInfo; -typedef VkRenderingInfo VkRenderingInfoKHR; + void *pNext; + VkBool32 presentBarrier; +} VkPhysicalDevicePresentBarrierFeaturesNV;
-typedef struct VkRenderingInputAttachmentIndexInfo +typedef struct VkPhysicalDevicePresentId2FeaturesKHR { VkStructureType sType; - const void *pNext; - uint32_t colorAttachmentCount; - const uint32_t *pColorAttachmentInputIndices; - const uint32_t *pDepthInputAttachmentIndex; - const uint32_t *pStencilInputAttachmentIndex; -} VkRenderingInputAttachmentIndexInfo; -typedef VkRenderingInputAttachmentIndexInfo VkRenderingInputAttachmentIndexInfoKHR; + void *pNext; + VkBool32 presentId2; +} VkPhysicalDevicePresentId2FeaturesKHR;
-typedef struct VkSRTDataNV +typedef struct VkPhysicalDevicePresentIdFeaturesKHR { - float sx; - float a; - float b; - float pvx; - float sy; - float c; - float pvy; - float sz; - float pvz; - float qx; - float qy; - float qz; - float qw; - float tx; - float ty; - float tz; -} VkSRTDataNV; + VkStructureType sType; + void *pNext; + VkBool32 presentId; +} VkPhysicalDevicePresentIdFeaturesKHR;
-typedef struct VkSampleLocationEXT +typedef struct VkPhysicalDevicePresentModeFifoLatestReadyFeaturesKHR { - float x; - float y; -} VkSampleLocationEXT; + VkStructureType sType; + void *pNext; + VkBool32 presentModeFifoLatestReady; +} VkPhysicalDevicePresentModeFifoLatestReadyFeaturesKHR; +typedef VkPhysicalDevicePresentModeFifoLatestReadyFeaturesKHR VkPhysicalDevicePresentModeFifoLatestReadyFeaturesEXT;
-typedef struct VkSampleLocationsInfoEXT +typedef struct VkPhysicalDevicePresentWait2FeaturesKHR { VkStructureType sType; - const void *pNext; - VkSampleCountFlagBits sampleLocationsPerPixel; - VkExtent2D sampleLocationGridSize; - uint32_t sampleLocationsCount; - const VkSampleLocationEXT *pSampleLocations; -} VkSampleLocationsInfoEXT; + void *pNext; + VkBool32 presentWait2; +} VkPhysicalDevicePresentWait2FeaturesKHR;
-typedef struct VkSamplerBlockMatchWindowCreateInfoQCOM +typedef struct VkPhysicalDevicePresentWaitFeaturesKHR { VkStructureType sType; - const void *pNext; - VkExtent2D windowExtent; - VkBlockMatchWindowCompareModeQCOM windowCompareMode; -} VkSamplerBlockMatchWindowCreateInfoQCOM; + void *pNext; + VkBool32 presentWait; +} VkPhysicalDevicePresentWaitFeaturesKHR;
-typedef struct VkSamplerBorderColorComponentMappingCreateInfoEXT +typedef struct VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT { VkStructureType sType; - const void *pNext; - VkComponentMapping components; - VkBool32 srgb; -} VkSamplerBorderColorComponentMappingCreateInfoEXT; + void *pNext; + VkBool32 primitiveTopologyListRestart; + VkBool32 primitiveTopologyPatchListRestart; +} VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT;
-typedef struct VkSamplerCaptureDescriptorDataInfoEXT +typedef struct VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT { VkStructureType sType; - const void *pNext; - VkSampler WINE_VK_ALIGN(8) sampler; -} VkSamplerCaptureDescriptorDataInfoEXT; + void *pNext; + VkBool32 primitivesGeneratedQuery; + VkBool32 primitivesGeneratedQueryWithRasterizerDiscard; + VkBool32 primitivesGeneratedQueryWithNonZeroStreams; +} VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT;
-typedef struct VkSamplerCreateInfo +typedef struct VkPhysicalDevicePrivateDataFeatures { VkStructureType sType; - const void *pNext; - VkSamplerCreateFlags flags; - VkFilter magFilter; - VkFilter minFilter; - VkSamplerMipmapMode mipmapMode; - VkSamplerAddressMode addressModeU; - VkSamplerAddressMode addressModeV; - VkSamplerAddressMode addressModeW; - float mipLodBias; - VkBool32 anisotropyEnable; - float maxAnisotropy; - VkBool32 compareEnable; - VkCompareOp compareOp; - float minLod; - float maxLod; - VkBorderColor borderColor; - VkBool32 unnormalizedCoordinates; -} VkSamplerCreateInfo; + void *pNext; + VkBool32 privateData; +} VkPhysicalDevicePrivateDataFeatures; +typedef VkPhysicalDevicePrivateDataFeatures VkPhysicalDevicePrivateDataFeaturesEXT;
-typedef struct VkSamplerCubicWeightsCreateInfoQCOM +typedef struct VkPhysicalDeviceProtectedMemoryFeatures { VkStructureType sType; - const void *pNext; - VkCubicFilterWeightsQCOM cubicWeights; -} VkSamplerCubicWeightsCreateInfoQCOM; + void *pNext; + VkBool32 protectedMemory; +} VkPhysicalDeviceProtectedMemoryFeatures;
-typedef struct VkSamplerCustomBorderColorCreateInfoEXT +typedef struct VkPhysicalDeviceProtectedMemoryProperties { VkStructureType sType; - const void *pNext; - VkClearColorValue customBorderColor; - VkFormat format; -} VkSamplerCustomBorderColorCreateInfoEXT; + void *pNext; + VkBool32 protectedNoFault; +} VkPhysicalDeviceProtectedMemoryProperties;
-typedef struct VkSamplerReductionModeCreateInfo +typedef struct VkPhysicalDeviceProvokingVertexFeaturesEXT { VkStructureType sType; - const void *pNext; - VkSamplerReductionMode reductionMode; -} VkSamplerReductionModeCreateInfo; -typedef VkSamplerReductionModeCreateInfo VkSamplerReductionModeCreateInfoEXT; + void *pNext; + VkBool32 provokingVertexLast; + VkBool32 transformFeedbackPreservesProvokingVertex; +} VkPhysicalDeviceProvokingVertexFeaturesEXT;
-typedef struct VkSamplerYcbcrConversionCreateInfo +typedef struct VkPhysicalDeviceProvokingVertexPropertiesEXT { VkStructureType sType; - const void *pNext; - VkFormat format; - VkSamplerYcbcrModelConversion ycbcrModel; - VkSamplerYcbcrRange ycbcrRange; - VkComponentMapping components; - VkChromaLocation xChromaOffset; - VkChromaLocation yChromaOffset; - VkFilter chromaFilter; - VkBool32 forceExplicitReconstruction; -} VkSamplerYcbcrConversionCreateInfo; -typedef VkSamplerYcbcrConversionCreateInfo VkSamplerYcbcrConversionCreateInfoKHR; + void *pNext; + VkBool32 provokingVertexModePerPipeline; + VkBool32 transformFeedbackPreservesTriangleFanProvokingVertex; +} VkPhysicalDeviceProvokingVertexPropertiesEXT;
-typedef struct VkSamplerYcbcrConversionImageFormatProperties +typedef struct VkPhysicalDevicePushDescriptorProperties { VkStructureType sType; void *pNext; - uint32_t combinedImageSamplerDescriptorCount; -} VkSamplerYcbcrConversionImageFormatProperties; -typedef VkSamplerYcbcrConversionImageFormatProperties VkSamplerYcbcrConversionImageFormatPropertiesKHR; + uint32_t maxPushDescriptors; +} VkPhysicalDevicePushDescriptorProperties; +typedef VkPhysicalDevicePushDescriptorProperties VkPhysicalDevicePushDescriptorPropertiesKHR;
-typedef struct VkSamplerYcbcrConversionInfo +typedef struct VkPhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM { VkStructureType sType; const void *pNext; - VkSamplerYcbcrConversion WINE_VK_ALIGN(8) conversion; -} VkSamplerYcbcrConversionInfo; -typedef VkSamplerYcbcrConversionInfo VkSamplerYcbcrConversionInfoKHR; + uint32_t queueFamilyIndex; + VkPhysicalDeviceDataGraphProcessingEngineTypeARM engineType; +} VkPhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM;
-typedef struct VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM +typedef struct VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT { VkStructureType sType; void *pNext; - VkBool32 enableYDegamma; - VkBool32 enableCbCrDegamma; -} VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM; + VkBool32 formatRgba10x6WithoutYCbCrSampler; +} VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT;
-typedef struct VkSemaphoreCreateInfo +typedef struct VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT { VkStructureType sType; - const void *pNext; - VkSemaphoreCreateFlags flags; -} VkSemaphoreCreateInfo; + void *pNext; + VkBool32 rasterizationOrderColorAttachmentAccess; + VkBool32 rasterizationOrderDepthAttachmentAccess; + VkBool32 rasterizationOrderStencilAttachmentAccess; +} VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT; +typedef VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM;
-typedef struct VkSemaphoreSignalInfo +typedef struct VkPhysicalDeviceRawAccessChainsFeaturesNV { VkStructureType sType; - const void *pNext; - VkSemaphore WINE_VK_ALIGN(8) semaphore; - uint64_t WINE_VK_ALIGN(8) value; -} VkSemaphoreSignalInfo; -typedef VkSemaphoreSignalInfo VkSemaphoreSignalInfoKHR; + void *pNext; + VkBool32 shaderRawAccessChains; +} VkPhysicalDeviceRawAccessChainsFeaturesNV;
-typedef struct VkSemaphoreSubmitInfo +typedef struct VkPhysicalDeviceRayQueryFeaturesKHR { VkStructureType sType; - const void *pNext; - VkSemaphore WINE_VK_ALIGN(8) semaphore; - uint64_t WINE_VK_ALIGN(8) value; - VkPipelineStageFlags2 WINE_VK_ALIGN(8) stageMask; - uint32_t deviceIndex; -} VkSemaphoreSubmitInfo; -typedef VkSemaphoreSubmitInfo VkSemaphoreSubmitInfoKHR; + void *pNext; + VkBool32 rayQuery; +} VkPhysicalDeviceRayQueryFeaturesKHR;
-typedef struct VkSemaphoreTypeCreateInfo +typedef struct VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV { VkStructureType sType; - const void *pNext; - VkSemaphoreType semaphoreType; - uint64_t WINE_VK_ALIGN(8) initialValue; -} VkSemaphoreTypeCreateInfo; -typedef VkSemaphoreTypeCreateInfo VkSemaphoreTypeCreateInfoKHR; + void *pNext; + VkBool32 rayTracingInvocationReorder; +} VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV;
-typedef struct VkSemaphoreWaitInfo +typedef struct VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV { VkStructureType sType; - const void *pNext; - VkSemaphoreWaitFlags flags; - uint32_t semaphoreCount; - const VkSemaphore *pSemaphores; - const uint64_t *pValues; -} VkSemaphoreWaitInfo; -typedef VkSemaphoreWaitInfo VkSemaphoreWaitInfoKHR; + void *pNext; + VkRayTracingInvocationReorderModeNV rayTracingInvocationReorderReorderingHint; +} VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV;
-typedef struct VkSetDescriptorBufferOffsetsInfoEXT +typedef struct VkPhysicalDeviceRayTracingLinearSweptSpheresFeaturesNV { VkStructureType sType; - const void *pNext; - VkShaderStageFlags stageFlags; - VkPipelineLayout WINE_VK_ALIGN(8) layout; - uint32_t firstSet; - uint32_t setCount; - const uint32_t *pBufferIndices; - const VkDeviceSize *pOffsets; -} VkSetDescriptorBufferOffsetsInfoEXT; + void *pNext; + VkBool32 spheres; + VkBool32 linearSweptSpheres; +} VkPhysicalDeviceRayTracingLinearSweptSpheresFeaturesNV;
-typedef struct VkSetLatencyMarkerInfoNV +typedef struct VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR { VkStructureType sType; - const void *pNext; - uint64_t WINE_VK_ALIGN(8) presentID; - VkLatencyMarkerNV marker; -} VkSetLatencyMarkerInfoNV; + void *pNext; + VkBool32 rayTracingMaintenance1; + VkBool32 rayTracingPipelineTraceRaysIndirect2; +} VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR;
-typedef struct VkSetStateFlagsIndirectCommandNV +typedef struct VkPhysicalDeviceRayTracingMotionBlurFeaturesNV { - uint32_t data; -} VkSetStateFlagsIndirectCommandNV; + VkStructureType sType; + void *pNext; + VkBool32 rayTracingMotionBlur; + VkBool32 rayTracingMotionBlurPipelineTraceRaysIndirect; +} VkPhysicalDeviceRayTracingMotionBlurFeaturesNV;
-typedef struct VkShaderModuleCreateInfo +typedef struct VkPhysicalDeviceRayTracingPipelineFeaturesKHR { VkStructureType sType; - const void *pNext; - VkShaderModuleCreateFlags flags; - size_t codeSize; - const uint32_t *pCode; -} VkShaderModuleCreateInfo; + void *pNext; + VkBool32 rayTracingPipeline; + VkBool32 rayTracingPipelineShaderGroupHandleCaptureReplay; + VkBool32 rayTracingPipelineShaderGroupHandleCaptureReplayMixed; + VkBool32 rayTracingPipelineTraceRaysIndirect; + VkBool32 rayTraversalPrimitiveCulling; +} VkPhysicalDeviceRayTracingPipelineFeaturesKHR;
-typedef struct VkShaderModuleIdentifierEXT +typedef struct VkPhysicalDeviceRayTracingPipelinePropertiesKHR { VkStructureType sType; void *pNext; - uint32_t identifierSize; - uint8_t identifier[VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT]; -} VkShaderModuleIdentifierEXT; + uint32_t shaderGroupHandleSize; + uint32_t maxRayRecursionDepth; + uint32_t maxShaderGroupStride; + uint32_t shaderGroupBaseAlignment; + uint32_t shaderGroupHandleCaptureReplaySize; + uint32_t maxRayDispatchInvocationCount; + uint32_t shaderGroupHandleAlignment; + uint32_t maxRayHitAttributeSize; +} VkPhysicalDeviceRayTracingPipelinePropertiesKHR;
-typedef struct VkShaderModuleValidationCacheCreateInfoEXT +typedef struct VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR { VkStructureType sType; - const void *pNext; - VkValidationCacheEXT WINE_VK_ALIGN(8) validationCache; -} VkShaderModuleValidationCacheCreateInfoEXT; + void *pNext; + VkBool32 rayTracingPositionFetch; +} VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR;
-typedef struct VkShaderResourceUsageAMD +typedef struct VkPhysicalDeviceRayTracingPropertiesNV { - uint32_t numUsedVgprs; - uint32_t numUsedSgprs; - uint32_t ldsSizePerLocalWorkGroup; - size_t ldsUsageSizeInBytes; - size_t scratchMemUsageInBytes; -} VkShaderResourceUsageAMD; + VkStructureType sType; + void *pNext; + uint32_t shaderGroupHandleSize; + uint32_t maxRecursionDepth; + uint32_t maxShaderGroupStride; + uint32_t shaderGroupBaseAlignment; + uint64_t WINE_VK_ALIGN(8) maxGeometryCount; + uint64_t WINE_VK_ALIGN(8) maxInstanceCount; + uint64_t WINE_VK_ALIGN(8) maxTriangleCount; + uint32_t maxDescriptorSetAccelerationStructures; +} VkPhysicalDeviceRayTracingPropertiesNV;
-typedef struct VkShaderStatisticsInfoAMD +typedef struct VkPhysicalDeviceRayTracingValidationFeaturesNV { - VkShaderStageFlags shaderStageMask; - VkShaderResourceUsageAMD resourceUsage; - uint32_t numPhysicalVgprs; - uint32_t numPhysicalSgprs; - uint32_t numAvailableVgprs; - uint32_t numAvailableSgprs; - uint32_t computeWorkGroupSize[3]; -} VkShaderStatisticsInfoAMD; + VkStructureType sType; + void *pNext; + VkBool32 rayTracingValidation; +} VkPhysicalDeviceRayTracingValidationFeaturesNV;
-typedef struct VkShadingRatePaletteNV +typedef struct VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG { - uint32_t shadingRatePaletteEntryCount; - const VkShadingRatePaletteEntryNV *pShadingRatePaletteEntries; -} VkShadingRatePaletteNV; + VkStructureType sType; + void *pNext; + VkBool32 relaxedLineRasterization; +} VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG;
-typedef struct VkSparseImageFormatProperties +typedef struct VkPhysicalDeviceRenderPassStripedFeaturesARM { - VkImageAspectFlags aspectMask; - VkExtent3D imageGranularity; - VkSparseImageFormatFlags flags; -} VkSparseImageFormatProperties; + VkStructureType sType; + void *pNext; + VkBool32 renderPassStriped; +} VkPhysicalDeviceRenderPassStripedFeaturesARM;
-typedef struct VkSparseImageFormatProperties2 +typedef struct VkPhysicalDeviceRenderPassStripedPropertiesARM { VkStructureType sType; void *pNext; - VkSparseImageFormatProperties properties; -} VkSparseImageFormatProperties2; -typedef VkSparseImageFormatProperties2 VkSparseImageFormatProperties2KHR; + VkExtent2D renderPassStripeGranularity; + uint32_t maxRenderPassStripes; +} VkPhysicalDeviceRenderPassStripedPropertiesARM;
-typedef struct VkSparseImageMemoryBind +typedef struct VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV { - VkImageSubresource subresource; - VkOffset3D offset; - VkExtent3D extent; - VkDeviceMemory WINE_VK_ALIGN(8) memory; - VkDeviceSize WINE_VK_ALIGN(8) memoryOffset; - VkSparseMemoryBindFlags flags; -} VkSparseImageMemoryBind; + VkStructureType sType; + void *pNext; + VkBool32 representativeFragmentTest; +} VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV;
-typedef struct VkSparseImageMemoryBindInfo +typedef struct VkPhysicalDeviceRobustness2FeaturesKHR { - VkImage WINE_VK_ALIGN(8) image; - uint32_t bindCount; - const VkSparseImageMemoryBind *pBinds; -} VkSparseImageMemoryBindInfo; + VkStructureType sType; + void *pNext; + VkBool32 robustBufferAccess2; + VkBool32 robustImageAccess2; + VkBool32 nullDescriptor; +} VkPhysicalDeviceRobustness2FeaturesKHR; +typedef VkPhysicalDeviceRobustness2FeaturesKHR VkPhysicalDeviceRobustness2FeaturesEXT;
-typedef struct VkSparseImageMemoryRequirements +typedef struct VkPhysicalDeviceRobustness2PropertiesKHR { - VkSparseImageFormatProperties formatProperties; - uint32_t imageMipTailFirstLod; - VkDeviceSize WINE_VK_ALIGN(8) imageMipTailSize; - VkDeviceSize WINE_VK_ALIGN(8) imageMipTailOffset; - VkDeviceSize WINE_VK_ALIGN(8) imageMipTailStride; -} VkSparseImageMemoryRequirements; + VkStructureType sType; + void *pNext; + VkDeviceSize WINE_VK_ALIGN(8) robustStorageBufferAccessSizeAlignment; + VkDeviceSize WINE_VK_ALIGN(8) robustUniformBufferAccessSizeAlignment; +} VkPhysicalDeviceRobustness2PropertiesKHR; +typedef VkPhysicalDeviceRobustness2PropertiesKHR VkPhysicalDeviceRobustness2PropertiesEXT;
-typedef struct VkSparseImageMemoryRequirements2 +typedef struct VkPhysicalDeviceSampleLocationsPropertiesEXT { VkStructureType sType; void *pNext; - VkSparseImageMemoryRequirements WINE_VK_ALIGN(8) memoryRequirements; -} VkSparseImageMemoryRequirements2; -typedef VkSparseImageMemoryRequirements2 VkSparseImageMemoryRequirements2KHR; + VkSampleCountFlags sampleLocationSampleCounts; + VkExtent2D maxSampleLocationGridSize; + float sampleLocationCoordinateRange[2]; + uint32_t sampleLocationSubPixelBits; + VkBool32 variableSampleLocations; +} VkPhysicalDeviceSampleLocationsPropertiesEXT;
-typedef struct VkSparseMemoryBind +typedef struct VkPhysicalDeviceSamplerFilterMinmaxProperties { - VkDeviceSize WINE_VK_ALIGN(8) resourceOffset; - VkDeviceSize WINE_VK_ALIGN(8) size; - VkDeviceMemory WINE_VK_ALIGN(8) memory; - VkDeviceSize WINE_VK_ALIGN(8) memoryOffset; - VkSparseMemoryBindFlags flags; -} VkSparseMemoryBind; + VkStructureType sType; + void *pNext; + VkBool32 filterMinmaxSingleComponentFormats; + VkBool32 filterMinmaxImageComponentMapping; +} VkPhysicalDeviceSamplerFilterMinmaxProperties; +typedef VkPhysicalDeviceSamplerFilterMinmaxProperties VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT;
-typedef struct VkSpecializationMapEntry +typedef struct VkPhysicalDeviceSamplerYcbcrConversionFeatures { - uint32_t constantID; - uint32_t offset; - size_t size; -} VkSpecializationMapEntry; + VkStructureType sType; + void *pNext; + VkBool32 samplerYcbcrConversion; +} VkPhysicalDeviceSamplerYcbcrConversionFeatures; +typedef VkPhysicalDeviceSamplerYcbcrConversionFeatures VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR;
-typedef struct VkStencilOpState +typedef struct VkPhysicalDeviceScalarBlockLayoutFeatures { - VkStencilOp failOp; - VkStencilOp passOp; - VkStencilOp depthFailOp; - VkCompareOp compareOp; - uint32_t compareMask; - uint32_t writeMask; - uint32_t reference; -} VkStencilOpState; + VkStructureType sType; + void *pNext; + VkBool32 scalarBlockLayout; +} VkPhysicalDeviceScalarBlockLayoutFeatures; +typedef VkPhysicalDeviceScalarBlockLayoutFeatures VkPhysicalDeviceScalarBlockLayoutFeaturesEXT;
-typedef struct VkStridedDeviceAddressNV +typedef struct VkPhysicalDeviceSchedulingControlsFeaturesARM { - VkDeviceAddress WINE_VK_ALIGN(8) startAddress; - VkDeviceSize WINE_VK_ALIGN(8) strideInBytes; -} VkStridedDeviceAddressNV; + VkStructureType sType; + void *pNext; + VkBool32 schedulingControls; +} VkPhysicalDeviceSchedulingControlsFeaturesARM;
-typedef struct VkStridedDeviceAddressRegionKHR +typedef struct VkPhysicalDeviceSchedulingControlsPropertiesARM { - VkDeviceAddress WINE_VK_ALIGN(8) deviceAddress; - VkDeviceSize WINE_VK_ALIGN(8) stride; - VkDeviceSize WINE_VK_ALIGN(8) size; -} VkStridedDeviceAddressRegionKHR; + VkStructureType sType; + void *pNext; + VkPhysicalDeviceSchedulingControlsFlagsARM WINE_VK_ALIGN(8) schedulingControlsFlags; +} VkPhysicalDeviceSchedulingControlsPropertiesARM;
-typedef struct VkSubmitInfo +typedef struct VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures { VkStructureType sType; - const void *pNext; - uint32_t waitSemaphoreCount; - const VkSemaphore *pWaitSemaphores; - const VkPipelineStageFlags *pWaitDstStageMask; - uint32_t commandBufferCount; - const VkCommandBuffer *pCommandBuffers; - uint32_t signalSemaphoreCount; - const VkSemaphore *pSignalSemaphores; -} VkSubmitInfo; + void *pNext; + VkBool32 separateDepthStencilLayouts; +} VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures; +typedef VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR;
-typedef struct VkSubmitInfo2 +typedef struct VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV { VkStructureType sType; - const void *pNext; - VkSubmitFlags flags; - uint32_t waitSemaphoreInfoCount; - const VkSemaphoreSubmitInfo *pWaitSemaphoreInfos; - uint32_t commandBufferInfoCount; - const VkCommandBufferSubmitInfo *pCommandBufferInfos; - uint32_t signalSemaphoreInfoCount; - const VkSemaphoreSubmitInfo *pSignalSemaphoreInfos; -} VkSubmitInfo2; -typedef VkSubmitInfo2 VkSubmitInfo2KHR; + void *pNext; + VkBool32 shaderFloat16VectorAtomics; +} VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV;
-typedef struct VkSubpassBeginInfo +typedef struct VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT { VkStructureType sType; - const void *pNext; - VkSubpassContents contents; -} VkSubpassBeginInfo; -typedef VkSubpassBeginInfo VkSubpassBeginInfoKHR; - -typedef struct VkSubpassDependency -{ - uint32_t srcSubpass; - uint32_t dstSubpass; - VkPipelineStageFlags srcStageMask; - VkPipelineStageFlags dstStageMask; - VkAccessFlags srcAccessMask; - VkAccessFlags dstAccessMask; - VkDependencyFlags dependencyFlags; -} VkSubpassDependency; + void *pNext; + VkBool32 shaderBufferFloat16Atomics; + VkBool32 shaderBufferFloat16AtomicAdd; + VkBool32 shaderBufferFloat16AtomicMinMax; + VkBool32 shaderBufferFloat32AtomicMinMax; + VkBool32 shaderBufferFloat64AtomicMinMax; + VkBool32 shaderSharedFloat16Atomics; + VkBool32 shaderSharedFloat16AtomicAdd; + VkBool32 shaderSharedFloat16AtomicMinMax; + VkBool32 shaderSharedFloat32AtomicMinMax; + VkBool32 shaderSharedFloat64AtomicMinMax; + VkBool32 shaderImageFloat32AtomicMinMax; + VkBool32 sparseImageFloat32AtomicMinMax; +} VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT;
-typedef struct VkSubpassDependency2 +typedef struct VkPhysicalDeviceShaderAtomicFloatFeaturesEXT { VkStructureType sType; - const void *pNext; - uint32_t srcSubpass; - uint32_t dstSubpass; - VkPipelineStageFlags srcStageMask; - VkPipelineStageFlags dstStageMask; - VkAccessFlags srcAccessMask; - VkAccessFlags dstAccessMask; - VkDependencyFlags dependencyFlags; - int32_t viewOffset; -} VkSubpassDependency2; -typedef VkSubpassDependency2 VkSubpassDependency2KHR; - -typedef struct VkSubpassDescription -{ - VkSubpassDescriptionFlags flags; - VkPipelineBindPoint pipelineBindPoint; - uint32_t inputAttachmentCount; - const VkAttachmentReference *pInputAttachments; - uint32_t colorAttachmentCount; - const VkAttachmentReference *pColorAttachments; - const VkAttachmentReference *pResolveAttachments; - const VkAttachmentReference *pDepthStencilAttachment; - uint32_t preserveAttachmentCount; - const uint32_t *pPreserveAttachments; -} VkSubpassDescription; + void *pNext; + VkBool32 shaderBufferFloat32Atomics; + VkBool32 shaderBufferFloat32AtomicAdd; + VkBool32 shaderBufferFloat64Atomics; + VkBool32 shaderBufferFloat64AtomicAdd; + VkBool32 shaderSharedFloat32Atomics; + VkBool32 shaderSharedFloat32AtomicAdd; + VkBool32 shaderSharedFloat64Atomics; + VkBool32 shaderSharedFloat64AtomicAdd; + VkBool32 shaderImageFloat32Atomics; + VkBool32 shaderImageFloat32AtomicAdd; + VkBool32 sparseImageFloat32Atomics; + VkBool32 sparseImageFloat32AtomicAdd; +} VkPhysicalDeviceShaderAtomicFloatFeaturesEXT;
-typedef struct VkSubpassDescription2 +typedef struct VkPhysicalDeviceShaderAtomicInt64Features { VkStructureType sType; - const void *pNext; - VkSubpassDescriptionFlags flags; - VkPipelineBindPoint pipelineBindPoint; - uint32_t viewMask; - uint32_t inputAttachmentCount; - const VkAttachmentReference2 *pInputAttachments; - uint32_t colorAttachmentCount; - const VkAttachmentReference2 *pColorAttachments; - const VkAttachmentReference2 *pResolveAttachments; - const VkAttachmentReference2 *pDepthStencilAttachment; - uint32_t preserveAttachmentCount; - const uint32_t *pPreserveAttachments; -} VkSubpassDescription2; -typedef VkSubpassDescription2 VkSubpassDescription2KHR; + void *pNext; + VkBool32 shaderBufferInt64Atomics; + VkBool32 shaderSharedInt64Atomics; +} VkPhysicalDeviceShaderAtomicInt64Features; +typedef VkPhysicalDeviceShaderAtomicInt64Features VkPhysicalDeviceShaderAtomicInt64FeaturesKHR;
-typedef struct VkSubpassDescriptionDepthStencilResolve +typedef struct VkPhysicalDeviceShaderBfloat16FeaturesKHR { VkStructureType sType; - const void *pNext; - VkResolveModeFlagBits depthResolveMode; - VkResolveModeFlagBits stencilResolveMode; - const VkAttachmentReference2 *pDepthStencilResolveAttachment; -} VkSubpassDescriptionDepthStencilResolve; -typedef VkSubpassDescriptionDepthStencilResolve VkSubpassDescriptionDepthStencilResolveKHR; + void *pNext; + VkBool32 shaderBFloat16Type; + VkBool32 shaderBFloat16DotProduct; + VkBool32 shaderBFloat16CooperativeMatrix; +} VkPhysicalDeviceShaderBfloat16FeaturesKHR;
-typedef struct VkSubpassEndInfo +typedef struct VkPhysicalDeviceShaderClockFeaturesKHR { VkStructureType sType; - const void *pNext; -} VkSubpassEndInfo; -typedef VkSubpassEndInfo VkSubpassEndInfoKHR; + void *pNext; + VkBool32 shaderSubgroupClock; + VkBool32 shaderDeviceClock; +} VkPhysicalDeviceShaderClockFeaturesKHR;
-typedef struct VkSubpassResolvePerformanceQueryEXT +typedef struct VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM { VkStructureType sType; void *pNext; - VkBool32 optimal; -} VkSubpassResolvePerformanceQueryEXT; + VkBool32 shaderCoreBuiltins; +} VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM;
-typedef struct VkSubpassSampleLocationsEXT +typedef struct VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM { - uint32_t subpassIndex; - VkSampleLocationsInfoEXT sampleLocationsInfo; -} VkSubpassSampleLocationsEXT; + VkStructureType sType; + void *pNext; + uint64_t WINE_VK_ALIGN(8) shaderCoreMask; + uint32_t shaderCoreCount; + uint32_t shaderWarpsPerCore; +} VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM;
-typedef struct VkSubpassShadingPipelineCreateInfoHUAWEI +typedef struct VkPhysicalDeviceShaderCoreProperties2AMD { VkStructureType sType; void *pNext; - VkRenderPass WINE_VK_ALIGN(8) renderPass; - uint32_t subpass; -} VkSubpassShadingPipelineCreateInfoHUAWEI; + VkShaderCorePropertiesFlagsAMD shaderCoreFeatures; + uint32_t activeComputeUnitCount; +} VkPhysicalDeviceShaderCoreProperties2AMD;
-typedef struct VkSubresourceHostMemcpySize +typedef struct VkPhysicalDeviceShaderCorePropertiesAMD { VkStructureType sType; void *pNext; - VkDeviceSize WINE_VK_ALIGN(8) size; -} VkSubresourceHostMemcpySize; -typedef VkSubresourceHostMemcpySize VkSubresourceHostMemcpySizeEXT; + uint32_t shaderEngineCount; + uint32_t shaderArraysPerEngineCount; + uint32_t computeUnitsPerShaderArray; + uint32_t simdPerComputeUnit; + uint32_t wavefrontsPerSimd; + uint32_t wavefrontSize; + uint32_t sgprsPerSimd; + uint32_t minSgprAllocation; + uint32_t maxSgprAllocation; + uint32_t sgprAllocationGranularity; + uint32_t vgprsPerSimd; + uint32_t minVgprAllocation; + uint32_t maxVgprAllocation; + uint32_t vgprAllocationGranularity; +} VkPhysicalDeviceShaderCorePropertiesAMD;
-typedef struct VkSubresourceLayout +typedef struct VkPhysicalDeviceShaderCorePropertiesARM { - VkDeviceSize WINE_VK_ALIGN(8) offset; - VkDeviceSize WINE_VK_ALIGN(8) size; - VkDeviceSize WINE_VK_ALIGN(8) rowPitch; - VkDeviceSize WINE_VK_ALIGN(8) arrayPitch; - VkDeviceSize WINE_VK_ALIGN(8) depthPitch; -} VkSubresourceLayout; + VkStructureType sType; + void *pNext; + uint32_t pixelRate; + uint32_t texelRate; + uint32_t fmaRate; +} VkPhysicalDeviceShaderCorePropertiesARM;
-typedef struct VkSubresourceLayout2 +typedef struct VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures { VkStructureType sType; void *pNext; - VkSubresourceLayout WINE_VK_ALIGN(8) subresourceLayout; -} VkSubresourceLayout2; -typedef VkSubresourceLayout2 VkSubresourceLayout2KHR; -typedef VkSubresourceLayout2 VkSubresourceLayout2EXT; + VkBool32 shaderDemoteToHelperInvocation; +} VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures; +typedef VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT;
-typedef struct VkSurfaceCapabilitiesKHR -{ - uint32_t minImageCount; - uint32_t maxImageCount; - VkExtent2D currentExtent; - VkExtent2D minImageExtent; - VkExtent2D maxImageExtent; - uint32_t maxImageArrayLayers; - VkSurfaceTransformFlagsKHR supportedTransforms; - VkSurfaceTransformFlagBitsKHR currentTransform; - VkCompositeAlphaFlagsKHR supportedCompositeAlpha; - VkImageUsageFlags supportedUsageFlags; -} VkSurfaceCapabilitiesKHR;
-typedef struct VkSurfaceCapabilitiesPresentBarrierNV +typedef struct VkPhysicalDeviceShaderDrawParametersFeatures { VkStructureType sType; void *pNext; - VkBool32 presentBarrierSupported; -} VkSurfaceCapabilitiesPresentBarrierNV; + VkBool32 shaderDrawParameters; +} VkPhysicalDeviceShaderDrawParametersFeatures; +typedef VkPhysicalDeviceShaderDrawParametersFeatures VkPhysicalDeviceShaderDrawParameterFeatures;
-typedef struct VkSurfaceCapabilitiesPresentId2KHR +typedef struct VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD { VkStructureType sType; void *pNext; - VkBool32 presentId2Supported; -} VkSurfaceCapabilitiesPresentId2KHR; + VkBool32 shaderEarlyAndLateFragmentTests; +} VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD;
-typedef struct VkSurfaceCapabilitiesPresentWait2KHR +typedef struct VkPhysicalDeviceShaderExpectAssumeFeatures { VkStructureType sType; void *pNext; - VkBool32 presentWait2Supported; -} VkSurfaceCapabilitiesPresentWait2KHR; + VkBool32 shaderExpectAssume; +} VkPhysicalDeviceShaderExpectAssumeFeatures; +typedef VkPhysicalDeviceShaderExpectAssumeFeatures VkPhysicalDeviceShaderExpectAssumeFeaturesKHR;
-typedef struct VkSurfaceFormatKHR +typedef struct VkPhysicalDeviceShaderFloat16Int8Features { - VkFormat format; - VkColorSpaceKHR colorSpace; -} VkSurfaceFormatKHR; + VkStructureType sType; + void *pNext; + VkBool32 shaderFloat16; + VkBool32 shaderInt8; +} VkPhysicalDeviceShaderFloat16Int8Features; +typedef VkPhysicalDeviceShaderFloat16Int8Features VkPhysicalDeviceShaderFloat16Int8FeaturesKHR; +typedef VkPhysicalDeviceShaderFloat16Int8Features VkPhysicalDeviceFloat16Int8FeaturesKHR;
-typedef struct VkSurfacePresentModeCompatibilityKHR +typedef struct VkPhysicalDeviceShaderFloat8FeaturesEXT { VkStructureType sType; void *pNext; - uint32_t presentModeCount; - VkPresentModeKHR *pPresentModes; -} VkSurfacePresentModeCompatibilityKHR; -typedef VkSurfacePresentModeCompatibilityKHR VkSurfacePresentModeCompatibilityEXT; + VkBool32 shaderFloat8; + VkBool32 shaderFloat8CooperativeMatrix; +} VkPhysicalDeviceShaderFloat8FeaturesEXT;
-typedef struct VkSurfacePresentModeKHR +typedef struct VkPhysicalDeviceShaderFloatControls2Features { VkStructureType sType; void *pNext; - VkPresentModeKHR presentMode; -} VkSurfacePresentModeKHR; -typedef VkSurfacePresentModeKHR VkSurfacePresentModeEXT; + VkBool32 shaderFloatControls2; +} VkPhysicalDeviceShaderFloatControls2Features; +typedef VkPhysicalDeviceShaderFloatControls2Features VkPhysicalDeviceShaderFloatControls2FeaturesKHR;
-typedef struct VkSurfacePresentScalingCapabilitiesKHR +typedef struct VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT { VkStructureType sType; void *pNext; - VkPresentScalingFlagsKHR supportedPresentScaling; - VkPresentGravityFlagsKHR supportedPresentGravityX; - VkPresentGravityFlagsKHR supportedPresentGravityY; - VkExtent2D minScaledImageExtent; - VkExtent2D maxScaledImageExtent; -} VkSurfacePresentScalingCapabilitiesKHR; -typedef VkSurfacePresentScalingCapabilitiesKHR VkSurfacePresentScalingCapabilitiesEXT; + VkBool32 shaderImageInt64Atomics; + VkBool32 sparseImageInt64Atomics; +} VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT;
-typedef struct VkSwapchainCreateInfoKHR +typedef struct VkPhysicalDeviceShaderImageFootprintFeaturesNV { VkStructureType sType; - const void *pNext; - VkSwapchainCreateFlagsKHR flags; - VkSurfaceKHR WINE_VK_ALIGN(8) surface; - uint32_t minImageCount; - VkFormat imageFormat; - VkColorSpaceKHR imageColorSpace; - VkExtent2D imageExtent; - uint32_t imageArrayLayers; - VkImageUsageFlags imageUsage; - VkSharingMode imageSharingMode; - uint32_t queueFamilyIndexCount; - const uint32_t *pQueueFamilyIndices; - VkSurfaceTransformFlagBitsKHR preTransform; - VkCompositeAlphaFlagBitsKHR compositeAlpha; - VkPresentModeKHR presentMode; - VkBool32 clipped; - VkSwapchainKHR WINE_VK_ALIGN(8) oldSwapchain; -} VkSwapchainCreateInfoKHR; + void *pNext; + VkBool32 imageFootprint; +} VkPhysicalDeviceShaderImageFootprintFeaturesNV;
-typedef struct VkSwapchainLatencyCreateInfoNV +typedef struct VkPhysicalDeviceShaderIntegerDotProductFeatures { VkStructureType sType; - const void *pNext; - VkBool32 latencyModeEnable; -} VkSwapchainLatencyCreateInfoNV; + void *pNext; + VkBool32 shaderIntegerDotProduct; +} VkPhysicalDeviceShaderIntegerDotProductFeatures; +typedef VkPhysicalDeviceShaderIntegerDotProductFeatures VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR;
-typedef struct VkSwapchainPresentBarrierCreateInfoNV +typedef struct VkPhysicalDeviceShaderIntegerDotProductProperties { VkStructureType sType; void *pNext; - VkBool32 presentBarrierEnable; -} VkSwapchainPresentBarrierCreateInfoNV; + VkBool32 integerDotProduct8BitUnsignedAccelerated; + VkBool32 integerDotProduct8BitSignedAccelerated; + VkBool32 integerDotProduct8BitMixedSignednessAccelerated; + VkBool32 integerDotProduct4x8BitPackedUnsignedAccelerated; + VkBool32 integerDotProduct4x8BitPackedSignedAccelerated; + VkBool32 integerDotProduct4x8BitPackedMixedSignednessAccelerated; + VkBool32 integerDotProduct16BitUnsignedAccelerated; + VkBool32 integerDotProduct16BitSignedAccelerated; + VkBool32 integerDotProduct16BitMixedSignednessAccelerated; + VkBool32 integerDotProduct32BitUnsignedAccelerated; + VkBool32 integerDotProduct32BitSignedAccelerated; + VkBool32 integerDotProduct32BitMixedSignednessAccelerated; + VkBool32 integerDotProduct64BitUnsignedAccelerated; + VkBool32 integerDotProduct64BitSignedAccelerated; + VkBool32 integerDotProduct64BitMixedSignednessAccelerated; + VkBool32 integerDotProductAccumulatingSaturating8BitUnsignedAccelerated; + VkBool32 integerDotProductAccumulatingSaturating8BitSignedAccelerated; + VkBool32 integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated; + VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated; + VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated; + VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated; + VkBool32 integerDotProductAccumulatingSaturating16BitUnsignedAccelerated; + VkBool32 integerDotProductAccumulatingSaturating16BitSignedAccelerated; + VkBool32 integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated; + VkBool32 integerDotProductAccumulatingSaturating32BitUnsignedAccelerated; + VkBool32 integerDotProductAccumulatingSaturating32BitSignedAccelerated; + VkBool32 integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated; + VkBool32 integerDotProductAccumulatingSaturating64BitUnsignedAccelerated; + VkBool32 integerDotProductAccumulatingSaturating64BitSignedAccelerated; + VkBool32 integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated; +} VkPhysicalDeviceShaderIntegerDotProductProperties; +typedef VkPhysicalDeviceShaderIntegerDotProductProperties VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR;
-typedef struct VkSwapchainPresentFenceInfoKHR +typedef struct VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL { VkStructureType sType; - const void *pNext; - uint32_t swapchainCount; - const VkFence *pFences; -} VkSwapchainPresentFenceInfoKHR; -typedef VkSwapchainPresentFenceInfoKHR VkSwapchainPresentFenceInfoEXT; + void *pNext; + VkBool32 shaderIntegerFunctions2; +} VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL;
-typedef struct VkSwapchainPresentModeInfoKHR +typedef struct VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR { VkStructureType sType; - const void *pNext; - uint32_t swapchainCount; - const VkPresentModeKHR *pPresentModes; -} VkSwapchainPresentModeInfoKHR; -typedef VkSwapchainPresentModeInfoKHR VkSwapchainPresentModeInfoEXT; + void *pNext; + VkBool32 shaderMaximalReconvergence; +} VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR;
-typedef struct VkSwapchainPresentModesCreateInfoKHR +typedef struct VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT { VkStructureType sType; - const void *pNext; - uint32_t presentModeCount; - const VkPresentModeKHR *pPresentModes; -} VkSwapchainPresentModesCreateInfoKHR; -typedef VkSwapchainPresentModesCreateInfoKHR VkSwapchainPresentModesCreateInfoEXT; + void *pNext; + VkBool32 shaderModuleIdentifier; +} VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT;
-typedef struct VkSwapchainPresentScalingCreateInfoKHR +typedef struct VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT { VkStructureType sType; - const void *pNext; - VkPresentScalingFlagsKHR scalingBehavior; - VkPresentGravityFlagsKHR presentGravityX; - VkPresentGravityFlagsKHR presentGravityY; -} VkSwapchainPresentScalingCreateInfoKHR; -typedef VkSwapchainPresentScalingCreateInfoKHR VkSwapchainPresentScalingCreateInfoEXT; + void *pNext; + uint8_t shaderModuleIdentifierAlgorithmUUID[VK_UUID_SIZE]; +} VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT;
-typedef struct VkTensorCaptureDescriptorDataInfoARM +typedef struct VkPhysicalDeviceShaderObjectFeaturesEXT { VkStructureType sType; - const void *pNext; - VkTensorARM WINE_VK_ALIGN(8) tensor; -} VkTensorCaptureDescriptorDataInfoARM; + void *pNext; + VkBool32 shaderObject; +} VkPhysicalDeviceShaderObjectFeaturesEXT;
-typedef struct VkTensorCopyARM +typedef struct VkPhysicalDeviceShaderObjectPropertiesEXT { VkStructureType sType; - const void *pNext; - uint32_t dimensionCount; - const uint64_t *pSrcOffset; - const uint64_t *pDstOffset; - const uint64_t *pExtent; -} VkTensorCopyARM; + void *pNext; + uint8_t shaderBinaryUUID[VK_UUID_SIZE]; + uint32_t shaderBinaryVersion; +} VkPhysicalDeviceShaderObjectPropertiesEXT;
-typedef struct VkTensorDescriptionARM +typedef struct VkPhysicalDeviceShaderQuadControlFeaturesKHR { VkStructureType sType; - const void *pNext; - VkTensorTilingARM tiling; - VkFormat format; - uint32_t dimensionCount; - const int64_t *pDimensions; - const int64_t *pStrides; - VkTensorUsageFlagsARM WINE_VK_ALIGN(8) usage; -} VkTensorDescriptionARM; + void *pNext; + VkBool32 shaderQuadControl; +} VkPhysicalDeviceShaderQuadControlFeaturesKHR;
-typedef struct VkTensorFormatPropertiesARM +typedef struct VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR { VkStructureType sType; - const void *pNext; - VkFormatFeatureFlags2 WINE_VK_ALIGN(8) optimalTilingTensorFeatures; - VkFormatFeatureFlags2 WINE_VK_ALIGN(8) linearTilingTensorFeatures; -} VkTensorFormatPropertiesARM; + void *pNext; + VkBool32 shaderRelaxedExtendedInstruction; +} VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR;
-typedef struct VkTensorMemoryBarrierARM +typedef struct VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT { VkStructureType sType; - const void *pNext; - VkPipelineStageFlags2 WINE_VK_ALIGN(8) srcStageMask; - VkAccessFlags2 WINE_VK_ALIGN(8) srcAccessMask; - VkPipelineStageFlags2 WINE_VK_ALIGN(8) dstStageMask; - VkAccessFlags2 WINE_VK_ALIGN(8) dstAccessMask; - uint32_t srcQueueFamilyIndex; - uint32_t dstQueueFamilyIndex; - VkTensorARM WINE_VK_ALIGN(8) tensor; -} VkTensorMemoryBarrierARM; + void *pNext; + VkBool32 shaderReplicatedComposites; +} VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT;
-typedef struct VkTensorMemoryRequirementsInfoARM +typedef struct VkPhysicalDeviceShaderSMBuiltinsFeaturesNV { VkStructureType sType; - const void *pNext; - VkTensorARM WINE_VK_ALIGN(8) tensor; -} VkTensorMemoryRequirementsInfoARM; + void *pNext; + VkBool32 shaderSMBuiltins; +} VkPhysicalDeviceShaderSMBuiltinsFeaturesNV;
-typedef struct VkTensorViewCaptureDescriptorDataInfoARM +typedef struct VkPhysicalDeviceShaderSMBuiltinsPropertiesNV { VkStructureType sType; - const void *pNext; - VkTensorViewARM WINE_VK_ALIGN(8) tensorView; -} VkTensorViewCaptureDescriptorDataInfoARM; + void *pNext; + uint32_t shaderSMCount; + uint32_t shaderWarpsPerSM; +} VkPhysicalDeviceShaderSMBuiltinsPropertiesNV;
-typedef struct VkTensorViewCreateInfoARM +typedef struct VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures { VkStructureType sType; - const void *pNext; - VkTensorViewCreateFlagsARM WINE_VK_ALIGN(8) flags; - VkTensorARM WINE_VK_ALIGN(8) tensor; - VkFormat format; -} VkTensorViewCreateInfoARM; + void *pNext; + VkBool32 shaderSubgroupExtendedTypes; +} VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures; +typedef VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures VkPhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR;
-typedef struct VkTextureLODGatherFormatPropertiesAMD +typedef struct VkPhysicalDeviceShaderSubgroupRotateFeatures { VkStructureType sType; void *pNext; - VkBool32 supportsTextureGatherLODBiasAMD; -} VkTextureLODGatherFormatPropertiesAMD; + VkBool32 shaderSubgroupRotate; + VkBool32 shaderSubgroupRotateClustered; +} VkPhysicalDeviceShaderSubgroupRotateFeatures; +typedef VkPhysicalDeviceShaderSubgroupRotateFeatures VkPhysicalDeviceShaderSubgroupRotateFeaturesKHR;
-typedef struct VkTileMemoryBindInfoQCOM +typedef struct VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR { VkStructureType sType; - const void *pNext; - VkDeviceMemory WINE_VK_ALIGN(8) memory; -} VkTileMemoryBindInfoQCOM; + void *pNext; + VkBool32 shaderSubgroupUniformControlFlow; +} VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR;
-typedef struct VkTileMemoryRequirementsQCOM +typedef struct VkPhysicalDeviceShaderTerminateInvocationFeatures { VkStructureType sType; void *pNext; - VkDeviceSize WINE_VK_ALIGN(8) size; - VkDeviceSize WINE_VK_ALIGN(8) alignment; -} VkTileMemoryRequirementsQCOM; + VkBool32 shaderTerminateInvocation; +} VkPhysicalDeviceShaderTerminateInvocationFeatures; +typedef VkPhysicalDeviceShaderTerminateInvocationFeatures VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR;
-typedef struct VkTileMemorySizeInfoQCOM +typedef struct VkPhysicalDeviceShaderTileImageFeaturesEXT { VkStructureType sType; - const void *pNext; - VkDeviceSize WINE_VK_ALIGN(8) size; -} VkTileMemorySizeInfoQCOM; + void *pNext; + VkBool32 shaderTileImageColorReadAccess; + VkBool32 shaderTileImageDepthReadAccess; + VkBool32 shaderTileImageStencilReadAccess; +} VkPhysicalDeviceShaderTileImageFeaturesEXT;
-typedef struct VkTilePropertiesQCOM +typedef struct VkPhysicalDeviceShaderTileImagePropertiesEXT { VkStructureType sType; void *pNext; - VkExtent3D tileSize; - VkExtent2D apronSize; - VkOffset2D origin; -} VkTilePropertiesQCOM; + VkBool32 shaderTileImageCoherentReadAccelerated; + VkBool32 shaderTileImageReadSampleFromPixelRateInvocation; + VkBool32 shaderTileImageReadFromHelperInvocation; +} VkPhysicalDeviceShaderTileImagePropertiesEXT;
-typedef struct VkTimelineSemaphoreSubmitInfo +typedef struct VkPhysicalDeviceShaderUntypedPointersFeaturesKHR { VkStructureType sType; - const void *pNext; - uint32_t waitSemaphoreValueCount; - const uint64_t *pWaitSemaphoreValues; - uint32_t signalSemaphoreValueCount; - const uint64_t *pSignalSemaphoreValues; -} VkTimelineSemaphoreSubmitInfo; -typedef VkTimelineSemaphoreSubmitInfo VkTimelineSemaphoreSubmitInfoKHR; - -typedef struct VkTraceRaysIndirectCommand2KHR -{ - VkDeviceAddress WINE_VK_ALIGN(8) raygenShaderRecordAddress; - VkDeviceSize WINE_VK_ALIGN(8) raygenShaderRecordSize; - VkDeviceAddress WINE_VK_ALIGN(8) missShaderBindingTableAddress; - VkDeviceSize WINE_VK_ALIGN(8) missShaderBindingTableSize; - VkDeviceSize WINE_VK_ALIGN(8) missShaderBindingTableStride; - VkDeviceAddress WINE_VK_ALIGN(8) hitShaderBindingTableAddress; - VkDeviceSize WINE_VK_ALIGN(8) hitShaderBindingTableSize; - VkDeviceSize WINE_VK_ALIGN(8) hitShaderBindingTableStride; - VkDeviceAddress WINE_VK_ALIGN(8) callableShaderBindingTableAddress; - VkDeviceSize WINE_VK_ALIGN(8) callableShaderBindingTableSize; - VkDeviceSize WINE_VK_ALIGN(8) callableShaderBindingTableStride; - uint32_t width; - uint32_t height; - uint32_t depth; -} VkTraceRaysIndirectCommand2KHR; - -typedef struct VkTraceRaysIndirectCommandKHR -{ - uint32_t width; - uint32_t height; - uint32_t depth; -} VkTraceRaysIndirectCommandKHR; - -typedef struct VkTransformMatrixKHR -{ - float matrix[3][4]; -} VkTransformMatrixKHR; -typedef VkTransformMatrixKHR VkTransformMatrixNV; + void *pNext; + VkBool32 shaderUntypedPointers; +} VkPhysicalDeviceShaderUntypedPointersFeaturesKHR;
-typedef struct VkValidationCacheCreateInfoEXT +typedef struct VkPhysicalDeviceShadingRateImageFeaturesNV { VkStructureType sType; - const void *pNext; - VkValidationCacheCreateFlagsEXT flags; - size_t initialDataSize; - const void *pInitialData; -} VkValidationCacheCreateInfoEXT; + void *pNext; + VkBool32 shadingRateImage; + VkBool32 shadingRateCoarseSampleOrder; +} VkPhysicalDeviceShadingRateImageFeaturesNV;
-typedef struct VkValidationFeaturesEXT +typedef struct VkPhysicalDeviceShadingRateImagePropertiesNV { VkStructureType sType; - const void *pNext; - uint32_t enabledValidationFeatureCount; - const VkValidationFeatureEnableEXT *pEnabledValidationFeatures; - uint32_t disabledValidationFeatureCount; - const VkValidationFeatureDisableEXT *pDisabledValidationFeatures; -} VkValidationFeaturesEXT; + void *pNext; + VkExtent2D shadingRateTexelSize; + uint32_t shadingRatePaletteSize; + uint32_t shadingRateMaxCoarseSamples; +} VkPhysicalDeviceShadingRateImagePropertiesNV;
-typedef struct VkValidationFlagsEXT +typedef struct VkPhysicalDeviceSparseImageFormatInfo2 { VkStructureType sType; const void *pNext; - uint32_t disabledValidationCheckCount; - const VkValidationCheckEXT *pDisabledValidationChecks; -} VkValidationFlagsEXT; + VkFormat format; + VkImageType type; + VkSampleCountFlagBits samples; + VkImageUsageFlags usage; + VkImageTiling tiling; +} VkPhysicalDeviceSparseImageFormatInfo2; +typedef VkPhysicalDeviceSparseImageFormatInfo2 VkPhysicalDeviceSparseImageFormatInfo2KHR;
-typedef struct VkVertexInputAttributeDescription +typedef struct VkPhysicalDeviceSubgroupProperties { - uint32_t location; - uint32_t binding; - VkFormat format; - uint32_t offset; -} VkVertexInputAttributeDescription; + VkStructureType sType; + void *pNext; + uint32_t subgroupSize; + VkShaderStageFlags supportedStages; + VkSubgroupFeatureFlags supportedOperations; + VkBool32 quadOperationsInAllStages; +} VkPhysicalDeviceSubgroupProperties;
-typedef struct VkVertexInputAttributeDescription2EXT +typedef struct VkPhysicalDeviceSubgroupSizeControlFeatures { VkStructureType sType; void *pNext; - uint32_t location; - uint32_t binding; - VkFormat format; - uint32_t offset; -} VkVertexInputAttributeDescription2EXT; + VkBool32 subgroupSizeControl; + VkBool32 computeFullSubgroups; +} VkPhysicalDeviceSubgroupSizeControlFeatures; +typedef VkPhysicalDeviceSubgroupSizeControlFeatures VkPhysicalDeviceSubgroupSizeControlFeaturesEXT;
-typedef struct VkVertexInputBindingDescription +typedef struct VkPhysicalDeviceSubgroupSizeControlProperties { - uint32_t binding; - uint32_t stride; - VkVertexInputRate inputRate; -} VkVertexInputBindingDescription; + VkStructureType sType; + void *pNext; + uint32_t minSubgroupSize; + uint32_t maxSubgroupSize; + uint32_t maxComputeWorkgroupSubgroups; + VkShaderStageFlags requiredSubgroupSizeStages; +} VkPhysicalDeviceSubgroupSizeControlProperties; +typedef VkPhysicalDeviceSubgroupSizeControlProperties VkPhysicalDeviceSubgroupSizeControlPropertiesEXT;
-typedef struct VkVertexInputBindingDescription2EXT +typedef struct VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT { VkStructureType sType; void *pNext; - uint32_t binding; - uint32_t stride; - VkVertexInputRate inputRate; - uint32_t divisor; -} VkVertexInputBindingDescription2EXT; + VkBool32 subpassMergeFeedback; +} VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT;
-typedef struct VkVertexInputBindingDivisorDescription +typedef struct VkPhysicalDeviceSubpassShadingFeaturesHUAWEI { - uint32_t binding; - uint32_t divisor; -} VkVertexInputBindingDivisorDescription; -typedef VkVertexInputBindingDivisorDescription VkVertexInputBindingDivisorDescriptionKHR; -typedef VkVertexInputBindingDivisorDescription VkVertexInputBindingDivisorDescriptionEXT; + VkStructureType sType; + void *pNext; + VkBool32 subpassShading; +} VkPhysicalDeviceSubpassShadingFeaturesHUAWEI;
-typedef struct VkVideoCapabilitiesKHR +typedef struct VkPhysicalDeviceSubpassShadingPropertiesHUAWEI { VkStructureType sType; void *pNext; - VkVideoCapabilityFlagsKHR flags; - VkDeviceSize WINE_VK_ALIGN(8) minBitstreamBufferOffsetAlignment; - VkDeviceSize WINE_VK_ALIGN(8) minBitstreamBufferSizeAlignment; - VkExtent2D pictureAccessGranularity; - VkExtent2D minCodedExtent; - VkExtent2D maxCodedExtent; - uint32_t maxDpbSlots; - uint32_t maxActiveReferencePictures; - VkExtensionProperties stdHeaderVersion; -} VkVideoCapabilitiesKHR; + uint32_t maxSubpassShadingWorkgroupSizeAspectRatio; +} VkPhysicalDeviceSubpassShadingPropertiesHUAWEI;
-typedef struct VkVideoCodingControlInfoKHR +typedef struct VkPhysicalDeviceSurfaceInfo2KHR { VkStructureType sType; const void *pNext; - VkVideoCodingControlFlagsKHR flags; -} VkVideoCodingControlInfoKHR; + VkSurfaceKHR WINE_VK_ALIGN(8) surface; +} VkPhysicalDeviceSurfaceInfo2KHR;
-typedef struct VkVideoDecodeAV1CapabilitiesKHR +typedef struct VkPhysicalDeviceSwapchainMaintenance1FeaturesKHR { VkStructureType sType; void *pNext; - StdVideoAV1Level maxLevel; -} VkVideoDecodeAV1CapabilitiesKHR; + VkBool32 swapchainMaintenance1; +} VkPhysicalDeviceSwapchainMaintenance1FeaturesKHR; +typedef VkPhysicalDeviceSwapchainMaintenance1FeaturesKHR VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT;
-typedef struct VkVideoDecodeAV1ProfileInfoKHR +typedef struct VkPhysicalDeviceSynchronization2Features { VkStructureType sType; - const void *pNext; - StdVideoAV1Profile stdProfile; - VkBool32 filmGrainSupport; -} VkVideoDecodeAV1ProfileInfoKHR; + void *pNext; + VkBool32 synchronization2; +} VkPhysicalDeviceSynchronization2Features; +typedef VkPhysicalDeviceSynchronization2Features VkPhysicalDeviceSynchronization2FeaturesKHR;
-typedef struct VkVideoDecodeCapabilitiesKHR +typedef struct VkPhysicalDeviceTensorFeaturesARM { VkStructureType sType; void *pNext; - VkVideoDecodeCapabilityFlagsKHR flags; -} VkVideoDecodeCapabilitiesKHR; + VkBool32 tensorNonPacked; + VkBool32 shaderTensorAccess; + VkBool32 shaderStorageTensorArrayDynamicIndexing; + VkBool32 shaderStorageTensorArrayNonUniformIndexing; + VkBool32 descriptorBindingStorageTensorUpdateAfterBind; + VkBool32 tensors; +} VkPhysicalDeviceTensorFeaturesARM;
-typedef struct VkVideoDecodeH264CapabilitiesKHR +typedef struct VkPhysicalDeviceTensorPropertiesARM { VkStructureType sType; void *pNext; - StdVideoH264LevelIdc maxLevelIdc; - VkOffset2D fieldOffsetGranularity; -} VkVideoDecodeH264CapabilitiesKHR; + uint32_t maxTensorDimensionCount; + uint64_t WINE_VK_ALIGN(8) maxTensorElements; + uint64_t WINE_VK_ALIGN(8) maxPerDimensionTensorElements; + int64_t maxTensorStride; + uint64_t WINE_VK_ALIGN(8) maxTensorSize; + uint32_t maxTensorShaderAccessArrayLength; + uint32_t maxTensorShaderAccessSize; + uint32_t maxDescriptorSetStorageTensors; + uint32_t maxPerStageDescriptorSetStorageTensors; + uint32_t maxDescriptorSetUpdateAfterBindStorageTensors; + uint32_t maxPerStageDescriptorUpdateAfterBindStorageTensors; + VkBool32 shaderStorageTensorArrayNonUniformIndexingNative; + VkShaderStageFlags shaderTensorSupportedStages; +} VkPhysicalDeviceTensorPropertiesARM;
-typedef struct VkVideoDecodeH264ProfileInfoKHR +typedef struct VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT { VkStructureType sType; - const void *pNext; - StdVideoH264ProfileIdc stdProfileIdc; - VkVideoDecodeH264PictureLayoutFlagBitsKHR pictureLayout; -} VkVideoDecodeH264ProfileInfoKHR; + void *pNext; + VkBool32 texelBufferAlignment; +} VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT;
-typedef struct VkVideoDecodeUsageInfoKHR +typedef struct VkPhysicalDeviceTexelBufferAlignmentProperties { VkStructureType sType; - const void *pNext; - VkVideoDecodeUsageFlagsKHR videoUsageHints; -} VkVideoDecodeUsageInfoKHR; + void *pNext; + VkDeviceSize WINE_VK_ALIGN(8) storageTexelBufferOffsetAlignmentBytes; + VkBool32 storageTexelBufferOffsetSingleTexelAlignment; + VkDeviceSize WINE_VK_ALIGN(8) uniformTexelBufferOffsetAlignmentBytes; + VkBool32 uniformTexelBufferOffsetSingleTexelAlignment; +} VkPhysicalDeviceTexelBufferAlignmentProperties; +typedef VkPhysicalDeviceTexelBufferAlignmentProperties VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT;
-typedef struct VkVideoDecodeVP9CapabilitiesKHR +typedef struct VkPhysicalDeviceTextureCompressionASTCHDRFeatures { VkStructureType sType; void *pNext; - StdVideoVP9Level maxLevel; -} VkVideoDecodeVP9CapabilitiesKHR; + VkBool32 textureCompressionASTC_HDR; +} VkPhysicalDeviceTextureCompressionASTCHDRFeatures; +typedef VkPhysicalDeviceTextureCompressionASTCHDRFeatures VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT;
-typedef struct VkVideoDecodeVP9ProfileInfoKHR +typedef struct VkPhysicalDeviceTileMemoryHeapFeaturesQCOM { VkStructureType sType; - const void *pNext; - StdVideoVP9Profile stdProfile; -} VkVideoDecodeVP9ProfileInfoKHR; + void *pNext; + VkBool32 tileMemoryHeap; +} VkPhysicalDeviceTileMemoryHeapFeaturesQCOM;
-typedef struct VkVideoEncodeAV1CapabilitiesKHR +typedef struct VkPhysicalDeviceTileMemoryHeapPropertiesQCOM { VkStructureType sType; void *pNext; - VkVideoEncodeAV1CapabilityFlagsKHR flags; - StdVideoAV1Level maxLevel; - VkExtent2D codedPictureAlignment; - VkExtent2D maxTiles; - VkExtent2D minTileSize; - VkExtent2D maxTileSize; - VkVideoEncodeAV1SuperblockSizeFlagsKHR superblockSizes; - uint32_t maxSingleReferenceCount; - uint32_t singleReferenceNameMask; - uint32_t maxUnidirectionalCompoundReferenceCount; - uint32_t maxUnidirectionalCompoundGroup1ReferenceCount; - uint32_t unidirectionalCompoundReferenceNameMask; - uint32_t maxBidirectionalCompoundReferenceCount; - uint32_t maxBidirectionalCompoundGroup1ReferenceCount; - uint32_t maxBidirectionalCompoundGroup2ReferenceCount; - uint32_t bidirectionalCompoundReferenceNameMask; - uint32_t maxTemporalLayerCount; - uint32_t maxSpatialLayerCount; - uint32_t maxOperatingPoints; - uint32_t minQIndex; - uint32_t maxQIndex; - VkBool32 prefersGopRemainingFrames; - VkBool32 requiresGopRemainingFrames; - VkVideoEncodeAV1StdFlagsKHR stdSyntaxFlags; -} VkVideoEncodeAV1CapabilitiesKHR; + VkBool32 queueSubmitBoundary; + VkBool32 tileBufferTransfers; +} VkPhysicalDeviceTileMemoryHeapPropertiesQCOM;
-typedef struct VkVideoEncodeAV1FrameSizeKHR +typedef struct VkPhysicalDeviceTilePropertiesFeaturesQCOM { - uint32_t intraFrameSize; - uint32_t predictiveFrameSize; - uint32_t bipredictiveFrameSize; -} VkVideoEncodeAV1FrameSizeKHR; + VkStructureType sType; + void *pNext; + VkBool32 tileProperties; +} VkPhysicalDeviceTilePropertiesFeaturesQCOM;
-typedef struct VkVideoEncodeAV1GopRemainingFrameInfoKHR +typedef struct VkPhysicalDeviceTileShadingFeaturesQCOM { VkStructureType sType; - const void *pNext; - VkBool32 useGopRemainingFrames; - uint32_t gopRemainingIntra; - uint32_t gopRemainingPredictive; - uint32_t gopRemainingBipredictive; -} VkVideoEncodeAV1GopRemainingFrameInfoKHR; + void *pNext; + VkBool32 tileShading; + VkBool32 tileShadingFragmentStage; + VkBool32 tileShadingColorAttachments; + VkBool32 tileShadingDepthAttachments; + VkBool32 tileShadingStencilAttachments; + VkBool32 tileShadingInputAttachments; + VkBool32 tileShadingSampledAttachments; + VkBool32 tileShadingPerTileDraw; + VkBool32 tileShadingPerTileDispatch; + VkBool32 tileShadingDispatchTile; + VkBool32 tileShadingApron; + VkBool32 tileShadingAnisotropicApron; + VkBool32 tileShadingAtomicOps; + VkBool32 tileShadingImageProcessing; +} VkPhysicalDeviceTileShadingFeaturesQCOM;
-typedef struct VkVideoEncodeAV1ProfileInfoKHR +typedef struct VkPhysicalDeviceTileShadingPropertiesQCOM { VkStructureType sType; - const void *pNext; - StdVideoAV1Profile stdProfile; -} VkVideoEncodeAV1ProfileInfoKHR; + void *pNext; + uint32_t maxApronSize; + VkBool32 preferNonCoherent; + VkExtent2D tileGranularity; + VkExtent2D maxTileShadingRate; +} VkPhysicalDeviceTileShadingPropertiesQCOM;
-typedef struct VkVideoEncodeAV1QIndexKHR +typedef struct VkPhysicalDeviceTimelineSemaphoreFeatures { - uint32_t intraQIndex; - uint32_t predictiveQIndex; - uint32_t bipredictiveQIndex; -} VkVideoEncodeAV1QIndexKHR; + VkStructureType sType; + void *pNext; + VkBool32 timelineSemaphore; +} VkPhysicalDeviceTimelineSemaphoreFeatures; +typedef VkPhysicalDeviceTimelineSemaphoreFeatures VkPhysicalDeviceTimelineSemaphoreFeaturesKHR;
-typedef struct VkVideoEncodeAV1QualityLevelPropertiesKHR +typedef struct VkPhysicalDeviceTimelineSemaphoreProperties { VkStructureType sType; void *pNext; - VkVideoEncodeAV1RateControlFlagsKHR preferredRateControlFlags; - uint32_t preferredGopFrameCount; - uint32_t preferredKeyFramePeriod; - uint32_t preferredConsecutiveBipredictiveFrameCount; - uint32_t preferredTemporalLayerCount; - VkVideoEncodeAV1QIndexKHR preferredConstantQIndex; - uint32_t preferredMaxSingleReferenceCount; - uint32_t preferredSingleReferenceNameMask; - uint32_t preferredMaxUnidirectionalCompoundReferenceCount; - uint32_t preferredMaxUnidirectionalCompoundGroup1ReferenceCount; - uint32_t preferredUnidirectionalCompoundReferenceNameMask; - uint32_t preferredMaxBidirectionalCompoundReferenceCount; - uint32_t preferredMaxBidirectionalCompoundGroup1ReferenceCount; - uint32_t preferredMaxBidirectionalCompoundGroup2ReferenceCount; - uint32_t preferredBidirectionalCompoundReferenceNameMask; -} VkVideoEncodeAV1QualityLevelPropertiesKHR; + uint64_t WINE_VK_ALIGN(8) maxTimelineSemaphoreValueDifference; +} VkPhysicalDeviceTimelineSemaphoreProperties; +typedef VkPhysicalDeviceTimelineSemaphoreProperties VkPhysicalDeviceTimelineSemaphorePropertiesKHR;
-typedef struct VkVideoEncodeAV1QuantizationMapCapabilitiesKHR +typedef struct VkPhysicalDeviceToolProperties { VkStructureType sType; void *pNext; - int32_t minQIndexDelta; - int32_t maxQIndexDelta; -} VkVideoEncodeAV1QuantizationMapCapabilitiesKHR; + char name[VK_MAX_EXTENSION_NAME_SIZE]; + char version[VK_MAX_EXTENSION_NAME_SIZE]; + VkToolPurposeFlags purposes; + char description[VK_MAX_DESCRIPTION_SIZE]; + char layer[VK_MAX_EXTENSION_NAME_SIZE]; +} VkPhysicalDeviceToolProperties; +typedef VkPhysicalDeviceToolProperties VkPhysicalDeviceToolPropertiesEXT;
-typedef struct VkVideoEncodeAV1RateControlInfoKHR +typedef struct VkPhysicalDeviceTransformFeedbackFeaturesEXT { VkStructureType sType; - const void *pNext; - VkVideoEncodeAV1RateControlFlagsKHR flags; - uint32_t gopFrameCount; - uint32_t keyFramePeriod; - uint32_t consecutiveBipredictiveFrameCount; - uint32_t temporalLayerCount; -} VkVideoEncodeAV1RateControlInfoKHR; + void *pNext; + VkBool32 transformFeedback; + VkBool32 geometryStreams; +} VkPhysicalDeviceTransformFeedbackFeaturesEXT;
-typedef struct VkVideoEncodeAV1RateControlLayerInfoKHR +typedef struct VkPhysicalDeviceTransformFeedbackPropertiesEXT +{ + VkStructureType sType; + void *pNext; + uint32_t maxTransformFeedbackStreams; + uint32_t maxTransformFeedbackBuffers; + VkDeviceSize WINE_VK_ALIGN(8) maxTransformFeedbackBufferSize; + uint32_t maxTransformFeedbackStreamDataSize; + uint32_t maxTransformFeedbackBufferDataSize; + uint32_t maxTransformFeedbackBufferDataStride; + VkBool32 transformFeedbackQueries; + VkBool32 transformFeedbackStreamsLinesTriangles; + VkBool32 transformFeedbackRasterizationStreamSelect; + VkBool32 transformFeedbackDraw; +} VkPhysicalDeviceTransformFeedbackPropertiesEXT; + +typedef struct VkPhysicalDeviceUnifiedImageLayoutsFeaturesKHR +{ + VkStructureType sType; + void *pNext; + VkBool32 unifiedImageLayouts; + VkBool32 unifiedImageLayoutsVideo; +} VkPhysicalDeviceUnifiedImageLayoutsFeaturesKHR; + +typedef struct VkPhysicalDeviceUniformBufferStandardLayoutFeatures +{ + VkStructureType sType; + void *pNext; + VkBool32 uniformBufferStandardLayout; +} VkPhysicalDeviceUniformBufferStandardLayoutFeatures; +typedef VkPhysicalDeviceUniformBufferStandardLayoutFeatures VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR; + + +typedef struct VkPhysicalDeviceVariablePointersFeatures +{ + VkStructureType sType; + void *pNext; + VkBool32 variablePointersStorageBuffer; + VkBool32 variablePointers; +} VkPhysicalDeviceVariablePointersFeatures; +typedef VkPhysicalDeviceVariablePointersFeatures VkPhysicalDeviceVariablePointersFeaturesKHR; +typedef VkPhysicalDeviceVariablePointersFeatures VkPhysicalDeviceVariablePointerFeaturesKHR; +typedef VkPhysicalDeviceVariablePointersFeatures VkPhysicalDeviceVariablePointerFeatures; + +typedef struct VkPhysicalDeviceVertexAttributeDivisorFeatures +{ + VkStructureType sType; + void *pNext; + VkBool32 vertexAttributeInstanceRateDivisor; + VkBool32 vertexAttributeInstanceRateZeroDivisor; +} VkPhysicalDeviceVertexAttributeDivisorFeatures; +typedef VkPhysicalDeviceVertexAttributeDivisorFeatures VkPhysicalDeviceVertexAttributeDivisorFeaturesKHR; +typedef VkPhysicalDeviceVertexAttributeDivisorFeatures VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT; + +typedef struct VkPhysicalDeviceVertexAttributeDivisorProperties +{ + VkStructureType sType; + void *pNext; + uint32_t maxVertexAttribDivisor; + VkBool32 supportsNonZeroFirstInstance; +} VkPhysicalDeviceVertexAttributeDivisorProperties; +typedef VkPhysicalDeviceVertexAttributeDivisorProperties VkPhysicalDeviceVertexAttributeDivisorPropertiesKHR; + +typedef struct VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT +{ + VkStructureType sType; + void *pNext; + uint32_t maxVertexAttribDivisor; +} VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT; + +typedef struct VkPhysicalDeviceVertexAttributeRobustnessFeaturesEXT +{ + VkStructureType sType; + void *pNext; + VkBool32 vertexAttributeRobustness; +} VkPhysicalDeviceVertexAttributeRobustnessFeaturesEXT; + +typedef struct VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT +{ + VkStructureType sType; + void *pNext; + VkBool32 vertexInputDynamicState; +} VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT; + +typedef struct VkPhysicalDeviceVideoDecodeVP9FeaturesKHR +{ + VkStructureType sType; + void *pNext; + VkBool32 videoDecodeVP9; +} VkPhysicalDeviceVideoDecodeVP9FeaturesKHR; + +typedef struct VkPhysicalDeviceVideoEncodeAV1FeaturesKHR +{ + VkStructureType sType; + void *pNext; + VkBool32 videoEncodeAV1; +} VkPhysicalDeviceVideoEncodeAV1FeaturesKHR; + +typedef struct VkPhysicalDeviceVideoEncodeIntraRefreshFeaturesKHR +{ + VkStructureType sType; + void *pNext; + VkBool32 videoEncodeIntraRefresh; +} VkPhysicalDeviceVideoEncodeIntraRefreshFeaturesKHR; + +typedef struct VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR { VkStructureType sType; const void *pNext; - VkBool32 useMinQIndex; - VkVideoEncodeAV1QIndexKHR minQIndex; - VkBool32 useMaxQIndex; - VkVideoEncodeAV1QIndexKHR maxQIndex; - VkBool32 useMaxFrameSize; - VkVideoEncodeAV1FrameSizeKHR maxFrameSize; -} VkVideoEncodeAV1RateControlLayerInfoKHR; + const VkVideoProfileInfoKHR *pVideoProfile; + uint32_t qualityLevel; +} VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR;
-typedef struct VkVideoEncodeAV1SessionCreateInfoKHR +typedef struct VkPhysicalDeviceVideoEncodeQuantizationMapFeaturesKHR +{ + VkStructureType sType; + void *pNext; + VkBool32 videoEncodeQuantizationMap; +} VkPhysicalDeviceVideoEncodeQuantizationMapFeaturesKHR; + +typedef struct VkPhysicalDeviceVideoFormatInfoKHR { VkStructureType sType; const void *pNext; - VkBool32 useMaxLevel; - StdVideoAV1Level maxLevel; -} VkVideoEncodeAV1SessionCreateInfoKHR; + VkImageUsageFlags imageUsage; +} VkPhysicalDeviceVideoFormatInfoKHR; + +typedef struct VkPhysicalDeviceVideoMaintenance1FeaturesKHR +{ + VkStructureType sType; + void *pNext; + VkBool32 videoMaintenance1; +} VkPhysicalDeviceVideoMaintenance1FeaturesKHR; + +typedef struct VkPhysicalDeviceVulkan11Features +{ + VkStructureType sType; + void *pNext; + VkBool32 storageBuffer16BitAccess; + VkBool32 uniformAndStorageBuffer16BitAccess; + VkBool32 storagePushConstant16; + VkBool32 storageInputOutput16; + VkBool32 multiview; + VkBool32 multiviewGeometryShader; + VkBool32 multiviewTessellationShader; + VkBool32 variablePointersStorageBuffer; + VkBool32 variablePointers; + VkBool32 protectedMemory; + VkBool32 samplerYcbcrConversion; + VkBool32 shaderDrawParameters; +} VkPhysicalDeviceVulkan11Features; + +typedef struct VkPhysicalDeviceVulkan11Properties +{ + VkStructureType sType; + void *pNext; + uint8_t deviceUUID[VK_UUID_SIZE]; + uint8_t driverUUID[VK_UUID_SIZE]; + uint8_t deviceLUID[VK_LUID_SIZE]; + uint32_t deviceNodeMask; + VkBool32 deviceLUIDValid; + uint32_t subgroupSize; + VkShaderStageFlags subgroupSupportedStages; + VkSubgroupFeatureFlags subgroupSupportedOperations; + VkBool32 subgroupQuadOperationsInAllStages; + VkPointClippingBehavior pointClippingBehavior; + uint32_t maxMultiviewViewCount; + uint32_t maxMultiviewInstanceIndex; + VkBool32 protectedNoFault; + uint32_t maxPerSetDescriptors; + VkDeviceSize WINE_VK_ALIGN(8) maxMemoryAllocationSize; +} VkPhysicalDeviceVulkan11Properties; + +typedef struct VkPhysicalDeviceVulkan12Features +{ + VkStructureType sType; + void *pNext; + VkBool32 samplerMirrorClampToEdge; + VkBool32 drawIndirectCount; + VkBool32 storageBuffer8BitAccess; + VkBool32 uniformAndStorageBuffer8BitAccess; + VkBool32 storagePushConstant8; + VkBool32 shaderBufferInt64Atomics; + VkBool32 shaderSharedInt64Atomics; + VkBool32 shaderFloat16; + VkBool32 shaderInt8; + VkBool32 descriptorIndexing; + VkBool32 shaderInputAttachmentArrayDynamicIndexing; + VkBool32 shaderUniformTexelBufferArrayDynamicIndexing; + VkBool32 shaderStorageTexelBufferArrayDynamicIndexing; + VkBool32 shaderUniformBufferArrayNonUniformIndexing; + VkBool32 shaderSampledImageArrayNonUniformIndexing; + VkBool32 shaderStorageBufferArrayNonUniformIndexing; + VkBool32 shaderStorageImageArrayNonUniformIndexing; + VkBool32 shaderInputAttachmentArrayNonUniformIndexing; + VkBool32 shaderUniformTexelBufferArrayNonUniformIndexing; + VkBool32 shaderStorageTexelBufferArrayNonUniformIndexing; + VkBool32 descriptorBindingUniformBufferUpdateAfterBind; + VkBool32 descriptorBindingSampledImageUpdateAfterBind; + VkBool32 descriptorBindingStorageImageUpdateAfterBind; + VkBool32 descriptorBindingStorageBufferUpdateAfterBind; + VkBool32 descriptorBindingUniformTexelBufferUpdateAfterBind; + VkBool32 descriptorBindingStorageTexelBufferUpdateAfterBind; + VkBool32 descriptorBindingUpdateUnusedWhilePending; + VkBool32 descriptorBindingPartiallyBound; + VkBool32 descriptorBindingVariableDescriptorCount; + VkBool32 runtimeDescriptorArray; + VkBool32 samplerFilterMinmax; + VkBool32 scalarBlockLayout; + VkBool32 imagelessFramebuffer; + VkBool32 uniformBufferStandardLayout; + VkBool32 shaderSubgroupExtendedTypes; + VkBool32 separateDepthStencilLayouts; + VkBool32 hostQueryReset; + VkBool32 timelineSemaphore; + VkBool32 bufferDeviceAddress; + VkBool32 bufferDeviceAddressCaptureReplay; + VkBool32 bufferDeviceAddressMultiDevice; + VkBool32 vulkanMemoryModel; + VkBool32 vulkanMemoryModelDeviceScope; + VkBool32 vulkanMemoryModelAvailabilityVisibilityChains; + VkBool32 shaderOutputViewportIndex; + VkBool32 shaderOutputLayer; + VkBool32 subgroupBroadcastDynamicId; +} VkPhysicalDeviceVulkan12Features; + +typedef struct VkPhysicalDeviceVulkan12Properties +{ + VkStructureType sType; + void *pNext; + VkDriverId driverID; + char driverName[VK_MAX_DRIVER_NAME_SIZE]; + char driverInfo[VK_MAX_DRIVER_INFO_SIZE]; + VkConformanceVersion conformanceVersion; + VkShaderFloatControlsIndependence denormBehaviorIndependence; + VkShaderFloatControlsIndependence roundingModeIndependence; + VkBool32 shaderSignedZeroInfNanPreserveFloat16; + VkBool32 shaderSignedZeroInfNanPreserveFloat32; + VkBool32 shaderSignedZeroInfNanPreserveFloat64; + VkBool32 shaderDenormPreserveFloat16; + VkBool32 shaderDenormPreserveFloat32; + VkBool32 shaderDenormPreserveFloat64; + VkBool32 shaderDenormFlushToZeroFloat16; + VkBool32 shaderDenormFlushToZeroFloat32; + VkBool32 shaderDenormFlushToZeroFloat64; + VkBool32 shaderRoundingModeRTEFloat16; + VkBool32 shaderRoundingModeRTEFloat32; + VkBool32 shaderRoundingModeRTEFloat64; + VkBool32 shaderRoundingModeRTZFloat16; + VkBool32 shaderRoundingModeRTZFloat32; + VkBool32 shaderRoundingModeRTZFloat64; + uint32_t maxUpdateAfterBindDescriptorsInAllPools; + VkBool32 shaderUniformBufferArrayNonUniformIndexingNative; + VkBool32 shaderSampledImageArrayNonUniformIndexingNative; + VkBool32 shaderStorageBufferArrayNonUniformIndexingNative; + VkBool32 shaderStorageImageArrayNonUniformIndexingNative; + VkBool32 shaderInputAttachmentArrayNonUniformIndexingNative; + VkBool32 robustBufferAccessUpdateAfterBind; + VkBool32 quadDivergentImplicitLod; + uint32_t maxPerStageDescriptorUpdateAfterBindSamplers; + uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers; + uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers; + uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages; + uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages; + uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments; + uint32_t maxPerStageUpdateAfterBindResources; + uint32_t maxDescriptorSetUpdateAfterBindSamplers; + uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers; + uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic; + uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers; + uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic; + uint32_t maxDescriptorSetUpdateAfterBindSampledImages; + uint32_t maxDescriptorSetUpdateAfterBindStorageImages; + uint32_t maxDescriptorSetUpdateAfterBindInputAttachments; + VkResolveModeFlags supportedDepthResolveModes; + VkResolveModeFlags supportedStencilResolveModes; + VkBool32 independentResolveNone; + VkBool32 independentResolve; + VkBool32 filterMinmaxSingleComponentFormats; + VkBool32 filterMinmaxImageComponentMapping; + uint64_t WINE_VK_ALIGN(8) maxTimelineSemaphoreValueDifference; + VkSampleCountFlags framebufferIntegerColorSampleCounts; +} VkPhysicalDeviceVulkan12Properties; + +typedef struct VkPhysicalDeviceVulkan13Features +{ + VkStructureType sType; + void *pNext; + VkBool32 robustImageAccess; + VkBool32 inlineUniformBlock; + VkBool32 descriptorBindingInlineUniformBlockUpdateAfterBind; + VkBool32 pipelineCreationCacheControl; + VkBool32 privateData; + VkBool32 shaderDemoteToHelperInvocation; + VkBool32 shaderTerminateInvocation; + VkBool32 subgroupSizeControl; + VkBool32 computeFullSubgroups; + VkBool32 synchronization2; + VkBool32 textureCompressionASTC_HDR; + VkBool32 shaderZeroInitializeWorkgroupMemory; + VkBool32 dynamicRendering; + VkBool32 shaderIntegerDotProduct; + VkBool32 maintenance4; +} VkPhysicalDeviceVulkan13Features; + +typedef struct VkPhysicalDeviceVulkan13Properties +{ + VkStructureType sType; + void *pNext; + uint32_t minSubgroupSize; + uint32_t maxSubgroupSize; + uint32_t maxComputeWorkgroupSubgroups; + VkShaderStageFlags requiredSubgroupSizeStages; + uint32_t maxInlineUniformBlockSize; + uint32_t maxPerStageDescriptorInlineUniformBlocks; + uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks; + uint32_t maxDescriptorSetInlineUniformBlocks; + uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks; + uint32_t maxInlineUniformTotalSize; + VkBool32 integerDotProduct8BitUnsignedAccelerated; + VkBool32 integerDotProduct8BitSignedAccelerated; + VkBool32 integerDotProduct8BitMixedSignednessAccelerated; + VkBool32 integerDotProduct4x8BitPackedUnsignedAccelerated; + VkBool32 integerDotProduct4x8BitPackedSignedAccelerated; + VkBool32 integerDotProduct4x8BitPackedMixedSignednessAccelerated; + VkBool32 integerDotProduct16BitUnsignedAccelerated; + VkBool32 integerDotProduct16BitSignedAccelerated; + VkBool32 integerDotProduct16BitMixedSignednessAccelerated; + VkBool32 integerDotProduct32BitUnsignedAccelerated; + VkBool32 integerDotProduct32BitSignedAccelerated; + VkBool32 integerDotProduct32BitMixedSignednessAccelerated; + VkBool32 integerDotProduct64BitUnsignedAccelerated; + VkBool32 integerDotProduct64BitSignedAccelerated; + VkBool32 integerDotProduct64BitMixedSignednessAccelerated; + VkBool32 integerDotProductAccumulatingSaturating8BitUnsignedAccelerated; + VkBool32 integerDotProductAccumulatingSaturating8BitSignedAccelerated; + VkBool32 integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated; + VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated; + VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated; + VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated; + VkBool32 integerDotProductAccumulatingSaturating16BitUnsignedAccelerated; + VkBool32 integerDotProductAccumulatingSaturating16BitSignedAccelerated; + VkBool32 integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated; + VkBool32 integerDotProductAccumulatingSaturating32BitUnsignedAccelerated; + VkBool32 integerDotProductAccumulatingSaturating32BitSignedAccelerated; + VkBool32 integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated; + VkBool32 integerDotProductAccumulatingSaturating64BitUnsignedAccelerated; + VkBool32 integerDotProductAccumulatingSaturating64BitSignedAccelerated; + VkBool32 integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated; + VkDeviceSize WINE_VK_ALIGN(8) storageTexelBufferOffsetAlignmentBytes; + VkBool32 storageTexelBufferOffsetSingleTexelAlignment; + VkDeviceSize WINE_VK_ALIGN(8) uniformTexelBufferOffsetAlignmentBytes; + VkBool32 uniformTexelBufferOffsetSingleTexelAlignment; + VkDeviceSize WINE_VK_ALIGN(8) maxBufferSize; +} VkPhysicalDeviceVulkan13Properties; + +typedef struct VkPhysicalDeviceVulkan14Features +{ + VkStructureType sType; + void *pNext; + VkBool32 globalPriorityQuery; + VkBool32 shaderSubgroupRotate; + VkBool32 shaderSubgroupRotateClustered; + VkBool32 shaderFloatControls2; + VkBool32 shaderExpectAssume; + VkBool32 rectangularLines; + VkBool32 bresenhamLines; + VkBool32 smoothLines; + VkBool32 stippledRectangularLines; + VkBool32 stippledBresenhamLines; + VkBool32 stippledSmoothLines; + VkBool32 vertexAttributeInstanceRateDivisor; + VkBool32 vertexAttributeInstanceRateZeroDivisor; + VkBool32 indexTypeUint8; + VkBool32 dynamicRenderingLocalRead; + VkBool32 maintenance5; + VkBool32 maintenance6; + VkBool32 pipelineProtectedAccess; + VkBool32 pipelineRobustness; + VkBool32 hostImageCopy; + VkBool32 pushDescriptor; +} VkPhysicalDeviceVulkan14Features; + +typedef struct VkPhysicalDeviceVulkan14Properties +{ + VkStructureType sType; + void *pNext; + uint32_t lineSubPixelPrecisionBits; + uint32_t maxVertexAttribDivisor; + VkBool32 supportsNonZeroFirstInstance; + uint32_t maxPushDescriptors; + VkBool32 dynamicRenderingLocalReadDepthStencilAttachments; + VkBool32 dynamicRenderingLocalReadMultisampledAttachments; + VkBool32 earlyFragmentMultisampleCoverageAfterSampleCounting; + VkBool32 earlyFragmentSampleMaskTestBeforeSampleCounting; + VkBool32 depthStencilSwizzleOneSupport; + VkBool32 polygonModePointSize; + VkBool32 nonStrictSinglePixelWideLinesUseParallelogram; + VkBool32 nonStrictWideLinesUseParallelogram; + VkBool32 blockTexelViewCompatibleMultipleLayers; + uint32_t maxCombinedImageSamplerDescriptorCount; + VkBool32 fragmentShadingRateClampCombinerInputs; + VkPipelineRobustnessBufferBehavior defaultRobustnessStorageBuffers; + VkPipelineRobustnessBufferBehavior defaultRobustnessUniformBuffers; + VkPipelineRobustnessBufferBehavior defaultRobustnessVertexInputs; + VkPipelineRobustnessImageBehavior defaultRobustnessImages; + uint32_t copySrcLayoutCount; + VkImageLayout *pCopySrcLayouts; + uint32_t copyDstLayoutCount; + VkImageLayout *pCopyDstLayouts; + uint8_t optimalTilingLayoutUUID[VK_UUID_SIZE]; + VkBool32 identicalMemoryTypeRequirements; +} VkPhysicalDeviceVulkan14Properties;
-typedef struct VkVideoEncodeCapabilitiesKHR +typedef struct VkPhysicalDeviceVulkanMemoryModelFeatures { VkStructureType sType; void *pNext; - VkVideoEncodeCapabilityFlagsKHR flags; - VkVideoEncodeRateControlModeFlagsKHR rateControlModes; - uint32_t maxRateControlLayers; - uint64_t WINE_VK_ALIGN(8) maxBitrate; - uint32_t maxQualityLevels; - VkExtent2D encodeInputPictureGranularity; - VkVideoEncodeFeedbackFlagsKHR supportedEncodeFeedbackFlags; -} VkVideoEncodeCapabilitiesKHR; + VkBool32 vulkanMemoryModel; + VkBool32 vulkanMemoryModelDeviceScope; + VkBool32 vulkanMemoryModelAvailabilityVisibilityChains; +} VkPhysicalDeviceVulkanMemoryModelFeatures; +typedef VkPhysicalDeviceVulkanMemoryModelFeatures VkPhysicalDeviceVulkanMemoryModelFeaturesKHR;
-typedef struct VkVideoEncodeH264CapabilitiesKHR +typedef struct VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR { VkStructureType sType; void *pNext; - VkVideoEncodeH264CapabilityFlagsKHR flags; - StdVideoH264LevelIdc maxLevelIdc; - uint32_t maxSliceCount; - uint32_t maxPPictureL0ReferenceCount; - uint32_t maxBPictureL0ReferenceCount; - uint32_t maxL1ReferenceCount; - uint32_t maxTemporalLayerCount; - VkBool32 expectDyadicTemporalLayerPattern; - int32_t minQp; - int32_t maxQp; - VkBool32 prefersGopRemainingFrames; - VkBool32 requiresGopRemainingFrames; - VkVideoEncodeH264StdFlagsKHR stdSyntaxFlags; -} VkVideoEncodeH264CapabilitiesKHR; - -typedef struct VkVideoEncodeH264FrameSizeKHR -{ - uint32_t frameISize; - uint32_t framePSize; - uint32_t frameBSize; -} VkVideoEncodeH264FrameSizeKHR; + VkBool32 workgroupMemoryExplicitLayout; + VkBool32 workgroupMemoryExplicitLayoutScalarBlockLayout; + VkBool32 workgroupMemoryExplicitLayout8BitAccess; + VkBool32 workgroupMemoryExplicitLayout16BitAccess; +} VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR;
-typedef struct VkVideoEncodeH264GopRemainingFrameInfoKHR +typedef struct VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT { VkStructureType sType; - const void *pNext; - VkBool32 useGopRemainingFrames; - uint32_t gopRemainingI; - uint32_t gopRemainingP; - uint32_t gopRemainingB; -} VkVideoEncodeH264GopRemainingFrameInfoKHR; + void *pNext; + VkBool32 ycbcr2plane444Formats; +} VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT;
-typedef struct VkVideoEncodeH264ProfileInfoKHR +typedef struct VkPhysicalDeviceYcbcrDegammaFeaturesQCOM { VkStructureType sType; - const void *pNext; - StdVideoH264ProfileIdc stdProfileIdc; -} VkVideoEncodeH264ProfileInfoKHR; + void *pNext; + VkBool32 ycbcrDegamma; +} VkPhysicalDeviceYcbcrDegammaFeaturesQCOM;
-typedef struct VkVideoEncodeH264QpKHR +typedef struct VkPhysicalDeviceYcbcrImageArraysFeaturesEXT { - int32_t qpI; - int32_t qpP; - int32_t qpB; -} VkVideoEncodeH264QpKHR; + VkStructureType sType; + void *pNext; + VkBool32 ycbcrImageArrays; +} VkPhysicalDeviceYcbcrImageArraysFeaturesEXT;
-typedef struct VkVideoEncodeH264QualityLevelPropertiesKHR +typedef struct VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT { VkStructureType sType; void *pNext; - VkVideoEncodeH264RateControlFlagsKHR preferredRateControlFlags; - uint32_t preferredGopFrameCount; - uint32_t preferredIdrPeriod; - uint32_t preferredConsecutiveBFrameCount; - uint32_t preferredTemporalLayerCount; - VkVideoEncodeH264QpKHR preferredConstantQp; - uint32_t preferredMaxL0ReferenceCount; - uint32_t preferredMaxL1ReferenceCount; - VkBool32 preferredStdEntropyCodingModeFlag; -} VkVideoEncodeH264QualityLevelPropertiesKHR; + VkBool32 zeroInitializeDeviceMemory; +} VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT;
-typedef struct VkVideoEncodeH264QuantizationMapCapabilitiesKHR +typedef struct VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures { VkStructureType sType; void *pNext; - int32_t minQpDelta; - int32_t maxQpDelta; -} VkVideoEncodeH264QuantizationMapCapabilitiesKHR; + VkBool32 shaderZeroInitializeWorkgroupMemory; +} VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures; +typedef VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR;
-typedef struct VkVideoEncodeH264RateControlInfoKHR +typedef struct VkPipelineBinaryCreateInfoKHR { VkStructureType sType; const void *pNext; - VkVideoEncodeH264RateControlFlagsKHR flags; - uint32_t gopFrameCount; - uint32_t idrPeriod; - uint32_t consecutiveBFrameCount; - uint32_t temporalLayerCount; -} VkVideoEncodeH264RateControlInfoKHR; + const VkPipelineBinaryKeysAndDataKHR *pKeysAndDataInfo; + VkPipeline WINE_VK_ALIGN(8) pipeline; + const VkPipelineCreateInfoKHR *pPipelineCreateInfo; +} VkPipelineBinaryCreateInfoKHR;
-typedef struct VkVideoEncodeH264RateControlLayerInfoKHR +typedef struct VkPipelineBinaryDataInfoKHR { VkStructureType sType; - const void *pNext; - VkBool32 useMinQp; - VkVideoEncodeH264QpKHR minQp; - VkBool32 useMaxQp; - VkVideoEncodeH264QpKHR maxQp; - VkBool32 useMaxFrameSize; - VkVideoEncodeH264FrameSizeKHR maxFrameSize; -} VkVideoEncodeH264RateControlLayerInfoKHR; + void *pNext; + VkPipelineBinaryKHR WINE_VK_ALIGN(8) pipelineBinary; +} VkPipelineBinaryDataInfoKHR;
-typedef struct VkVideoEncodeH264SessionCreateInfoKHR +typedef struct VkPipelineBinaryHandlesInfoKHR { VkStructureType sType; const void *pNext; - VkBool32 useMaxLevelIdc; - StdVideoH264LevelIdc maxLevelIdc; -} VkVideoEncodeH264SessionCreateInfoKHR; + uint32_t pipelineBinaryCount; + VkPipelineBinaryKHR *pPipelineBinaries; +} VkPipelineBinaryHandlesInfoKHR;
-typedef struct VkVideoEncodeH264SessionParametersFeedbackInfoKHR +typedef struct VkPipelineBinaryInfoKHR { VkStructureType sType; - void *pNext; - VkBool32 hasStdSPSOverrides; - VkBool32 hasStdPPSOverrides; -} VkVideoEncodeH264SessionParametersFeedbackInfoKHR; + const void *pNext; + uint32_t binaryCount; + const VkPipelineBinaryKHR *pPipelineBinaries; +} VkPipelineBinaryInfoKHR;
-typedef struct VkVideoEncodeH264SessionParametersGetInfoKHR +typedef struct VkPipelineColorBlendAdvancedStateCreateInfoEXT { VkStructureType sType; const void *pNext; - VkBool32 writeStdSPS; - VkBool32 writeStdPPS; - uint32_t stdSPSId; - uint32_t stdPPSId; -} VkVideoEncodeH264SessionParametersGetInfoKHR; + VkBool32 srcPremultiplied; + VkBool32 dstPremultiplied; + VkBlendOverlapEXT blendOverlap; +} VkPipelineColorBlendAdvancedStateCreateInfoEXT;
-typedef struct VkVideoEncodeH265QuantizationMapCapabilitiesKHR +typedef struct VkPipelineColorWriteCreateInfoEXT { VkStructureType sType; - void *pNext; - int32_t minQpDelta; - int32_t maxQpDelta; -} VkVideoEncodeH265QuantizationMapCapabilitiesKHR; + const void *pNext; + uint32_t attachmentCount; + const VkBool32 *pColorWriteEnables; +} VkPipelineColorWriteCreateInfoEXT;
-typedef struct VkVideoEncodeIntraRefreshCapabilitiesKHR +typedef struct VkPipelineCompilerControlCreateInfoAMD { VkStructureType sType; - void *pNext; - VkVideoEncodeIntraRefreshModeFlagsKHR intraRefreshModes; - uint32_t maxIntraRefreshCycleDuration; - uint32_t maxIntraRefreshActiveReferencePictures; - VkBool32 partitionIndependentIntraRefreshRegions; - VkBool32 nonRectangularIntraRefreshRegions; -} VkVideoEncodeIntraRefreshCapabilitiesKHR; + const void *pNext; + VkPipelineCompilerControlFlagsAMD compilerControlFlags; +} VkPipelineCompilerControlCreateInfoAMD;
-typedef struct VkVideoEncodeIntraRefreshInfoKHR +typedef struct VkPipelineCoverageModulationStateCreateInfoNV { VkStructureType sType; const void *pNext; - uint32_t intraRefreshCycleDuration; - uint32_t intraRefreshIndex; -} VkVideoEncodeIntraRefreshInfoKHR; + VkPipelineCoverageModulationStateCreateFlagsNV flags; + VkCoverageModulationModeNV coverageModulationMode; + VkBool32 coverageModulationTableEnable; + uint32_t coverageModulationTableCount; + const float *pCoverageModulationTable; +} VkPipelineCoverageModulationStateCreateInfoNV;
-typedef struct VkVideoEncodeQualityLevelInfoKHR +typedef struct VkPipelineCoverageReductionStateCreateInfoNV { VkStructureType sType; const void *pNext; - uint32_t qualityLevel; -} VkVideoEncodeQualityLevelInfoKHR; + VkPipelineCoverageReductionStateCreateFlagsNV flags; + VkCoverageReductionModeNV coverageReductionMode; +} VkPipelineCoverageReductionStateCreateInfoNV;
-typedef struct VkVideoEncodeQualityLevelPropertiesKHR +typedef struct VkPipelineCoverageToColorStateCreateInfoNV { VkStructureType sType; - void *pNext; - VkVideoEncodeRateControlModeFlagBitsKHR preferredRateControlMode; - uint32_t preferredRateControlLayerCount; -} VkVideoEncodeQualityLevelPropertiesKHR; + const void *pNext; + VkPipelineCoverageToColorStateCreateFlagsNV flags; + VkBool32 coverageToColorEnable; + uint32_t coverageToColorLocation; +} VkPipelineCoverageToColorStateCreateInfoNV;
-typedef struct VkVideoEncodeQuantizationMapCapabilitiesKHR +typedef struct VkPipelineCreateFlags2CreateInfo { VkStructureType sType; - void *pNext; - VkExtent2D maxQuantizationMapExtent; -} VkVideoEncodeQuantizationMapCapabilitiesKHR; + const void *pNext; + VkPipelineCreateFlags2 WINE_VK_ALIGN(8) flags; +} VkPipelineCreateFlags2CreateInfo; +typedef VkPipelineCreateFlags2CreateInfo VkPipelineCreateFlags2CreateInfoKHR;
-typedef struct VkVideoEncodeQuantizationMapInfoKHR +typedef struct VkPipelineCreationFeedbackCreateInfo { VkStructureType sType; const void *pNext; - VkImageView WINE_VK_ALIGN(8) quantizationMap; - VkExtent2D quantizationMapExtent; -} VkVideoEncodeQuantizationMapInfoKHR; + VkPipelineCreationFeedback *pPipelineCreationFeedback; + uint32_t pipelineStageCreationFeedbackCount; + VkPipelineCreationFeedback *pPipelineStageCreationFeedbacks; +} VkPipelineCreationFeedbackCreateInfo; +typedef VkPipelineCreationFeedbackCreateInfo VkPipelineCreationFeedbackCreateInfoEXT;
-typedef struct VkVideoEncodeQuantizationMapSessionParametersCreateInfoKHR +typedef struct VkPipelineDiscardRectangleStateCreateInfoEXT { VkStructureType sType; const void *pNext; - VkExtent2D quantizationMapTexelSize; -} VkVideoEncodeQuantizationMapSessionParametersCreateInfoKHR; + VkPipelineDiscardRectangleStateCreateFlagsEXT flags; + VkDiscardRectangleModeEXT discardRectangleMode; + uint32_t discardRectangleCount; + const VkRect2D *pDiscardRectangles; +} VkPipelineDiscardRectangleStateCreateInfoEXT;
-typedef struct VkVideoEncodeRateControlLayerInfoKHR +typedef struct VkPipelineExecutableInfoKHR { VkStructureType sType; const void *pNext; - uint64_t WINE_VK_ALIGN(8) averageBitrate; - uint64_t WINE_VK_ALIGN(8) maxBitrate; - uint32_t frameRateNumerator; - uint32_t frameRateDenominator; -} VkVideoEncodeRateControlLayerInfoKHR; + VkPipeline WINE_VK_ALIGN(8) pipeline; + uint32_t executableIndex; +} VkPipelineExecutableInfoKHR;
-typedef struct VkVideoEncodeSessionIntraRefreshCreateInfoKHR +typedef struct VkPipelineExecutableInternalRepresentationKHR { VkStructureType sType; - const void *pNext; - VkVideoEncodeIntraRefreshModeFlagBitsKHR intraRefreshMode; -} VkVideoEncodeSessionIntraRefreshCreateInfoKHR; + void *pNext; + char name[VK_MAX_DESCRIPTION_SIZE]; + char description[VK_MAX_DESCRIPTION_SIZE]; + VkBool32 isText; + size_t dataSize; + void *pData; +} VkPipelineExecutableInternalRepresentationKHR; + +typedef struct VkPipelineExecutablePropertiesKHR +{ + VkStructureType sType; + void *pNext; + VkShaderStageFlags stages; + char name[VK_MAX_DESCRIPTION_SIZE]; + char description[VK_MAX_DESCRIPTION_SIZE]; + uint32_t subgroupSize; +} VkPipelineExecutablePropertiesKHR;
-typedef struct VkVideoEncodeSessionParametersFeedbackInfoKHR +typedef struct VkPipelineExecutableStatisticKHR { VkStructureType sType; void *pNext; - VkBool32 hasOverrides; -} VkVideoEncodeSessionParametersFeedbackInfoKHR; + char name[VK_MAX_DESCRIPTION_SIZE]; + char description[VK_MAX_DESCRIPTION_SIZE]; + VkPipelineExecutableStatisticFormatKHR format; + VkPipelineExecutableStatisticValueKHR WINE_VK_ALIGN(8) value; +} VkPipelineExecutableStatisticKHR;
-typedef struct VkVideoEncodeSessionParametersGetInfoKHR +typedef struct VkPipelineFragmentDensityMapLayeredCreateInfoVALVE { VkStructureType sType; const void *pNext; - VkVideoSessionParametersKHR WINE_VK_ALIGN(8) videoSessionParameters; -} VkVideoEncodeSessionParametersGetInfoKHR; + uint32_t maxFragmentDensityMapLayers; +} VkPipelineFragmentDensityMapLayeredCreateInfoVALVE;
-typedef struct VkVideoEncodeUsageInfoKHR +typedef struct VkPipelineFragmentShadingRateEnumStateCreateInfoNV { VkStructureType sType; const void *pNext; - VkVideoEncodeUsageFlagsKHR videoUsageHints; - VkVideoEncodeContentFlagsKHR videoContentHints; - VkVideoEncodeTuningModeKHR tuningMode; -} VkVideoEncodeUsageInfoKHR; + VkFragmentShadingRateTypeNV shadingRateType; + VkFragmentShadingRateNV shadingRate; + VkFragmentShadingRateCombinerOpKHR combinerOps[2]; +} VkPipelineFragmentShadingRateEnumStateCreateInfoNV;
-typedef struct VkVideoEndCodingInfoKHR +typedef struct VkPipelineFragmentShadingRateStateCreateInfoKHR { VkStructureType sType; const void *pNext; - VkVideoEndCodingFlagsKHR flags; -} VkVideoEndCodingInfoKHR; + VkExtent2D fragmentSize; + VkFragmentShadingRateCombinerOpKHR combinerOps[2]; +} VkPipelineFragmentShadingRateStateCreateInfoKHR;
-typedef struct VkVideoFormatAV1QuantizationMapPropertiesKHR +typedef struct VkPipelineIndirectDeviceAddressInfoNV { VkStructureType sType; - void *pNext; - VkVideoEncodeAV1SuperblockSizeFlagsKHR compatibleSuperblockSizes; -} VkVideoFormatAV1QuantizationMapPropertiesKHR; + const void *pNext; + VkPipelineBindPoint pipelineBindPoint; + VkPipeline WINE_VK_ALIGN(8) pipeline; +} VkPipelineIndirectDeviceAddressInfoNV;
-typedef struct VkVideoFormatH265QuantizationMapPropertiesKHR + +typedef struct VkPipelineInfoKHR { VkStructureType sType; - void *pNext; - VkVideoEncodeH265CtbSizeFlagsKHR compatibleCtbSizes; -} VkVideoFormatH265QuantizationMapPropertiesKHR; + const void *pNext; + VkPipeline WINE_VK_ALIGN(8) pipeline; +} VkPipelineInfoKHR; +typedef VkPipelineInfoKHR VkPipelineInfoEXT;
-typedef struct VkVideoFormatPropertiesKHR +typedef struct VkPipelineLayoutCreateInfo { VkStructureType sType; - void *pNext; - VkFormat format; - VkComponentMapping componentMapping; - VkImageCreateFlags imageCreateFlags; - VkImageType imageType; - VkImageTiling imageTiling; - VkImageUsageFlags imageUsageFlags; -} VkVideoFormatPropertiesKHR; + const void *pNext; + VkPipelineLayoutCreateFlags flags; + uint32_t setLayoutCount; + const VkDescriptorSetLayout *pSetLayouts; + uint32_t pushConstantRangeCount; + const VkPushConstantRange *pPushConstantRanges; +} VkPipelineLayoutCreateInfo;
-typedef struct VkVideoFormatQuantizationMapPropertiesKHR +typedef struct VkPipelinePropertiesIdentifierEXT { VkStructureType sType; void *pNext; - VkExtent2D quantizationMapTexelSize; -} VkVideoFormatQuantizationMapPropertiesKHR; + uint8_t pipelineIdentifier[VK_UUID_SIZE]; +} VkPipelinePropertiesIdentifierEXT;
-typedef struct VkVideoInlineQueryInfoKHR +typedef struct VkPipelineRasterizationConservativeStateCreateInfoEXT { VkStructureType sType; const void *pNext; - VkQueryPool WINE_VK_ALIGN(8) queryPool; - uint32_t firstQuery; - uint32_t queryCount; -} VkVideoInlineQueryInfoKHR; + VkPipelineRasterizationConservativeStateCreateFlagsEXT flags; + VkConservativeRasterizationModeEXT conservativeRasterizationMode; + float extraPrimitiveOverestimationSize; +} VkPipelineRasterizationConservativeStateCreateInfoEXT;
-typedef struct VkVideoPictureResourceInfoKHR +typedef struct VkPipelineRasterizationDepthClipStateCreateInfoEXT { VkStructureType sType; const void *pNext; - VkOffset2D codedOffset; - VkExtent2D codedExtent; - uint32_t baseArrayLayer; - VkImageView WINE_VK_ALIGN(8) imageViewBinding; -} VkVideoPictureResourceInfoKHR; + VkPipelineRasterizationDepthClipStateCreateFlagsEXT flags; + VkBool32 depthClipEnable; +} VkPipelineRasterizationDepthClipStateCreateInfoEXT;
-typedef struct VkVideoProfileInfoKHR +typedef struct VkPipelineRasterizationLineStateCreateInfo { VkStructureType sType; const void *pNext; - VkVideoCodecOperationFlagBitsKHR videoCodecOperation; - VkVideoChromaSubsamplingFlagsKHR chromaSubsampling; - VkVideoComponentBitDepthFlagsKHR lumaBitDepth; - VkVideoComponentBitDepthFlagsKHR chromaBitDepth; -} VkVideoProfileInfoKHR; + VkLineRasterizationMode lineRasterizationMode; + VkBool32 stippledLineEnable; + uint32_t lineStippleFactor; + uint16_t lineStipplePattern; +} VkPipelineRasterizationLineStateCreateInfo; +typedef VkPipelineRasterizationLineStateCreateInfo VkPipelineRasterizationLineStateCreateInfoKHR; +typedef VkPipelineRasterizationLineStateCreateInfo VkPipelineRasterizationLineStateCreateInfoEXT;
-typedef struct VkVideoProfileListInfoKHR +typedef struct VkPipelineRasterizationProvokingVertexStateCreateInfoEXT { VkStructureType sType; const void *pNext; - uint32_t profileCount; - const VkVideoProfileInfoKHR *pProfiles; -} VkVideoProfileListInfoKHR; + VkProvokingVertexModeEXT provokingVertexMode; +} VkPipelineRasterizationProvokingVertexStateCreateInfoEXT;
-typedef struct VkVideoReferenceIntraRefreshInfoKHR +typedef struct VkPipelineRasterizationStateRasterizationOrderAMD { VkStructureType sType; const void *pNext; - uint32_t dirtyIntraRefreshRegions; -} VkVideoReferenceIntraRefreshInfoKHR; + VkRasterizationOrderAMD rasterizationOrder; +} VkPipelineRasterizationStateRasterizationOrderAMD;
-typedef struct VkVideoReferenceSlotInfoKHR +typedef struct VkPipelineRasterizationStateStreamCreateInfoEXT { VkStructureType sType; const void *pNext; - int32_t slotIndex; - const VkVideoPictureResourceInfoKHR *pPictureResource; -} VkVideoReferenceSlotInfoKHR; + VkPipelineRasterizationStateStreamCreateFlagsEXT flags; + uint32_t rasterizationStream; +} VkPipelineRasterizationStateStreamCreateInfoEXT;
-typedef struct VkVideoSessionCreateInfoKHR +typedef struct VkPipelineRenderingCreateInfo { VkStructureType sType; const void *pNext; - uint32_t queueFamilyIndex; - VkVideoSessionCreateFlagsKHR flags; - const VkVideoProfileInfoKHR *pVideoProfile; - VkFormat pictureFormat; - VkExtent2D maxCodedExtent; - VkFormat referencePictureFormat; - uint32_t maxDpbSlots; - uint32_t maxActiveReferencePictures; - const VkExtensionProperties *pStdHeaderVersion; -} VkVideoSessionCreateInfoKHR; + uint32_t viewMask; + uint32_t colorAttachmentCount; + const VkFormat *pColorAttachmentFormats; + VkFormat depthAttachmentFormat; + VkFormat stencilAttachmentFormat; +} VkPipelineRenderingCreateInfo; +typedef VkPipelineRenderingCreateInfo VkPipelineRenderingCreateInfoKHR;
-typedef struct VkVideoSessionMemoryRequirementsKHR +typedef struct VkPipelineRepresentativeFragmentTestStateCreateInfoNV { VkStructureType sType; - void *pNext; - uint32_t memoryBindIndex; - VkMemoryRequirements WINE_VK_ALIGN(8) memoryRequirements; -} VkVideoSessionMemoryRequirementsKHR; + const void *pNext; + VkBool32 representativeFragmentTestEnable; +} VkPipelineRepresentativeFragmentTestStateCreateInfoNV;
-typedef struct VkVideoSessionParametersCreateInfoKHR +typedef struct VkPipelineRobustnessCreateInfo { VkStructureType sType; const void *pNext; - VkVideoSessionParametersCreateFlagsKHR flags; - VkVideoSessionParametersKHR WINE_VK_ALIGN(8) videoSessionParametersTemplate; - VkVideoSessionKHR WINE_VK_ALIGN(8) videoSession; -} VkVideoSessionParametersCreateInfoKHR; + VkPipelineRobustnessBufferBehavior storageBuffers; + VkPipelineRobustnessBufferBehavior uniformBuffers; + VkPipelineRobustnessBufferBehavior vertexInputs; + VkPipelineRobustnessImageBehavior images; +} VkPipelineRobustnessCreateInfo; +typedef VkPipelineRobustnessCreateInfo VkPipelineRobustnessCreateInfoEXT;
-typedef struct VkVideoSessionParametersUpdateInfoKHR +typedef struct VkPipelineSampleLocationsStateCreateInfoEXT { VkStructureType sType; const void *pNext; - uint32_t updateSequenceCount; -} VkVideoSessionParametersUpdateInfoKHR; - -typedef struct VkViewport -{ - float x; - float y; - float width; - float height; - float minDepth; - float maxDepth; -} VkViewport; - -typedef struct VkViewportSwizzleNV -{ - VkViewportCoordinateSwizzleNV x; - VkViewportCoordinateSwizzleNV y; - VkViewportCoordinateSwizzleNV z; - VkViewportCoordinateSwizzleNV w; -} VkViewportSwizzleNV; - -typedef struct VkViewportWScalingNV -{ - float xcoeff; - float ycoeff; -} VkViewportWScalingNV; + VkBool32 sampleLocationsEnable; + VkSampleLocationsInfoEXT sampleLocationsInfo; +} VkPipelineSampleLocationsStateCreateInfoEXT;
-typedef struct VkWaylandSurfaceCreateInfoKHR +typedef struct VkPipelineShaderStageModuleIdentifierCreateInfoEXT { VkStructureType sType; const void *pNext; - VkWaylandSurfaceCreateFlagsKHR flags; - struct wl_display *display; - struct wl_surface *surface; -} VkWaylandSurfaceCreateInfoKHR; + uint32_t identifierSize; + const uint8_t *pIdentifier; +} VkPipelineShaderStageModuleIdentifierCreateInfoEXT;
-typedef struct VkWin32SurfaceCreateInfoKHR +typedef struct VkPipelineShaderStageRequiredSubgroupSizeCreateInfo { VkStructureType sType; - const void *pNext; - VkWin32SurfaceCreateFlagsKHR flags; - HINSTANCE hinstance; - HWND hwnd; -} VkWin32SurfaceCreateInfoKHR; + void *pNext; + uint32_t requiredSubgroupSize; +} VkPipelineShaderStageRequiredSubgroupSizeCreateInfo; +typedef VkPipelineShaderStageRequiredSubgroupSizeCreateInfo VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT; +typedef VkPipelineShaderStageRequiredSubgroupSizeCreateInfo VkShaderRequiredSubgroupSizeCreateInfoEXT;
-typedef struct VkWriteDescriptorSet +typedef struct VkPipelineTessellationDomainOriginStateCreateInfo { VkStructureType sType; const void *pNext; - VkDescriptorSet WINE_VK_ALIGN(8) dstSet; - uint32_t dstBinding; - uint32_t dstArrayElement; - uint32_t descriptorCount; - VkDescriptorType descriptorType; - const VkDescriptorImageInfo *pImageInfo; - const VkDescriptorBufferInfo *pBufferInfo; - const VkBufferView *pTexelBufferView; -} VkWriteDescriptorSet; + VkTessellationDomainOrigin domainOrigin; +} VkPipelineTessellationDomainOriginStateCreateInfo; +typedef VkPipelineTessellationDomainOriginStateCreateInfo VkPipelineTessellationDomainOriginStateCreateInfoKHR;
-typedef struct VkWriteDescriptorSetAccelerationStructureKHR +typedef struct VkPipelineVertexInputDivisorStateCreateInfo { VkStructureType sType; const void *pNext; - uint32_t accelerationStructureCount; - const VkAccelerationStructureKHR *pAccelerationStructures; -} VkWriteDescriptorSetAccelerationStructureKHR; + uint32_t vertexBindingDivisorCount; + const VkVertexInputBindingDivisorDescription *pVertexBindingDivisors; +} VkPipelineVertexInputDivisorStateCreateInfo; +typedef VkPipelineVertexInputDivisorStateCreateInfo VkPipelineVertexInputDivisorStateCreateInfoKHR; +typedef VkPipelineVertexInputDivisorStateCreateInfo VkPipelineVertexInputDivisorStateCreateInfoEXT;
-typedef struct VkWriteDescriptorSetAccelerationStructureNV +typedef struct VkPipelineViewportCoarseSampleOrderStateCreateInfoNV { VkStructureType sType; const void *pNext; - uint32_t accelerationStructureCount; - const VkAccelerationStructureNV *pAccelerationStructures; -} VkWriteDescriptorSetAccelerationStructureNV; + VkCoarseSampleOrderTypeNV sampleOrderType; + uint32_t customSampleOrderCount; + const VkCoarseSampleOrderCustomNV *pCustomSampleOrders; +} VkPipelineViewportCoarseSampleOrderStateCreateInfoNV;
-typedef struct VkWriteDescriptorSetInlineUniformBlock +typedef struct VkPipelineViewportDepthClampControlCreateInfoEXT { VkStructureType sType; const void *pNext; - uint32_t dataSize; - const void *pData; -} VkWriteDescriptorSetInlineUniformBlock; -typedef VkWriteDescriptorSetInlineUniformBlock VkWriteDescriptorSetInlineUniformBlockEXT; + VkDepthClampModeEXT depthClampMode; + const VkDepthClampRangeEXT *pDepthClampRange; +} VkPipelineViewportDepthClampControlCreateInfoEXT;
-typedef struct VkWriteDescriptorSetPartitionedAccelerationStructureNV +typedef struct VkPipelineViewportDepthClipControlCreateInfoEXT { VkStructureType sType; - void *pNext; - uint32_t accelerationStructureCount; - const VkDeviceAddress *pAccelerationStructures; -} VkWriteDescriptorSetPartitionedAccelerationStructureNV; + const void *pNext; + VkBool32 negativeOneToOne; +} VkPipelineViewportDepthClipControlCreateInfoEXT;
-typedef struct VkWriteDescriptorSetTensorARM +typedef struct VkPipelineViewportExclusiveScissorStateCreateInfoNV { VkStructureType sType; const void *pNext; - uint32_t tensorViewCount; - const VkTensorViewARM *pTensorViews; -} VkWriteDescriptorSetTensorARM; + uint32_t exclusiveScissorCount; + const VkRect2D *pExclusiveScissors; +} VkPipelineViewportExclusiveScissorStateCreateInfoNV;
-typedef struct VkWriteIndirectExecutionSetPipelineEXT +typedef struct VkPipelineViewportShadingRateImageStateCreateInfoNV { VkStructureType sType; const void *pNext; - uint32_t index; - VkPipeline WINE_VK_ALIGN(8) pipeline; -} VkWriteIndirectExecutionSetPipelineEXT; + VkBool32 shadingRateImageEnable; + uint32_t viewportCount; + const VkShadingRatePaletteNV *pShadingRatePalettes; +} VkPipelineViewportShadingRateImageStateCreateInfoNV;
-typedef struct VkWriteIndirectExecutionSetShaderEXT +typedef struct VkPipelineViewportSwizzleStateCreateInfoNV { VkStructureType sType; const void *pNext; - uint32_t index; - VkShaderEXT WINE_VK_ALIGN(8) shader; -} VkWriteIndirectExecutionSetShaderEXT; + VkPipelineViewportSwizzleStateCreateFlagsNV flags; + uint32_t viewportCount; + const VkViewportSwizzleNV *pViewportSwizzles; +} VkPipelineViewportSwizzleStateCreateInfoNV;
-typedef struct VkXYColorEXT +typedef struct VkPipelineViewportWScalingStateCreateInfoNV { - float x; - float y; -} VkXYColorEXT; + VkStructureType sType; + const void *pNext; + VkBool32 viewportWScalingEnable; + uint32_t viewportCount; + const VkViewportWScalingNV *pViewportWScalings; +} VkPipelineViewportWScalingStateCreateInfoNV;
-typedef struct StdVideoAV1ColorConfig +typedef struct VkPresentId2KHR { - StdVideoAV1ColorConfigFlags flags; - uint8_t BitDepth; - uint8_t subsampling_x; - uint8_t subsampling_y; - uint8_t reserved1; - StdVideoAV1ColorPrimaries color_primaries; - StdVideoAV1TransferCharacteristics transfer_characteristics; - StdVideoAV1MatrixCoefficients matrix_coefficients; - StdVideoAV1ChromaSamplePosition chroma_sample_position; -} StdVideoAV1ColorConfig; + VkStructureType sType; + const void *pNext; + uint32_t swapchainCount; + const uint64_t *pPresentIds; +} VkPresentId2KHR;
-typedef struct StdVideoAV1FilmGrain +typedef struct VkPresentIdKHR { - StdVideoAV1FilmGrainFlags flags; - uint8_t grain_scaling_minus_8; - uint8_t ar_coeff_lag; - uint8_t ar_coeff_shift_minus_6; - uint8_t grain_scale_shift; - uint16_t grain_seed; - uint8_t film_grain_params_ref_idx; - uint8_t num_y_points; - uint8_t point_y_value[STD_VIDEO_AV1_MAX_NUM_Y_POINTS]; - uint8_t point_y_scaling[STD_VIDEO_AV1_MAX_NUM_Y_POINTS]; - uint8_t num_cb_points; - uint8_t point_cb_value[STD_VIDEO_AV1_MAX_NUM_CB_POINTS]; - uint8_t point_cb_scaling[STD_VIDEO_AV1_MAX_NUM_CB_POINTS]; - uint8_t num_cr_points; - uint8_t point_cr_value[STD_VIDEO_AV1_MAX_NUM_CR_POINTS]; - uint8_t point_cr_scaling[STD_VIDEO_AV1_MAX_NUM_CR_POINTS]; - int8_t ar_coeffs_y_plus_128[STD_VIDEO_AV1_MAX_NUM_POS_LUMA]; - int8_t ar_coeffs_cb_plus_128[STD_VIDEO_AV1_MAX_NUM_POS_CHROMA]; - int8_t ar_coeffs_cr_plus_128[STD_VIDEO_AV1_MAX_NUM_POS_CHROMA]; - uint8_t cb_mult; - uint8_t cb_luma_mult; - uint16_t cb_offset; - uint8_t cr_mult; - uint8_t cr_luma_mult; - uint16_t cr_offset; -} StdVideoAV1FilmGrain; + VkStructureType sType; + const void *pNext; + uint32_t swapchainCount; + const uint64_t *pPresentIds; +} VkPresentIdKHR;
-typedef struct StdVideoAV1LoopFilter +typedef struct VkPresentInfoKHR { - StdVideoAV1LoopFilterFlags flags; - uint8_t loop_filter_level[STD_VIDEO_AV1_MAX_LOOP_FILTER_STRENGTHS]; - uint8_t loop_filter_sharpness; - uint8_t update_ref_delta; - int8_t loop_filter_ref_deltas[STD_VIDEO_AV1_TOTAL_REFS_PER_FRAME]; - uint8_t update_mode_delta; - int8_t loop_filter_mode_deltas[STD_VIDEO_AV1_LOOP_FILTER_ADJUSTMENTS]; -} StdVideoAV1LoopFilter; + VkStructureType sType; + const void *pNext; + uint32_t waitSemaphoreCount; + const VkSemaphore *pWaitSemaphores; + uint32_t swapchainCount; + const VkSwapchainKHR *pSwapchains; + const uint32_t *pImageIndices; + VkResult *pResults; +} VkPresentInfoKHR;
-typedef struct StdVideoAV1Quantization +typedef struct VkPresentRegionsKHR { - StdVideoAV1QuantizationFlags flags; - uint8_t base_q_idx; - int8_t DeltaQYDc; - int8_t DeltaQUDc; - int8_t DeltaQUAc; - int8_t DeltaQVDc; - int8_t DeltaQVAc; - uint8_t qm_y; - uint8_t qm_u; - uint8_t qm_v; -} StdVideoAV1Quantization; + VkStructureType sType; + const void *pNext; + uint32_t swapchainCount; + const VkPresentRegionKHR *pRegions; +} VkPresentRegionsKHR;
-typedef struct StdVideoAV1TileInfo +typedef struct VkPresentWait2InfoKHR { - StdVideoAV1TileInfoFlags flags; - uint8_t TileCols; - uint8_t TileRows; - uint16_t context_update_tile_id; - uint8_t tile_size_bytes_minus_1; - uint8_t reserved1[7]; - const uint16_t *pMiColStarts; - const uint16_t *pMiRowStarts; - const uint16_t *pWidthInSbsMinus1; - const uint16_t *pHeightInSbsMinus1; -} StdVideoAV1TileInfo; + VkStructureType sType; + const void *pNext; + uint64_t WINE_VK_ALIGN(8) presentId; + uint64_t WINE_VK_ALIGN(8) timeout; +} VkPresentWait2InfoKHR;
-typedef struct StdVideoAV1TimingInfo +typedef struct VkPrivateDataSlotCreateInfo { - StdVideoAV1TimingInfoFlags flags; - uint32_t num_units_in_display_tick; - uint32_t time_scale; - uint32_t num_ticks_per_picture_minus_1; -} StdVideoAV1TimingInfo; + VkStructureType sType; + const void *pNext; + VkPrivateDataSlotCreateFlags flags; +} VkPrivateDataSlotCreateInfo; +typedef VkPrivateDataSlotCreateInfo VkPrivateDataSlotCreateInfoEXT;
-typedef struct StdVideoDecodeAV1PictureInfo +typedef struct VkProtectedSubmitInfo { - StdVideoDecodeAV1PictureInfoFlags flags; - StdVideoAV1FrameType frame_type; - uint32_t current_frame_id; - uint8_t OrderHint; - uint8_t primary_ref_frame; - uint8_t refresh_frame_flags; - uint8_t reserved1; - StdVideoAV1InterpolationFilter interpolation_filter; - StdVideoAV1TxMode TxMode; - uint8_t delta_q_res; - uint8_t delta_lf_res; - uint8_t SkipModeFrame[STD_VIDEO_AV1_SKIP_MODE_FRAMES]; - uint8_t coded_denom; - uint8_t reserved2[3]; - uint8_t OrderHints[STD_VIDEO_AV1_NUM_REF_FRAMES]; - uint32_t expectedFrameId[STD_VIDEO_AV1_NUM_REF_FRAMES]; - const StdVideoAV1TileInfo *pTileInfo; - const StdVideoAV1Quantization *pQuantization; - const StdVideoAV1Segmentation *pSegmentation; - const StdVideoAV1LoopFilter *pLoopFilter; - const StdVideoAV1CDEF *pCDEF; - const StdVideoAV1LoopRestoration *pLoopRestoration; - const StdVideoAV1GlobalMotion *pGlobalMotion; - const StdVideoAV1FilmGrain *pFilmGrain; -} StdVideoDecodeAV1PictureInfo; + VkStructureType sType; + const void *pNext; + VkBool32 protectedSubmit; +} VkProtectedSubmitInfo;
-typedef struct StdVideoDecodeAV1ReferenceInfo +typedef struct VkPushConstantsInfo { - StdVideoDecodeAV1ReferenceInfoFlags flags; - uint8_t frame_type; - uint8_t RefFrameSignBias; - uint8_t OrderHint; - uint8_t SavedOrderHints[STD_VIDEO_AV1_NUM_REF_FRAMES]; -} StdVideoDecodeAV1ReferenceInfo; + VkStructureType sType; + const void *pNext; + VkPipelineLayout WINE_VK_ALIGN(8) layout; + VkShaderStageFlags stageFlags; + uint32_t offset; + uint32_t size; + const void *pValues; +} VkPushConstantsInfo; +typedef VkPushConstantsInfo VkPushConstantsInfoKHR;
-typedef struct StdVideoDecodeH264PictureInfo +typedef struct VkPushDescriptorSetInfo { - StdVideoDecodeH264PictureInfoFlags flags; - uint8_t seq_parameter_set_id; - uint8_t pic_parameter_set_id; - uint8_t reserved1; - uint8_t reserved2; - uint16_t frame_num; - uint16_t idr_pic_id; - int32_t PicOrderCnt[STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE]; -} StdVideoDecodeH264PictureInfo; + VkStructureType sType; + const void *pNext; + VkShaderStageFlags stageFlags; + VkPipelineLayout WINE_VK_ALIGN(8) layout; + uint32_t set; + uint32_t descriptorWriteCount; + const VkWriteDescriptorSet *pDescriptorWrites; +} VkPushDescriptorSetInfo; +typedef VkPushDescriptorSetInfo VkPushDescriptorSetInfoKHR;
-typedef struct StdVideoDecodeH264ReferenceInfo +typedef struct VkPushDescriptorSetWithTemplateInfo { - StdVideoDecodeH264ReferenceInfoFlags flags; - uint16_t FrameNum; - uint16_t reserved; - int32_t PicOrderCnt[STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE]; -} StdVideoDecodeH264ReferenceInfo; + VkStructureType sType; + const void *pNext; + VkDescriptorUpdateTemplate WINE_VK_ALIGN(8) descriptorUpdateTemplate; + VkPipelineLayout WINE_VK_ALIGN(8) layout; + uint32_t set; + const void *pData; +} VkPushDescriptorSetWithTemplateInfo; +typedef VkPushDescriptorSetWithTemplateInfo VkPushDescriptorSetWithTemplateInfoKHR;
-typedef struct StdVideoDecodeH265PictureInfo +typedef struct VkQueryLowLatencySupportNV { - StdVideoDecodeH265PictureInfoFlags flags; - uint8_t sps_video_parameter_set_id; - uint8_t pps_seq_parameter_set_id; - uint8_t pps_pic_parameter_set_id; - uint8_t NumDeltaPocsOfRefRpsIdx; - int32_t PicOrderCntVal; - uint16_t NumBitsForSTRefPicSetInSlice; - uint16_t reserved; - uint8_t RefPicSetStCurrBefore[STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE]; - uint8_t RefPicSetStCurrAfter[STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE]; - uint8_t RefPicSetLtCurr[STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE]; -} StdVideoDecodeH265PictureInfo; + VkStructureType sType; + const void *pNext; + void *pQueriedLowLatencyData; +} VkQueryLowLatencySupportNV;
-typedef struct StdVideoDecodeH265ReferenceInfo +typedef struct VkQueryPoolCreateInfo { - StdVideoDecodeH265ReferenceInfoFlags flags; - int32_t PicOrderCntVal; -} StdVideoDecodeH265ReferenceInfo; + VkStructureType sType; + const void *pNext; + VkQueryPoolCreateFlags flags; + VkQueryType queryType; + uint32_t queryCount; + VkQueryPipelineStatisticFlags pipelineStatistics; +} VkQueryPoolCreateInfo;
-typedef struct StdVideoEncodeAV1OperatingPointInfo +typedef struct VkQueryPoolPerformanceCreateInfoKHR { - StdVideoEncodeAV1OperatingPointInfoFlags flags; - uint16_t operating_point_idc; - uint8_t seq_level_idx; - uint8_t seq_tier; - uint32_t decoder_buffer_delay; - uint32_t encoder_buffer_delay; - uint8_t initial_display_delay_minus_1; -} StdVideoEncodeAV1OperatingPointInfo; + VkStructureType sType; + const void *pNext; + uint32_t queueFamilyIndex; + uint32_t counterIndexCount; + const uint32_t *pCounterIndices; +} VkQueryPoolPerformanceCreateInfoKHR;
-typedef struct StdVideoEncodeAV1PictureInfo +typedef struct VkQueryPoolPerformanceQueryCreateInfoINTEL { - StdVideoEncodeAV1PictureInfoFlags flags; - StdVideoAV1FrameType frame_type; - uint32_t frame_presentation_time; - uint32_t current_frame_id; - uint8_t order_hint; - uint8_t primary_ref_frame; - uint8_t refresh_frame_flags; - uint8_t coded_denom; - uint16_t render_width_minus_1; - uint16_t render_height_minus_1; - StdVideoAV1InterpolationFilter interpolation_filter; - StdVideoAV1TxMode TxMode; - uint8_t delta_q_res; - uint8_t delta_lf_res; - uint8_t ref_order_hint[STD_VIDEO_AV1_NUM_REF_FRAMES]; - int8_t ref_frame_idx[STD_VIDEO_AV1_REFS_PER_FRAME]; - uint8_t reserved1[3]; - uint32_t delta_frame_id_minus_1[STD_VIDEO_AV1_REFS_PER_FRAME]; - const StdVideoAV1TileInfo *pTileInfo; - const StdVideoAV1Quantization *pQuantization; - const StdVideoAV1Segmentation *pSegmentation; - const StdVideoAV1LoopFilter *pLoopFilter; - const StdVideoAV1CDEF *pCDEF; - const StdVideoAV1LoopRestoration *pLoopRestoration; - const StdVideoAV1GlobalMotion *pGlobalMotion; - const StdVideoEncodeAV1ExtensionHeader *pExtensionHeader; - const uint32_t *pBufferRemovalTimes; -} StdVideoEncodeAV1PictureInfo; + VkStructureType sType; + const void *pNext; + VkQueryPoolSamplingModeINTEL performanceCountersSampling; +} VkQueryPoolPerformanceQueryCreateInfoINTEL; +typedef VkQueryPoolPerformanceQueryCreateInfoINTEL VkQueryPoolCreateInfoINTEL;
-typedef struct StdVideoEncodeAV1ReferenceInfo +typedef struct VkQueryPoolVideoEncodeFeedbackCreateInfoKHR { - StdVideoEncodeAV1ReferenceInfoFlags flags; - uint32_t RefFrameId; - StdVideoAV1FrameType frame_type; - uint8_t OrderHint; - uint8_t reserved1[3]; - const StdVideoEncodeAV1ExtensionHeader *pExtensionHeader; -} StdVideoEncodeAV1ReferenceInfo; + VkStructureType sType; + const void *pNext; + VkVideoEncodeFeedbackFlagsKHR encodeFeedbackFlags; +} VkQueryPoolVideoEncodeFeedbackCreateInfoKHR;
-typedef struct StdVideoEncodeH264ReferenceInfo +typedef struct VkQueueFamilyCheckpointProperties2NV { - StdVideoEncodeH264ReferenceInfoFlags flags; - StdVideoH264PictureType primary_pic_type; - uint32_t FrameNum; - int32_t PicOrderCnt; - uint16_t long_term_pic_num; - uint16_t long_term_frame_idx; - uint8_t temporal_id; -} StdVideoEncodeH264ReferenceInfo; + VkStructureType sType; + void *pNext; + VkPipelineStageFlags2 WINE_VK_ALIGN(8) checkpointExecutionStageMask; +} VkQueueFamilyCheckpointProperties2NV;
-typedef struct StdVideoEncodeH264ReferenceListsInfo +typedef struct VkQueueFamilyCheckpointPropertiesNV { - StdVideoEncodeH264ReferenceListsInfoFlags flags; - uint8_t num_ref_idx_l0_active_minus1; - uint8_t num_ref_idx_l1_active_minus1; - uint8_t RefPicList0[STD_VIDEO_H264_MAX_NUM_LIST_REF]; - uint8_t RefPicList1[STD_VIDEO_H264_MAX_NUM_LIST_REF]; - uint8_t refList0ModOpCount; - uint8_t refList1ModOpCount; - uint8_t refPicMarkingOpCount; - uint8_t reserved1[7]; - const StdVideoEncodeH264RefListModEntry *pRefList0ModOperations; - const StdVideoEncodeH264RefListModEntry *pRefList1ModOperations; - const StdVideoEncodeH264RefPicMarkingEntry *pRefPicMarkingOperations; -} StdVideoEncodeH264ReferenceListsInfo; + VkStructureType sType; + void *pNext; + VkPipelineStageFlags checkpointExecutionStageMask; +} VkQueueFamilyCheckpointPropertiesNV;
-typedef struct StdVideoEncodeH264WeightTable +typedef struct VkQueueFamilyDataGraphProcessingEnginePropertiesARM { - StdVideoEncodeH264WeightTableFlags flags; - uint8_t luma_log2_weight_denom; - uint8_t chroma_log2_weight_denom; - int8_t luma_weight_l0[STD_VIDEO_H264_MAX_NUM_LIST_REF]; - int8_t luma_offset_l0[STD_VIDEO_H264_MAX_NUM_LIST_REF]; - int8_t chroma_weight_l0[STD_VIDEO_H264_MAX_NUM_LIST_REF][STD_VIDEO_H264_MAX_CHROMA_PLANES]; - int8_t chroma_offset_l0[STD_VIDEO_H264_MAX_NUM_LIST_REF][STD_VIDEO_H264_MAX_CHROMA_PLANES]; - int8_t luma_weight_l1[STD_VIDEO_H264_MAX_NUM_LIST_REF]; - int8_t luma_offset_l1[STD_VIDEO_H264_MAX_NUM_LIST_REF]; - int8_t chroma_weight_l1[STD_VIDEO_H264_MAX_NUM_LIST_REF][STD_VIDEO_H264_MAX_CHROMA_PLANES]; - int8_t chroma_offset_l1[STD_VIDEO_H264_MAX_NUM_LIST_REF][STD_VIDEO_H264_MAX_CHROMA_PLANES]; -} StdVideoEncodeH264WeightTable; + VkStructureType sType; + const void *pNext; + VkExternalSemaphoreHandleTypeFlags foreignSemaphoreHandleTypes; + VkExternalMemoryHandleTypeFlags foreignMemoryHandleTypes; +} VkQueueFamilyDataGraphProcessingEnginePropertiesARM;
-typedef struct StdVideoEncodeH265ReferenceInfo +typedef struct VkQueueFamilyDataGraphPropertiesARM { - StdVideoEncodeH265ReferenceInfoFlags flags; - StdVideoH265PictureType pic_type; - int32_t PicOrderCntVal; - uint8_t TemporalId; -} StdVideoEncodeH265ReferenceInfo; + VkStructureType sType; + const void *pNext; + VkPhysicalDeviceDataGraphProcessingEngineARM engine; + VkPhysicalDeviceDataGraphOperationSupportARM operation; +} VkQueueFamilyDataGraphPropertiesARM;
-typedef struct StdVideoEncodeH265ReferenceListsInfo +typedef struct VkQueueFamilyGlobalPriorityProperties { - StdVideoEncodeH265ReferenceListsInfoFlags flags; - uint8_t num_ref_idx_l0_active_minus1; - uint8_t num_ref_idx_l1_active_minus1; - uint8_t RefPicList0[STD_VIDEO_H265_MAX_NUM_LIST_REF]; - uint8_t RefPicList1[STD_VIDEO_H265_MAX_NUM_LIST_REF]; - uint8_t list_entry_l0[STD_VIDEO_H265_MAX_NUM_LIST_REF]; - uint8_t list_entry_l1[STD_VIDEO_H265_MAX_NUM_LIST_REF]; -} StdVideoEncodeH265ReferenceListsInfo; + VkStructureType sType; + void *pNext; + uint32_t priorityCount; + VkQueueGlobalPriority priorities[VK_MAX_GLOBAL_PRIORITY_SIZE]; +} VkQueueFamilyGlobalPriorityProperties; +typedef VkQueueFamilyGlobalPriorityProperties VkQueueFamilyGlobalPriorityPropertiesKHR; +typedef VkQueueFamilyGlobalPriorityProperties VkQueueFamilyGlobalPriorityPropertiesEXT;
-typedef struct StdVideoEncodeH265WeightTable +typedef struct VkQueueFamilyOwnershipTransferPropertiesKHR { - StdVideoEncodeH265WeightTableFlags flags; - uint8_t luma_log2_weight_denom; - int8_t delta_chroma_log2_weight_denom; - int8_t delta_luma_weight_l0[STD_VIDEO_H265_MAX_NUM_LIST_REF]; - int8_t luma_offset_l0[STD_VIDEO_H265_MAX_NUM_LIST_REF]; - int8_t delta_chroma_weight_l0[STD_VIDEO_H265_MAX_NUM_LIST_REF][STD_VIDEO_H265_MAX_CHROMA_PLANES]; - int8_t delta_chroma_offset_l0[STD_VIDEO_H265_MAX_NUM_LIST_REF][STD_VIDEO_H265_MAX_CHROMA_PLANES]; - int8_t delta_luma_weight_l1[STD_VIDEO_H265_MAX_NUM_LIST_REF]; - int8_t luma_offset_l1[STD_VIDEO_H265_MAX_NUM_LIST_REF]; - int8_t delta_chroma_weight_l1[STD_VIDEO_H265_MAX_NUM_LIST_REF][STD_VIDEO_H265_MAX_CHROMA_PLANES]; - int8_t delta_chroma_offset_l1[STD_VIDEO_H265_MAX_NUM_LIST_REF][STD_VIDEO_H265_MAX_CHROMA_PLANES]; -} StdVideoEncodeH265WeightTable; + VkStructureType sType; + void *pNext; + uint32_t optimalImageTransferToQueueFamilies; +} VkQueueFamilyOwnershipTransferPropertiesKHR;
-typedef struct StdVideoH264PictureParameterSet +typedef struct VkQueueFamilyProperties2 { - StdVideoH264PpsFlags flags; - uint8_t seq_parameter_set_id; - uint8_t pic_parameter_set_id; - uint8_t num_ref_idx_l0_default_active_minus1; - uint8_t num_ref_idx_l1_default_active_minus1; - StdVideoH264WeightedBipredIdc weighted_bipred_idc; - int8_t pic_init_qp_minus26; - int8_t pic_init_qs_minus26; - int8_t chroma_qp_index_offset; - int8_t second_chroma_qp_index_offset; - const StdVideoH264ScalingLists *pScalingLists; -} StdVideoH264PictureParameterSet; + VkStructureType sType; + void *pNext; + VkQueueFamilyProperties queueFamilyProperties; +} VkQueueFamilyProperties2; +typedef VkQueueFamilyProperties2 VkQueueFamilyProperties2KHR;
-typedef struct StdVideoH264SequenceParameterSetVui +typedef struct VkQueueFamilyQueryResultStatusPropertiesKHR { - StdVideoH264SpsVuiFlags flags; - StdVideoH264AspectRatioIdc aspect_ratio_idc; - uint16_t sar_width; - uint16_t sar_height; - uint8_t video_format; - uint8_t colour_primaries; - uint8_t transfer_characteristics; - uint8_t matrix_coefficients; - uint32_t num_units_in_tick; - uint32_t time_scale; - uint8_t max_num_reorder_frames; - uint8_t max_dec_frame_buffering; - uint8_t chroma_sample_loc_type_top_field; - uint8_t chroma_sample_loc_type_bottom_field; - uint32_t reserved1; - const StdVideoH264HrdParameters *pHrdParameters; -} StdVideoH264SequenceParameterSetVui; + VkStructureType sType; + void *pNext; + VkBool32 queryResultStatusSupport; +} VkQueueFamilyQueryResultStatusPropertiesKHR;
-typedef struct StdVideoH265HrdParameters +typedef struct VkQueueFamilyVideoPropertiesKHR { - StdVideoH265HrdFlags flags; - uint8_t tick_divisor_minus2; - uint8_t du_cpb_removal_delay_increment_length_minus1; - uint8_t dpb_output_delay_du_length_minus1; - uint8_t bit_rate_scale; - uint8_t cpb_size_scale; - uint8_t cpb_size_du_scale; - uint8_t initial_cpb_removal_delay_length_minus1; - uint8_t au_cpb_removal_delay_length_minus1; - uint8_t dpb_output_delay_length_minus1; - uint8_t cpb_cnt_minus1[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE]; - uint16_t elemental_duration_in_tc_minus1[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE]; - uint16_t reserved[3]; - const StdVideoH265SubLayerHrdParameters *pSubLayerHrdParametersNal; - const StdVideoH265SubLayerHrdParameters *pSubLayerHrdParametersVcl; -} StdVideoH265HrdParameters; + VkStructureType sType; + void *pNext; + VkVideoCodecOperationFlagsKHR videoCodecOperations; +} VkQueueFamilyVideoPropertiesKHR;
-typedef struct StdVideoH265PictureParameterSet +typedef struct VkRayTracingPipelineClusterAccelerationStructureCreateInfoNV { - StdVideoH265PpsFlags flags; - uint8_t pps_pic_parameter_set_id; - uint8_t pps_seq_parameter_set_id; - uint8_t sps_video_parameter_set_id; - uint8_t num_extra_slice_header_bits; - uint8_t num_ref_idx_l0_default_active_minus1; - uint8_t num_ref_idx_l1_default_active_minus1; - int8_t init_qp_minus26; - uint8_t diff_cu_qp_delta_depth; - int8_t pps_cb_qp_offset; - int8_t pps_cr_qp_offset; - int8_t pps_beta_offset_div2; - int8_t pps_tc_offset_div2; - uint8_t log2_parallel_merge_level_minus2; - uint8_t log2_max_transform_skip_block_size_minus2; - uint8_t diff_cu_chroma_qp_offset_depth; - uint8_t chroma_qp_offset_list_len_minus1; - int8_t cb_qp_offset_list[STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE]; - int8_t cr_qp_offset_list[STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE]; - uint8_t log2_sao_offset_scale_luma; - uint8_t log2_sao_offset_scale_chroma; - int8_t pps_act_y_qp_offset_plus5; - int8_t pps_act_cb_qp_offset_plus5; - int8_t pps_act_cr_qp_offset_plus3; - uint8_t pps_num_palette_predictor_initializers; - uint8_t luma_bit_depth_entry_minus8; - uint8_t chroma_bit_depth_entry_minus8; - uint8_t num_tile_columns_minus1; - uint8_t num_tile_rows_minus1; - uint8_t reserved1; - uint8_t reserved2; - uint16_t column_width_minus1[STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_COLS_LIST_SIZE]; - uint16_t row_height_minus1[STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_ROWS_LIST_SIZE]; - uint32_t reserved3; - const StdVideoH265ScalingLists *pScalingLists; - const StdVideoH265PredictorPaletteEntries *pPredictorPaletteEntries; -} StdVideoH265PictureParameterSet; + VkStructureType sType; + void *pNext; + VkBool32 allowClusterAccelerationStructure; +} VkRayTracingPipelineClusterAccelerationStructureCreateInfoNV;
-typedef struct StdVideoH265ProfileTierLevel +typedef struct VkRayTracingPipelineCreateInfoKHR { - StdVideoH265ProfileTierLevelFlags flags; - StdVideoH265ProfileIdc general_profile_idc; - StdVideoH265LevelIdc general_level_idc; -} StdVideoH265ProfileTierLevel; + VkStructureType sType; + const void *pNext; + VkPipelineCreateFlags flags; + uint32_t stageCount; + const VkPipelineShaderStageCreateInfo *pStages; + uint32_t groupCount; + const VkRayTracingShaderGroupCreateInfoKHR *pGroups; + uint32_t maxPipelineRayRecursionDepth; + const VkPipelineLibraryCreateInfoKHR *pLibraryInfo; + const VkRayTracingPipelineInterfaceCreateInfoKHR *pLibraryInterface; + const VkPipelineDynamicStateCreateInfo *pDynamicState; + VkPipelineLayout WINE_VK_ALIGN(8) layout; + VkPipeline WINE_VK_ALIGN(8) basePipelineHandle; + int32_t basePipelineIndex; +} VkRayTracingPipelineCreateInfoKHR;
-typedef struct StdVideoH265SequenceParameterSetVui +typedef struct VkRayTracingPipelineCreateInfoNV { - StdVideoH265SpsVuiFlags flags; - StdVideoH265AspectRatioIdc aspect_ratio_idc; - uint16_t sar_width; - uint16_t sar_height; - uint8_t video_format; - uint8_t colour_primaries; - uint8_t transfer_characteristics; - uint8_t matrix_coeffs; - uint8_t chroma_sample_loc_type_top_field; - uint8_t chroma_sample_loc_type_bottom_field; - uint8_t reserved1; - uint8_t reserved2; - uint16_t def_disp_win_left_offset; - uint16_t def_disp_win_right_offset; - uint16_t def_disp_win_top_offset; - uint16_t def_disp_win_bottom_offset; - uint32_t vui_num_units_in_tick; - uint32_t vui_time_scale; - uint32_t vui_num_ticks_poc_diff_one_minus1; - uint16_t min_spatial_segmentation_idc; - uint16_t reserved3; - uint8_t max_bytes_per_pic_denom; - uint8_t max_bits_per_min_cu_denom; - uint8_t log2_max_mv_length_horizontal; - uint8_t log2_max_mv_length_vertical; - const StdVideoH265HrdParameters *pHrdParameters; -} StdVideoH265SequenceParameterSetVui; + VkStructureType sType; + const void *pNext; + VkPipelineCreateFlags flags; + uint32_t stageCount; + const VkPipelineShaderStageCreateInfo *pStages; + uint32_t groupCount; + const VkRayTracingShaderGroupCreateInfoNV *pGroups; + uint32_t maxRecursionDepth; + VkPipelineLayout WINE_VK_ALIGN(8) layout; + VkPipeline WINE_VK_ALIGN(8) basePipelineHandle; + int32_t basePipelineIndex; +} VkRayTracingPipelineCreateInfoNV;
-typedef struct StdVideoH265ShortTermRefPicSet +typedef struct VkReleaseCapturedPipelineDataInfoKHR { - StdVideoH265ShortTermRefPicSetFlags flags; - uint32_t delta_idx_minus1; - uint16_t use_delta_flag; - uint16_t abs_delta_rps_minus1; - uint16_t used_by_curr_pic_flag; - uint16_t used_by_curr_pic_s0_flag; - uint16_t used_by_curr_pic_s1_flag; - uint16_t reserved1; - uint8_t reserved2; - uint8_t reserved3; - uint8_t num_negative_pics; - uint8_t num_positive_pics; - uint16_t delta_poc_s0_minus1[STD_VIDEO_H265_MAX_DPB_SIZE]; - uint16_t delta_poc_s1_minus1[STD_VIDEO_H265_MAX_DPB_SIZE]; -} StdVideoH265ShortTermRefPicSet; + VkStructureType sType; + void *pNext; + VkPipeline WINE_VK_ALIGN(8) pipeline; +} VkReleaseCapturedPipelineDataInfoKHR;
-typedef struct StdVideoH265VideoParameterSet +typedef struct VkReleaseSwapchainImagesInfoKHR { - StdVideoH265VpsFlags flags; - uint8_t vps_video_parameter_set_id; - uint8_t vps_max_sub_layers_minus1; - uint8_t reserved1; - uint8_t reserved2; - uint32_t vps_num_units_in_tick; - uint32_t vps_time_scale; - uint32_t vps_num_ticks_poc_diff_one_minus1; - uint32_t reserved3; - const StdVideoH265DecPicBufMgr *pDecPicBufMgr; - const StdVideoH265HrdParameters *pHrdParameters; - const StdVideoH265ProfileTierLevel *pProfileTierLevel; -} StdVideoH265VideoParameterSet; + VkStructureType sType; + const void *pNext; + VkSwapchainKHR WINE_VK_ALIGN(8) swapchain; + uint32_t imageIndexCount; + const uint32_t *pImageIndices; +} VkReleaseSwapchainImagesInfoKHR; +typedef VkReleaseSwapchainImagesInfoKHR VkReleaseSwapchainImagesInfoEXT;
-typedef struct StdVideoVP9ColorConfig +typedef struct VkRenderPassAttachmentBeginInfo { - StdVideoVP9ColorConfigFlags flags; - uint8_t BitDepth; - uint8_t subsampling_x; - uint8_t subsampling_y; - uint8_t reserved1; - StdVideoVP9ColorSpace color_space; -} StdVideoVP9ColorConfig; + VkStructureType sType; + const void *pNext; + uint32_t attachmentCount; + const VkImageView *pAttachments; +} VkRenderPassAttachmentBeginInfo; +typedef VkRenderPassAttachmentBeginInfo VkRenderPassAttachmentBeginInfoKHR;
-typedef struct StdVideoVP9LoopFilter +typedef struct VkRenderPassBeginInfo { - StdVideoVP9LoopFilterFlags flags; - uint8_t loop_filter_level; - uint8_t loop_filter_sharpness; - uint8_t update_ref_delta; - int8_t loop_filter_ref_deltas[STD_VIDEO_VP9_MAX_REF_FRAMES]; - uint8_t update_mode_delta; - int8_t loop_filter_mode_deltas[STD_VIDEO_VP9_LOOP_FILTER_ADJUSTMENTS]; -} StdVideoVP9LoopFilter; + VkStructureType sType; + const void *pNext; + VkRenderPass WINE_VK_ALIGN(8) renderPass; + VkFramebuffer WINE_VK_ALIGN(8) framebuffer; + VkRect2D renderArea; + uint32_t clearValueCount; + const VkClearValue *pClearValues; +} VkRenderPassBeginInfo;
-typedef struct StdVideoVP9Segmentation +typedef struct VkRenderPassCreateInfo { - StdVideoVP9SegmentationFlags flags; - uint8_t segmentation_tree_probs[STD_VIDEO_VP9_MAX_SEGMENTATION_TREE_PROBS]; - uint8_t segmentation_pred_prob[STD_VIDEO_VP9_MAX_SEGMENTATION_PRED_PROB]; - uint8_t FeatureEnabled[STD_VIDEO_VP9_MAX_SEGMENTS]; - int16_t FeatureData[STD_VIDEO_VP9_MAX_SEGMENTS][STD_VIDEO_VP9_SEG_LVL_MAX]; -} StdVideoVP9Segmentation; + VkStructureType sType; + const void *pNext; + VkRenderPassCreateFlags flags; + uint32_t attachmentCount; + const VkAttachmentDescription *pAttachments; + uint32_t subpassCount; + const VkSubpassDescription *pSubpasses; + uint32_t dependencyCount; + const VkSubpassDependency *pDependencies; +} VkRenderPassCreateInfo;
-typedef struct VkAccelerationStructureGeometryAabbsDataKHR +typedef struct VkRenderPassCreateInfo2 { VkStructureType sType; const void *pNext; - VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) data; - VkDeviceSize WINE_VK_ALIGN(8) stride; -} VkAccelerationStructureGeometryAabbsDataKHR; + VkRenderPassCreateFlags flags; + uint32_t attachmentCount; + const VkAttachmentDescription2 *pAttachments; + uint32_t subpassCount; + const VkSubpassDescription2 *pSubpasses; + uint32_t dependencyCount; + const VkSubpassDependency2 *pDependencies; + uint32_t correlatedViewMaskCount; + const uint32_t *pCorrelatedViewMasks; +} VkRenderPassCreateInfo2; +typedef VkRenderPassCreateInfo2 VkRenderPassCreateInfo2KHR;
-typedef struct VkAccelerationStructureGeometryInstancesDataKHR +typedef struct VkRenderPassCreationControlEXT { VkStructureType sType; const void *pNext; - VkBool32 arrayOfPointers; - VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) data; -} VkAccelerationStructureGeometryInstancesDataKHR; + VkBool32 disallowMerging; +} VkRenderPassCreationControlEXT;
-typedef struct VkAccelerationStructureGeometryLinearSweptSpheresDataNV +typedef struct VkRenderPassCreationFeedbackCreateInfoEXT { VkStructureType sType; const void *pNext; - VkFormat vertexFormat; - VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) vertexData; - VkDeviceSize WINE_VK_ALIGN(8) vertexStride; - VkFormat radiusFormat; - VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) radiusData; - VkDeviceSize WINE_VK_ALIGN(8) radiusStride; - VkIndexType indexType; - VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) indexData; - VkDeviceSize WINE_VK_ALIGN(8) indexStride; - VkRayTracingLssIndexingModeNV indexingMode; - VkRayTracingLssPrimitiveEndCapsModeNV endCapsMode; -} VkAccelerationStructureGeometryLinearSweptSpheresDataNV; + VkRenderPassCreationFeedbackInfoEXT *pRenderPassFeedback; +} VkRenderPassCreationFeedbackCreateInfoEXT;
-typedef struct VkAccelerationStructureGeometryMotionTrianglesDataNV +typedef struct VkRenderPassFragmentDensityMapCreateInfoEXT +{ + VkStructureType sType; + const void *pNext; + VkAttachmentReference fragmentDensityMapAttachment; +} VkRenderPassFragmentDensityMapCreateInfoEXT; + +typedef struct VkRenderPassFragmentDensityMapOffsetEndInfoEXT +{ + VkStructureType sType; + const void *pNext; + uint32_t fragmentDensityOffsetCount; + const VkOffset2D *pFragmentDensityOffsets; +} VkRenderPassFragmentDensityMapOffsetEndInfoEXT; +typedef VkRenderPassFragmentDensityMapOffsetEndInfoEXT VkSubpassFragmentDensityMapOffsetEndInfoQCOM; + +typedef struct VkRenderPassInputAttachmentAspectCreateInfo { VkStructureType sType; const void *pNext; - VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) vertexData; -} VkAccelerationStructureGeometryMotionTrianglesDataNV; + uint32_t aspectReferenceCount; + const VkInputAttachmentAspectReference *pAspectReferences; +} VkRenderPassInputAttachmentAspectCreateInfo; +typedef VkRenderPassInputAttachmentAspectCreateInfo VkRenderPassInputAttachmentAspectCreateInfoKHR;
-typedef struct VkAccelerationStructureGeometrySpheresDataNV +typedef struct VkRenderPassMultiviewCreateInfo { VkStructureType sType; const void *pNext; - VkFormat vertexFormat; - VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) vertexData; - VkDeviceSize WINE_VK_ALIGN(8) vertexStride; - VkFormat radiusFormat; - VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) radiusData; - VkDeviceSize WINE_VK_ALIGN(8) radiusStride; - VkIndexType indexType; - VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) indexData; - VkDeviceSize WINE_VK_ALIGN(8) indexStride; -} VkAccelerationStructureGeometrySpheresDataNV; + uint32_t subpassCount; + const uint32_t *pViewMasks; + uint32_t dependencyCount; + const int32_t *pViewOffsets; + uint32_t correlationMaskCount; + const uint32_t *pCorrelationMasks; +} VkRenderPassMultiviewCreateInfo; +typedef VkRenderPassMultiviewCreateInfo VkRenderPassMultiviewCreateInfoKHR;
-typedef struct VkAccelerationStructureGeometryTrianglesDataKHR +typedef struct VkRenderPassSampleLocationsBeginInfoEXT { VkStructureType sType; const void *pNext; - VkFormat vertexFormat; - VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) vertexData; - VkDeviceSize WINE_VK_ALIGN(8) vertexStride; - uint32_t maxVertex; - VkIndexType indexType; - VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) indexData; - VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) transformData; -} VkAccelerationStructureGeometryTrianglesDataKHR; - -typedef struct VkAccelerationStructureInstanceKHR -{ - VkTransformMatrixKHR transform; - uint32_t instanceCustomIndex:24; - uint32_t mask:8; - uint32_t instanceShaderBindingTableRecordOffset:24; - VkGeometryInstanceFlagsKHR flags:8; - uint64_t WINE_VK_ALIGN(8) accelerationStructureReference; -} VkAccelerationStructureInstanceKHR; -typedef VkAccelerationStructureInstanceKHR VkAccelerationStructureInstanceNV; - -typedef struct VkAccelerationStructureMatrixMotionInstanceNV -{ - VkTransformMatrixKHR transformT0; - VkTransformMatrixKHR transformT1; - uint32_t instanceCustomIndex:24; - uint32_t mask:8; - uint32_t instanceShaderBindingTableRecordOffset:24; - VkGeometryInstanceFlagsKHR flags:8; - uint64_t WINE_VK_ALIGN(8) accelerationStructureReference; -} VkAccelerationStructureMatrixMotionInstanceNV; + uint32_t attachmentInitialSampleLocationsCount; + const VkAttachmentSampleLocationsEXT *pAttachmentInitialSampleLocations; + uint32_t postSubpassSampleLocationsCount; + const VkSubpassSampleLocationsEXT *pPostSubpassSampleLocations; +} VkRenderPassSampleLocationsBeginInfoEXT;
-typedef struct VkAccelerationStructureSRTMotionInstanceNV +typedef struct VkRenderPassStripeBeginInfoARM { - VkSRTDataNV transformT0; - VkSRTDataNV transformT1; - uint32_t instanceCustomIndex:24; - uint32_t mask:8; - uint32_t instanceShaderBindingTableRecordOffset:24; - VkGeometryInstanceFlagsKHR flags:8; - uint64_t WINE_VK_ALIGN(8) accelerationStructureReference; -} VkAccelerationStructureSRTMotionInstanceNV; + VkStructureType sType; + const void *pNext; + uint32_t stripeInfoCount; + const VkRenderPassStripeInfoARM *pStripeInfos; +} VkRenderPassStripeBeginInfoARM;
-typedef struct VkAccelerationStructureTrianglesOpacityMicromapEXT +typedef struct VkRenderPassStripeSubmitInfoARM { VkStructureType sType; - void *pNext; - VkIndexType indexType; - VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) indexBuffer; - VkDeviceSize WINE_VK_ALIGN(8) indexStride; - uint32_t baseTriangle; - uint32_t usageCountsCount; - const VkMicromapUsageEXT *pUsageCounts; - const VkMicromapUsageEXT * const*ppUsageCounts; - VkMicromapEXT WINE_VK_ALIGN(8) micromap; -} VkAccelerationStructureTrianglesOpacityMicromapEXT; + const void *pNext; + uint32_t stripeSemaphoreInfoCount; + const VkSemaphoreSubmitInfo *pStripeSemaphoreInfos; +} VkRenderPassStripeSubmitInfoARM;
-typedef struct VkAntiLagDataAMD +typedef struct VkRenderPassSubpassFeedbackCreateInfoEXT { VkStructureType sType; const void *pNext; - VkAntiLagModeAMD mode; - uint32_t maxFPS; - const VkAntiLagPresentationInfoAMD *pPresentationInfo; -} VkAntiLagDataAMD; + VkRenderPassSubpassFeedbackInfoEXT *pSubpassFeedback; +} VkRenderPassSubpassFeedbackCreateInfoEXT;
-typedef struct VkAttachmentSampleLocationsEXT +typedef struct VkRenderPassTileShadingCreateInfoQCOM { - uint32_t attachmentIndex; - VkSampleLocationsInfoEXT sampleLocationsInfo; -} VkAttachmentSampleLocationsEXT; + VkStructureType sType; + const void *pNext; + VkTileShadingRenderPassFlagsQCOM flags; + VkExtent2D tileApronSize; +} VkRenderPassTileShadingCreateInfoQCOM;
-typedef struct VkBindImageMemoryDeviceGroupInfo +typedef struct VkRenderPassTransformBeginInfoQCOM { VkStructureType sType; const void *pNext; - uint32_t deviceIndexCount; - const uint32_t *pDeviceIndices; - uint32_t splitInstanceBindRegionCount; - const VkRect2D *pSplitInstanceBindRegions; -} VkBindImageMemoryDeviceGroupInfo; -typedef VkBindImageMemoryDeviceGroupInfo VkBindImageMemoryDeviceGroupInfoKHR; + VkSurfaceTransformFlagBitsKHR transform; +} VkRenderPassTransformBeginInfoQCOM;
-typedef struct VkBufferImageCopy +typedef struct VkRenderingAreaInfo { - VkDeviceSize WINE_VK_ALIGN(8) bufferOffset; - uint32_t bufferRowLength; - uint32_t bufferImageHeight; - VkImageSubresourceLayers imageSubresource; - VkOffset3D imageOffset; - VkExtent3D imageExtent; -} VkBufferImageCopy; + VkStructureType sType; + const void *pNext; + uint32_t viewMask; + uint32_t colorAttachmentCount; + const VkFormat *pColorAttachmentFormats; + VkFormat depthAttachmentFormat; + VkFormat stencilAttachmentFormat; +} VkRenderingAreaInfo; +typedef VkRenderingAreaInfo VkRenderingAreaInfoKHR;
-typedef struct VkBufferImageCopy2 +typedef struct VkRenderingAttachmentLocationInfo { VkStructureType sType; const void *pNext; - VkDeviceSize WINE_VK_ALIGN(8) bufferOffset; - uint32_t bufferRowLength; - uint32_t bufferImageHeight; - VkImageSubresourceLayers imageSubresource; - VkOffset3D imageOffset; - VkExtent3D imageExtent; -} VkBufferImageCopy2; -typedef VkBufferImageCopy2 VkBufferImageCopy2KHR; + uint32_t colorAttachmentCount; + const uint32_t *pColorAttachmentLocations; +} VkRenderingAttachmentLocationInfo; +typedef VkRenderingAttachmentLocationInfo VkRenderingAttachmentLocationInfoKHR;
-typedef struct VkBuildPartitionedAccelerationStructureIndirectCommandNV +typedef struct VkRenderingEndInfoEXT { - VkPartitionedAccelerationStructureOpTypeNV opType; - uint32_t argCount; - VkStridedDeviceAddressNV WINE_VK_ALIGN(8) argData; -} VkBuildPartitionedAccelerationStructureIndirectCommandNV; + VkStructureType sType; + const void *pNext; +} VkRenderingEndInfoEXT;
-typedef struct VkBuildPartitionedAccelerationStructureInfoNV +typedef struct VkRenderingFragmentDensityMapAttachmentInfoEXT { VkStructureType sType; - void *pNext; - VkPartitionedAccelerationStructureInstancesInputNV input; - VkDeviceAddress WINE_VK_ALIGN(8) srcAccelerationStructureData; - VkDeviceAddress WINE_VK_ALIGN(8) dstAccelerationStructureData; - VkDeviceAddress WINE_VK_ALIGN(8) scratchData; - VkDeviceAddress WINE_VK_ALIGN(8) srcInfos; - VkDeviceAddress WINE_VK_ALIGN(8) srcInfosCount; -} VkBuildPartitionedAccelerationStructureInfoNV; + const void *pNext; + VkImageView WINE_VK_ALIGN(8) imageView; + VkImageLayout imageLayout; +} VkRenderingFragmentDensityMapAttachmentInfoEXT;
-typedef struct VkClearAttachment +typedef struct VkRenderingFragmentShadingRateAttachmentInfoKHR { - VkImageAspectFlags aspectMask; - uint32_t colorAttachment; - VkClearValue clearValue; -} VkClearAttachment; + VkStructureType sType; + const void *pNext; + VkImageView WINE_VK_ALIGN(8) imageView; + VkImageLayout imageLayout; + VkExtent2D shadingRateAttachmentTexelSize; +} VkRenderingFragmentShadingRateAttachmentInfoKHR;
-typedef struct VkClearRect +typedef struct VkRenderingInfo { - VkRect2D rect; - uint32_t baseArrayLayer; + VkStructureType sType; + const void *pNext; + VkRenderingFlags flags; + VkRect2D renderArea; uint32_t layerCount; -} VkClearRect; - -typedef struct VkClusterAccelerationStructureBuildTriangleClusterInfoNV -{ - uint32_t clusterID; - VkClusterAccelerationStructureClusterFlagsNV clusterFlags; - uint32_t triangleCount:9; - uint32_t vertexCount:9; - uint32_t positionTruncateBitCount:6; - uint32_t indexType:4; - uint32_t opacityMicromapIndexType:4; - VkClusterAccelerationStructureGeometryIndexAndGeometryFlagsNV baseGeometryIndexAndGeometryFlags; - uint16_t indexBufferStride; - uint16_t vertexBufferStride; - uint16_t geometryIndexAndFlagsBufferStride; - uint16_t opacityMicromapIndexBufferStride; - VkDeviceAddress WINE_VK_ALIGN(8) indexBuffer; - VkDeviceAddress WINE_VK_ALIGN(8) vertexBuffer; - VkDeviceAddress WINE_VK_ALIGN(8) geometryIndexAndFlagsBuffer; - VkDeviceAddress WINE_VK_ALIGN(8) opacityMicromapArray; - VkDeviceAddress WINE_VK_ALIGN(8) opacityMicromapIndexBuffer; -} VkClusterAccelerationStructureBuildTriangleClusterInfoNV; + uint32_t viewMask; + uint32_t colorAttachmentCount; + const VkRenderingAttachmentInfo *pColorAttachments; + const VkRenderingAttachmentInfo *pDepthAttachment; + const VkRenderingAttachmentInfo *pStencilAttachment; +} VkRenderingInfo; +typedef VkRenderingInfo VkRenderingInfoKHR;
-typedef struct VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV +typedef struct VkRenderingInputAttachmentIndexInfo { - uint32_t clusterID; - VkClusterAccelerationStructureClusterFlagsNV clusterFlags; - uint32_t triangleCount:9; - uint32_t vertexCount:9; - uint32_t positionTruncateBitCount:6; - uint32_t indexType:4; - uint32_t opacityMicromapIndexType:4; - VkClusterAccelerationStructureGeometryIndexAndGeometryFlagsNV baseGeometryIndexAndGeometryFlags; - uint16_t indexBufferStride; - uint16_t vertexBufferStride; - uint16_t geometryIndexAndFlagsBufferStride; - uint16_t opacityMicromapIndexBufferStride; - VkDeviceAddress WINE_VK_ALIGN(8) indexBuffer; - VkDeviceAddress WINE_VK_ALIGN(8) vertexBuffer; - VkDeviceAddress WINE_VK_ALIGN(8) geometryIndexAndFlagsBuffer; - VkDeviceAddress WINE_VK_ALIGN(8) opacityMicromapArray; - VkDeviceAddress WINE_VK_ALIGN(8) opacityMicromapIndexBuffer; - VkDeviceAddress WINE_VK_ALIGN(8) instantiationBoundingBoxLimit; -} VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV; + VkStructureType sType; + const void *pNext; + uint32_t colorAttachmentCount; + const uint32_t *pColorAttachmentInputIndices; + const uint32_t *pDepthInputAttachmentIndex; + const uint32_t *pStencilInputAttachmentIndex; +} VkRenderingInputAttachmentIndexInfo; +typedef VkRenderingInputAttachmentIndexInfo VkRenderingInputAttachmentIndexInfoKHR;
-typedef struct VkClusterAccelerationStructureInstantiateClusterInfoNV +typedef struct VkResolveImageInfo2 { - uint32_t clusterIdOffset; - uint32_t geometryIndexOffset:24; - uint32_t reserved:8; - VkDeviceAddress WINE_VK_ALIGN(8) clusterTemplateAddress; - VkStridedDeviceAddressNV WINE_VK_ALIGN(8) vertexBuffer; -} VkClusterAccelerationStructureInstantiateClusterInfoNV; + VkStructureType sType; + const void *pNext; + VkImage WINE_VK_ALIGN(8) srcImage; + VkImageLayout srcImageLayout; + VkImage WINE_VK_ALIGN(8) dstImage; + VkImageLayout dstImageLayout; + uint32_t regionCount; + const VkImageResolve2 *pRegions; +} VkResolveImageInfo2; +typedef VkResolveImageInfo2 VkResolveImageInfo2KHR;
-typedef union VkClusterAccelerationStructureOpInputNV +typedef struct VkSamplerBlockMatchWindowCreateInfoQCOM { - VkClusterAccelerationStructureClustersBottomLevelInputNV *pClustersBottomLevel; - VkClusterAccelerationStructureTriangleClusterInputNV *pTriangleClusters; - VkClusterAccelerationStructureMoveObjectsInputNV *pMoveObjects; -} VkClusterAccelerationStructureOpInputNV; + VkStructureType sType; + const void *pNext; + VkExtent2D windowExtent; + VkBlockMatchWindowCompareModeQCOM windowCompareMode; +} VkSamplerBlockMatchWindowCreateInfoQCOM;
-typedef struct VkCommandBufferBeginInfo +typedef struct VkSamplerBorderColorComponentMappingCreateInfoEXT { VkStructureType sType; const void *pNext; - VkCommandBufferUsageFlags flags; - const VkCommandBufferInheritanceInfo *pInheritanceInfo; -} VkCommandBufferBeginInfo; + VkComponentMapping components; + VkBool32 srgb; +} VkSamplerBorderColorComponentMappingCreateInfoEXT;
-typedef struct VkCommandBufferInheritanceRenderPassTransformInfoQCOM +typedef struct VkSamplerCaptureDescriptorDataInfoEXT { VkStructureType sType; const void *pNext; - VkSurfaceTransformFlagBitsKHR transform; - VkRect2D renderArea; -} VkCommandBufferInheritanceRenderPassTransformInfoQCOM; + VkSampler WINE_VK_ALIGN(8) sampler; +} VkSamplerCaptureDescriptorDataInfoEXT;
-typedef struct VkCommandBufferInheritanceViewportScissorInfoNV +typedef struct VkSamplerCreateInfo { VkStructureType sType; const void *pNext; - VkBool32 viewportScissor2D; - uint32_t viewportDepthCount; - const VkViewport *pViewportDepths; -} VkCommandBufferInheritanceViewportScissorInfoNV; + VkSamplerCreateFlags flags; + VkFilter magFilter; + VkFilter minFilter; + VkSamplerMipmapMode mipmapMode; + VkSamplerAddressMode addressModeU; + VkSamplerAddressMode addressModeV; + VkSamplerAddressMode addressModeW; + float mipLodBias; + VkBool32 anisotropyEnable; + float maxAnisotropy; + VkBool32 compareEnable; + VkCompareOp compareOp; + float minLod; + float maxLod; + VkBorderColor borderColor; + VkBool32 unnormalizedCoordinates; +} VkSamplerCreateInfo;
-typedef struct VkConvertCooperativeVectorMatrixInfoNV +typedef struct VkSamplerCubicWeightsCreateInfoQCOM { VkStructureType sType; const void *pNext; - size_t srcSize; - VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) srcData; - size_t *pDstSize; - VkDeviceOrHostAddressKHR WINE_VK_ALIGN(8) dstData; - VkComponentTypeKHR srcComponentType; - VkComponentTypeKHR dstComponentType; - uint32_t numRows; - uint32_t numColumns; - VkCooperativeVectorMatrixLayoutNV srcLayout; - size_t srcStride; - VkCooperativeVectorMatrixLayoutNV dstLayout; - size_t dstStride; -} VkConvertCooperativeVectorMatrixInfoNV; + VkCubicFilterWeightsQCOM cubicWeights; +} VkSamplerCubicWeightsCreateInfoQCOM;
-typedef struct VkCopyAccelerationStructureToMemoryInfoKHR +typedef struct VkSamplerCustomBorderColorCreateInfoEXT { VkStructureType sType; const void *pNext; - VkAccelerationStructureKHR WINE_VK_ALIGN(8) src; - VkDeviceOrHostAddressKHR WINE_VK_ALIGN(8) dst; - VkCopyAccelerationStructureModeKHR mode; -} VkCopyAccelerationStructureToMemoryInfoKHR; + VkClearColorValue customBorderColor; + VkFormat format; +} VkSamplerCustomBorderColorCreateInfoEXT;
-typedef struct VkCopyBufferToImageInfo2 +typedef struct VkSamplerReductionModeCreateInfo { VkStructureType sType; const void *pNext; - VkBuffer WINE_VK_ALIGN(8) srcBuffer; - VkImage WINE_VK_ALIGN(8) dstImage; - VkImageLayout dstImageLayout; - uint32_t regionCount; - const VkBufferImageCopy2 *pRegions; -} VkCopyBufferToImageInfo2; -typedef VkCopyBufferToImageInfo2 VkCopyBufferToImageInfo2KHR; + VkSamplerReductionMode reductionMode; +} VkSamplerReductionModeCreateInfo; +typedef VkSamplerReductionModeCreateInfo VkSamplerReductionModeCreateInfoEXT;
-typedef struct VkCopyImageToBufferInfo2 +typedef struct VkSamplerYcbcrConversionCreateInfo { VkStructureType sType; const void *pNext; - VkImage WINE_VK_ALIGN(8) srcImage; - VkImageLayout srcImageLayout; - VkBuffer WINE_VK_ALIGN(8) dstBuffer; - uint32_t regionCount; - const VkBufferImageCopy2 *pRegions; -} VkCopyImageToBufferInfo2; -typedef VkCopyImageToBufferInfo2 VkCopyImageToBufferInfo2KHR; + VkFormat format; + VkSamplerYcbcrModelConversion ycbcrModel; + VkSamplerYcbcrRange ycbcrRange; + VkComponentMapping components; + VkChromaLocation xChromaOffset; + VkChromaLocation yChromaOffset; + VkFilter chromaFilter; + VkBool32 forceExplicitReconstruction; +} VkSamplerYcbcrConversionCreateInfo; +typedef VkSamplerYcbcrConversionCreateInfo VkSamplerYcbcrConversionCreateInfoKHR;
-typedef struct VkCopyMemoryToAccelerationStructureInfoKHR +typedef struct VkSamplerYcbcrConversionImageFormatProperties +{ + VkStructureType sType; + void *pNext; + uint32_t combinedImageSamplerDescriptorCount; +} VkSamplerYcbcrConversionImageFormatProperties; +typedef VkSamplerYcbcrConversionImageFormatProperties VkSamplerYcbcrConversionImageFormatPropertiesKHR; + +typedef struct VkSamplerYcbcrConversionInfo { VkStructureType sType; const void *pNext; - VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) src; - VkAccelerationStructureKHR WINE_VK_ALIGN(8) dst; - VkCopyAccelerationStructureModeKHR mode; -} VkCopyMemoryToAccelerationStructureInfoKHR; + VkSamplerYcbcrConversion WINE_VK_ALIGN(8) conversion; +} VkSamplerYcbcrConversionInfo; +typedef VkSamplerYcbcrConversionInfo VkSamplerYcbcrConversionInfoKHR;
-typedef struct VkCopyMemoryToImageIndirectCommandNV +typedef struct VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM { - VkDeviceAddress WINE_VK_ALIGN(8) srcAddress; - uint32_t bufferRowLength; - uint32_t bufferImageHeight; - VkImageSubresourceLayers imageSubresource; - VkOffset3D imageOffset; - VkExtent3D imageExtent; -} VkCopyMemoryToImageIndirectCommandNV; + VkStructureType sType; + void *pNext; + VkBool32 enableYDegamma; + VkBool32 enableCbCrDegamma; +} VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM;
-typedef struct VkCopyMemoryToMicromapInfoEXT +typedef struct VkSemaphoreCreateInfo { VkStructureType sType; const void *pNext; - VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) src; - VkMicromapEXT WINE_VK_ALIGN(8) dst; - VkCopyMicromapModeEXT mode; -} VkCopyMemoryToMicromapInfoEXT; + VkSemaphoreCreateFlags flags; +} VkSemaphoreCreateInfo;
-typedef struct VkCopyMicromapToMemoryInfoEXT +typedef struct VkSemaphoreSignalInfo { VkStructureType sType; const void *pNext; - VkMicromapEXT WINE_VK_ALIGN(8) src; - VkDeviceOrHostAddressKHR WINE_VK_ALIGN(8) dst; - VkCopyMicromapModeEXT mode; -} VkCopyMicromapToMemoryInfoEXT; + VkSemaphore WINE_VK_ALIGN(8) semaphore; + uint64_t WINE_VK_ALIGN(8) value; +} VkSemaphoreSignalInfo; +typedef VkSemaphoreSignalInfo VkSemaphoreSignalInfoKHR;
-typedef struct VkCopyTensorInfoARM +typedef struct VkSemaphoreTypeCreateInfo { VkStructureType sType; const void *pNext; - VkTensorARM WINE_VK_ALIGN(8) srcTensor; - VkTensorARM WINE_VK_ALIGN(8) dstTensor; - uint32_t regionCount; - const VkTensorCopyARM *pRegions; -} VkCopyTensorInfoARM; + VkSemaphoreType semaphoreType; + uint64_t WINE_VK_ALIGN(8) initialValue; +} VkSemaphoreTypeCreateInfo; +typedef VkSemaphoreTypeCreateInfo VkSemaphoreTypeCreateInfoKHR;
-typedef struct VkDataGraphPipelineCreateInfoARM +typedef struct VkSemaphoreWaitInfo { VkStructureType sType; const void *pNext; - VkPipelineCreateFlags2KHR flags; - VkPipelineLayout WINE_VK_ALIGN(8) layout; - uint32_t resourceInfoCount; - const VkDataGraphPipelineResourceInfoARM *pResourceInfos; -} VkDataGraphPipelineCreateInfoARM; + VkSemaphoreWaitFlags flags; + uint32_t semaphoreCount; + const VkSemaphore *pSemaphores; + const uint64_t *pValues; +} VkSemaphoreWaitInfo; +typedef VkSemaphoreWaitInfo VkSemaphoreWaitInfoKHR;
-typedef struct VkDataGraphProcessingEngineCreateInfoARM +typedef struct VkSetDescriptorBufferOffsetsInfoEXT { VkStructureType sType; const void *pNext; - uint32_t processingEngineCount; - VkPhysicalDeviceDataGraphProcessingEngineARM *pProcessingEngines; -} VkDataGraphProcessingEngineCreateInfoARM; + VkShaderStageFlags stageFlags; + VkPipelineLayout WINE_VK_ALIGN(8) layout; + uint32_t firstSet; + uint32_t setCount; + const uint32_t *pBufferIndices; + const VkDeviceSize *pOffsets; +} VkSetDescriptorBufferOffsetsInfoEXT;
-typedef struct VkDebugUtilsMessengerCallbackDataEXT +typedef struct VkSetLatencyMarkerInfoNV { VkStructureType sType; const void *pNext; - VkDebugUtilsMessengerCallbackDataFlagsEXT flags; - const char *pMessageIdName; - int32_t messageIdNumber; - const char *pMessage; - uint32_t queueLabelCount; - const VkDebugUtilsLabelEXT *pQueueLabels; - uint32_t cmdBufLabelCount; - const VkDebugUtilsLabelEXT *pCmdBufLabels; - uint32_t objectCount; - const VkDebugUtilsObjectNameInfoEXT *pObjects; -} VkDebugUtilsMessengerCallbackDataEXT; + uint64_t WINE_VK_ALIGN(8) presentID; + VkLatencyMarkerNV marker; +} VkSetLatencyMarkerInfoNV;
-typedef union VkDescriptorDataEXT +typedef struct VkSetStateFlagsIndirectCommandNV { - const VkSampler *pSampler; - const VkDescriptorImageInfo *pCombinedImageSampler; - const VkDescriptorImageInfo *pInputAttachmentImage; - const VkDescriptorImageInfo *pSampledImage; - const VkDescriptorImageInfo *pStorageImage; - const VkDescriptorAddressInfoEXT *pUniformTexelBuffer; - const VkDescriptorAddressInfoEXT *pStorageTexelBuffer; - const VkDescriptorAddressInfoEXT *pUniformBuffer; - const VkDescriptorAddressInfoEXT *pStorageBuffer; - VkDeviceAddress WINE_VK_ALIGN(8) accelerationStructure; -} VkDescriptorDataEXT; + uint32_t data; +} VkSetStateFlagsIndirectCommandNV; + +typedef struct VkShaderCreateInfoEXT +{ + VkStructureType sType; + const void *pNext; + VkShaderCreateFlagsEXT flags; + VkShaderStageFlagBits stage; + VkShaderStageFlags nextStage; + VkShaderCodeTypeEXT codeType; + size_t codeSize; + const void *pCode; + const char *pName; + uint32_t setLayoutCount; + const VkDescriptorSetLayout *pSetLayouts; + uint32_t pushConstantRangeCount; + const VkPushConstantRange *pPushConstantRanges; + const VkSpecializationInfo *pSpecializationInfo; +} VkShaderCreateInfoEXT;
-typedef struct VkDescriptorGetInfoEXT +typedef struct VkShaderModuleCreateInfo { VkStructureType sType; const void *pNext; - VkDescriptorType type; - VkDescriptorDataEXT WINE_VK_ALIGN(8) data; -} VkDescriptorGetInfoEXT; + VkShaderModuleCreateFlags flags; + size_t codeSize; + const uint32_t *pCode; +} VkShaderModuleCreateInfo;
-typedef struct VkDescriptorPoolCreateInfo +typedef struct VkShaderModuleIdentifierEXT { VkStructureType sType; - const void *pNext; - VkDescriptorPoolCreateFlags flags; - uint32_t maxSets; - uint32_t poolSizeCount; - const VkDescriptorPoolSize *pPoolSizes; -} VkDescriptorPoolCreateInfo; + void *pNext; + uint32_t identifierSize; + uint8_t identifier[VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT]; +} VkShaderModuleIdentifierEXT;
-typedef struct VkDescriptorUpdateTemplateCreateInfo +typedef struct VkShaderModuleValidationCacheCreateInfoEXT { VkStructureType sType; const void *pNext; - VkDescriptorUpdateTemplateCreateFlags flags; - uint32_t descriptorUpdateEntryCount; - const VkDescriptorUpdateTemplateEntry *pDescriptorUpdateEntries; - VkDescriptorUpdateTemplateType templateType; - VkDescriptorSetLayout WINE_VK_ALIGN(8) descriptorSetLayout; - VkPipelineBindPoint pipelineBindPoint; - VkPipelineLayout WINE_VK_ALIGN(8) pipelineLayout; - uint32_t set; -} VkDescriptorUpdateTemplateCreateInfo; -typedef VkDescriptorUpdateTemplateCreateInfo VkDescriptorUpdateTemplateCreateInfoKHR; + VkValidationCacheEXT WINE_VK_ALIGN(8) validationCache; +} VkShaderModuleValidationCacheCreateInfoEXT;
-typedef struct VkDeviceCreateInfo +typedef struct VkShaderStatisticsInfoAMD +{ + VkShaderStageFlags shaderStageMask; + VkShaderResourceUsageAMD resourceUsage; + uint32_t numPhysicalVgprs; + uint32_t numPhysicalSgprs; + uint32_t numAvailableVgprs; + uint32_t numAvailableSgprs; + uint32_t computeWorkGroupSize[3]; +} VkShaderStatisticsInfoAMD; + +typedef struct VkSparseImageFormatProperties2 { VkStructureType sType; - const void *pNext; - VkDeviceCreateFlags flags; - uint32_t queueCreateInfoCount; - const VkDeviceQueueCreateInfo *pQueueCreateInfos; - uint32_t enabledLayerCount; - const char * const*ppEnabledLayerNames; - uint32_t enabledExtensionCount; - const char * const*ppEnabledExtensionNames; - const VkPhysicalDeviceFeatures *pEnabledFeatures; -} VkDeviceCreateInfo; + void *pNext; + VkSparseImageFormatProperties properties; +} VkSparseImageFormatProperties2; +typedef VkSparseImageFormatProperties2 VkSparseImageFormatProperties2KHR;
-typedef struct VkDeviceFaultInfoEXT +typedef struct VkSparseImageMemoryRequirements2 { VkStructureType sType; void *pNext; - char description[VK_MAX_DESCRIPTION_SIZE]; - VkDeviceFaultAddressInfoEXT *pAddressInfos; - VkDeviceFaultVendorInfoEXT *pVendorInfos; - void *pVendorBinaryData; -} VkDeviceFaultInfoEXT; + VkSparseImageMemoryRequirements WINE_VK_ALIGN(8) memoryRequirements; +} VkSparseImageMemoryRequirements2; +typedef VkSparseImageMemoryRequirements2 VkSparseImageMemoryRequirements2KHR;
-typedef struct VkDeviceGroupRenderPassBeginInfo +typedef struct VkSubmitInfo { VkStructureType sType; const void *pNext; - uint32_t deviceMask; - uint32_t deviceRenderAreaCount; - const VkRect2D *pDeviceRenderAreas; -} VkDeviceGroupRenderPassBeginInfo; -typedef VkDeviceGroupRenderPassBeginInfo VkDeviceGroupRenderPassBeginInfoKHR; + uint32_t waitSemaphoreCount; + const VkSemaphore *pWaitSemaphores; + const VkPipelineStageFlags *pWaitDstStageMask; + uint32_t commandBufferCount; + const VkCommandBuffer *pCommandBuffers; + uint32_t signalSemaphoreCount; + const VkSemaphore *pSignalSemaphores; +} VkSubmitInfo;
-typedef struct VkDeviceImageMemoryRequirements +typedef struct VkSubmitInfo2 { VkStructureType sType; const void *pNext; - const VkImageCreateInfo *pCreateInfo; - VkImageAspectFlagBits planeAspect; -} VkDeviceImageMemoryRequirements; -typedef VkDeviceImageMemoryRequirements VkDeviceImageMemoryRequirementsKHR; + VkSubmitFlags flags; + uint32_t waitSemaphoreInfoCount; + const VkSemaphoreSubmitInfo *pWaitSemaphoreInfos; + uint32_t commandBufferInfoCount; + const VkCommandBufferSubmitInfo *pCommandBufferInfos; + uint32_t signalSemaphoreInfoCount; + const VkSemaphoreSubmitInfo *pSignalSemaphoreInfos; +} VkSubmitInfo2; +typedef VkSubmitInfo2 VkSubmitInfo2KHR;
-typedef struct VkDeviceImageSubresourceInfo +typedef struct VkSubpassBeginInfo { VkStructureType sType; const void *pNext; - const VkImageCreateInfo *pCreateInfo; - const VkImageSubresource2 *pSubresource; -} VkDeviceImageSubresourceInfo; -typedef VkDeviceImageSubresourceInfo VkDeviceImageSubresourceInfoKHR; + VkSubpassContents contents; +} VkSubpassBeginInfo; +typedef VkSubpassBeginInfo VkSubpassBeginInfoKHR;
-typedef struct VkExternalBufferProperties +typedef struct VkSubpassDescriptionDepthStencilResolve { VkStructureType sType; - void *pNext; - VkExternalMemoryProperties externalMemoryProperties; -} VkExternalBufferProperties; -typedef VkExternalBufferProperties VkExternalBufferPropertiesKHR; + const void *pNext; + VkResolveModeFlagBits depthResolveMode; + VkResolveModeFlagBits stencilResolveMode; + const VkAttachmentReference2 *pDepthStencilResolveAttachment; +} VkSubpassDescriptionDepthStencilResolve; +typedef VkSubpassDescriptionDepthStencilResolve VkSubpassDescriptionDepthStencilResolveKHR;
-typedef struct VkExternalImageFormatProperties +typedef struct VkSubpassEndInfo +{ + VkStructureType sType; + const void *pNext; +} VkSubpassEndInfo; +typedef VkSubpassEndInfo VkSubpassEndInfoKHR; + +typedef struct VkSubpassResolvePerformanceQueryEXT { VkStructureType sType; void *pNext; - VkExternalMemoryProperties externalMemoryProperties; -} VkExternalImageFormatProperties; -typedef VkExternalImageFormatProperties VkExternalImageFormatPropertiesKHR; + VkBool32 optimal; +} VkSubpassResolvePerformanceQueryEXT;
-typedef struct VkGeneratedCommandsInfoNV +typedef struct VkSubpassShadingPipelineCreateInfoHUAWEI { VkStructureType sType; - const void *pNext; - VkPipelineBindPoint pipelineBindPoint; - VkPipeline WINE_VK_ALIGN(8) pipeline; - VkIndirectCommandsLayoutNV WINE_VK_ALIGN(8) indirectCommandsLayout; - uint32_t streamCount; - const VkIndirectCommandsStreamNV *pStreams; - uint32_t sequencesCount; - VkBuffer WINE_VK_ALIGN(8) preprocessBuffer; - VkDeviceSize WINE_VK_ALIGN(8) preprocessOffset; - VkDeviceSize WINE_VK_ALIGN(8) preprocessSize; - VkBuffer WINE_VK_ALIGN(8) sequencesCountBuffer; - VkDeviceSize WINE_VK_ALIGN(8) sequencesCountOffset; - VkBuffer WINE_VK_ALIGN(8) sequencesIndexBuffer; - VkDeviceSize WINE_VK_ALIGN(8) sequencesIndexOffset; -} VkGeneratedCommandsInfoNV; + void *pNext; + VkRenderPass WINE_VK_ALIGN(8) renderPass; + uint32_t subpass; +} VkSubpassShadingPipelineCreateInfoHUAWEI;
-typedef struct VkGeometryDataNV +typedef struct VkSubresourceHostMemcpySize { - VkGeometryTrianglesNV WINE_VK_ALIGN(8) triangles; - VkGeometryAABBNV WINE_VK_ALIGN(8) aabbs; -} VkGeometryDataNV; + VkStructureType sType; + void *pNext; + VkDeviceSize WINE_VK_ALIGN(8) size; +} VkSubresourceHostMemcpySize; +typedef VkSubresourceHostMemcpySize VkSubresourceHostMemcpySizeEXT;
-typedef struct VkGeometryNV +typedef struct VkSubresourceLayout2 { VkStructureType sType; - const void *pNext; - VkGeometryTypeKHR geometryType; - VkGeometryDataNV WINE_VK_ALIGN(8) geometry; - VkGeometryFlagsKHR flags; -} VkGeometryNV; + void *pNext; + VkSubresourceLayout WINE_VK_ALIGN(8) subresourceLayout; +} VkSubresourceLayout2; +typedef VkSubresourceLayout2 VkSubresourceLayout2KHR; +typedef VkSubresourceLayout2 VkSubresourceLayout2EXT;
-typedef struct VkGetLatencyMarkerInfoNV +typedef struct VkSurfaceCapabilities2KHR { VkStructureType sType; - const void *pNext; - uint32_t timingCount; - VkLatencyTimingsFrameReportNV *pTimings; -} VkGetLatencyMarkerInfoNV; + void *pNext; + VkSurfaceCapabilitiesKHR surfaceCapabilities; +} VkSurfaceCapabilities2KHR;
-typedef struct VkHdrMetadataEXT +typedef struct VkSurfaceCapabilitiesPresentBarrierNV { VkStructureType sType; - const void *pNext; - VkXYColorEXT displayPrimaryRed; - VkXYColorEXT displayPrimaryGreen; - VkXYColorEXT displayPrimaryBlue; - VkXYColorEXT whitePoint; - float maxLuminance; - float minLuminance; - float maxContentLightLevel; - float maxFrameAverageLightLevel; -} VkHdrMetadataEXT; + void *pNext; + VkBool32 presentBarrierSupported; +} VkSurfaceCapabilitiesPresentBarrierNV;
-typedef struct VkHostImageLayoutTransitionInfo +typedef struct VkSurfaceCapabilitiesPresentId2KHR { VkStructureType sType; - const void *pNext; - VkImage WINE_VK_ALIGN(8) image; - VkImageLayout oldLayout; - VkImageLayout newLayout; - VkImageSubresourceRange subresourceRange; -} VkHostImageLayoutTransitionInfo; -typedef VkHostImageLayoutTransitionInfo VkHostImageLayoutTransitionInfoEXT; + void *pNext; + VkBool32 presentId2Supported; +} VkSurfaceCapabilitiesPresentId2KHR;
-typedef struct VkImageBlit +typedef struct VkSurfaceCapabilitiesPresentWait2KHR { - VkImageSubresourceLayers srcSubresource; - VkOffset3D srcOffsets[2]; - VkImageSubresourceLayers dstSubresource; - VkOffset3D dstOffsets[2]; -} VkImageBlit; + VkStructureType sType; + void *pNext; + VkBool32 presentWait2Supported; +} VkSurfaceCapabilitiesPresentWait2KHR;
-typedef struct VkImageBlit2 +typedef struct VkSurfaceFormat2KHR { VkStructureType sType; - const void *pNext; - VkImageSubresourceLayers srcSubresource; - VkOffset3D srcOffsets[2]; - VkImageSubresourceLayers dstSubresource; - VkOffset3D dstOffsets[2]; -} VkImageBlit2; -typedef VkImageBlit2 VkImageBlit2KHR; + void *pNext; + VkSurfaceFormatKHR surfaceFormat; +} VkSurfaceFormat2KHR;
-typedef struct VkImageCopy +typedef struct VkSurfacePresentModeCompatibilityKHR { - VkImageSubresourceLayers srcSubresource; - VkOffset3D srcOffset; - VkImageSubresourceLayers dstSubresource; - VkOffset3D dstOffset; - VkExtent3D extent; -} VkImageCopy; + VkStructureType sType; + void *pNext; + uint32_t presentModeCount; + VkPresentModeKHR *pPresentModes; +} VkSurfacePresentModeCompatibilityKHR; +typedef VkSurfacePresentModeCompatibilityKHR VkSurfacePresentModeCompatibilityEXT; + +typedef struct VkSurfacePresentModeKHR +{ + VkStructureType sType; + void *pNext; + VkPresentModeKHR presentMode; +} VkSurfacePresentModeKHR; +typedef VkSurfacePresentModeKHR VkSurfacePresentModeEXT;
-typedef struct VkImageCopy2 +typedef struct VkSurfacePresentScalingCapabilitiesKHR { VkStructureType sType; - const void *pNext; - VkImageSubresourceLayers srcSubresource; - VkOffset3D srcOffset; - VkImageSubresourceLayers dstSubresource; - VkOffset3D dstOffset; - VkExtent3D extent; -} VkImageCopy2; -typedef VkImageCopy2 VkImageCopy2KHR; + void *pNext; + VkPresentScalingFlagsKHR supportedPresentScaling; + VkPresentGravityFlagsKHR supportedPresentGravityX; + VkPresentGravityFlagsKHR supportedPresentGravityY; + VkExtent2D minScaledImageExtent; + VkExtent2D maxScaledImageExtent; +} VkSurfacePresentScalingCapabilitiesKHR; +typedef VkSurfacePresentScalingCapabilitiesKHR VkSurfacePresentScalingCapabilitiesEXT;
-typedef struct VkImageMemoryBarrier +typedef struct VkSwapchainCreateInfoKHR { VkStructureType sType; const void *pNext; - VkAccessFlags srcAccessMask; - VkAccessFlags dstAccessMask; - VkImageLayout oldLayout; - VkImageLayout newLayout; - uint32_t srcQueueFamilyIndex; - uint32_t dstQueueFamilyIndex; - VkImage WINE_VK_ALIGN(8) image; - VkImageSubresourceRange subresourceRange; -} VkImageMemoryBarrier; + VkSwapchainCreateFlagsKHR flags; + VkSurfaceKHR WINE_VK_ALIGN(8) surface; + uint32_t minImageCount; + VkFormat imageFormat; + VkColorSpaceKHR imageColorSpace; + VkExtent2D imageExtent; + uint32_t imageArrayLayers; + VkImageUsageFlags imageUsage; + VkSharingMode imageSharingMode; + uint32_t queueFamilyIndexCount; + const uint32_t *pQueueFamilyIndices; + VkSurfaceTransformFlagBitsKHR preTransform; + VkCompositeAlphaFlagBitsKHR compositeAlpha; + VkPresentModeKHR presentMode; + VkBool32 clipped; + VkSwapchainKHR WINE_VK_ALIGN(8) oldSwapchain; +} VkSwapchainCreateInfoKHR;
-typedef struct VkImageMemoryBarrier2 +typedef struct VkSwapchainLatencyCreateInfoNV { VkStructureType sType; const void *pNext; - VkPipelineStageFlags2 WINE_VK_ALIGN(8) srcStageMask; - VkAccessFlags2 WINE_VK_ALIGN(8) srcAccessMask; - VkPipelineStageFlags2 WINE_VK_ALIGN(8) dstStageMask; - VkAccessFlags2 WINE_VK_ALIGN(8) dstAccessMask; - VkImageLayout oldLayout; - VkImageLayout newLayout; - uint32_t srcQueueFamilyIndex; - uint32_t dstQueueFamilyIndex; - VkImage WINE_VK_ALIGN(8) image; - VkImageSubresourceRange subresourceRange; -} VkImageMemoryBarrier2; -typedef VkImageMemoryBarrier2 VkImageMemoryBarrier2KHR; + VkBool32 latencyModeEnable; +} VkSwapchainLatencyCreateInfoNV;
-typedef struct VkImageResolve +typedef struct VkSwapchainPresentBarrierCreateInfoNV { - VkImageSubresourceLayers srcSubresource; - VkOffset3D srcOffset; - VkImageSubresourceLayers dstSubresource; - VkOffset3D dstOffset; - VkExtent3D extent; -} VkImageResolve; + VkStructureType sType; + void *pNext; + VkBool32 presentBarrierEnable; +} VkSwapchainPresentBarrierCreateInfoNV;
-typedef struct VkImageResolve2 +typedef struct VkSwapchainPresentFenceInfoKHR { VkStructureType sType; const void *pNext; - VkImageSubresourceLayers srcSubresource; - VkOffset3D srcOffset; - VkImageSubresourceLayers dstSubresource; - VkOffset3D dstOffset; - VkExtent3D extent; -} VkImageResolve2; -typedef VkImageResolve2 VkImageResolve2KHR; + uint32_t swapchainCount; + const VkFence *pFences; +} VkSwapchainPresentFenceInfoKHR; +typedef VkSwapchainPresentFenceInfoKHR VkSwapchainPresentFenceInfoEXT;
-typedef struct VkImageToMemoryCopy +typedef struct VkSwapchainPresentModeInfoKHR { VkStructureType sType; const void *pNext; - void *pHostPointer; - uint32_t memoryRowLength; - uint32_t memoryImageHeight; - VkImageSubresourceLayers imageSubresource; - VkOffset3D imageOffset; - VkExtent3D imageExtent; -} VkImageToMemoryCopy; -typedef VkImageToMemoryCopy VkImageToMemoryCopyEXT; + uint32_t swapchainCount; + const VkPresentModeKHR *pPresentModes; +} VkSwapchainPresentModeInfoKHR; +typedef VkSwapchainPresentModeInfoKHR VkSwapchainPresentModeInfoEXT;
-typedef struct VkImageViewSampleWeightCreateInfoQCOM +typedef struct VkSwapchainPresentModesCreateInfoKHR { VkStructureType sType; const void *pNext; - VkOffset2D filterCenter; - VkExtent2D filterSize; - uint32_t numPhases; -} VkImageViewSampleWeightCreateInfoQCOM; + uint32_t presentModeCount; + const VkPresentModeKHR *pPresentModes; +} VkSwapchainPresentModesCreateInfoKHR; +typedef VkSwapchainPresentModesCreateInfoKHR VkSwapchainPresentModesCreateInfoEXT;
-typedef struct VkIndirectCommandsLayoutCreateInfoNV +typedef struct VkSwapchainPresentScalingCreateInfoKHR { VkStructureType sType; const void *pNext; - VkIndirectCommandsLayoutUsageFlagsNV flags; - VkPipelineBindPoint pipelineBindPoint; - uint32_t tokenCount; - const VkIndirectCommandsLayoutTokenNV *pTokens; - uint32_t streamCount; - const uint32_t *pStreamStrides; -} VkIndirectCommandsLayoutCreateInfoNV; - -typedef struct VkIndirectCommandsPushConstantTokenEXT -{ - VkPushConstantRange updateRange; -} VkIndirectCommandsPushConstantTokenEXT; + VkPresentScalingFlagsKHR scalingBehavior; + VkPresentGravityFlagsKHR presentGravityX; + VkPresentGravityFlagsKHR presentGravityY; +} VkSwapchainPresentScalingCreateInfoKHR; +typedef VkSwapchainPresentScalingCreateInfoKHR VkSwapchainPresentScalingCreateInfoEXT;
-typedef union VkIndirectCommandsTokenDataEXT +typedef struct VkTensorCaptureDescriptorDataInfoARM { - const VkIndirectCommandsPushConstantTokenEXT *pPushConstant; - const VkIndirectCommandsVertexBufferTokenEXT *pVertexBuffer; - const VkIndirectCommandsIndexBufferTokenEXT *pIndexBuffer; - const VkIndirectCommandsExecutionSetTokenEXT *pExecutionSet; -} VkIndirectCommandsTokenDataEXT; + VkStructureType sType; + const void *pNext; + VkTensorARM WINE_VK_ALIGN(8) tensor; +} VkTensorCaptureDescriptorDataInfoARM;
-typedef struct VkIndirectExecutionSetShaderInfoEXT +typedef struct VkTensorDependencyInfoARM { VkStructureType sType; const void *pNext; - uint32_t shaderCount; - const VkShaderEXT *pInitialShaders; - const VkIndirectExecutionSetShaderLayoutInfoEXT *pSetLayoutInfos; - uint32_t maxShaderCount; - uint32_t pushConstantRangeCount; - const VkPushConstantRange *pPushConstantRanges; -} VkIndirectExecutionSetShaderInfoEXT; + uint32_t tensorMemoryBarrierCount; + const VkTensorMemoryBarrierARM *pTensorMemoryBarriers; +} VkTensorDependencyInfoARM;
-typedef struct VkMemoryToImageCopy +typedef struct VkTensorFormatPropertiesARM { VkStructureType sType; const void *pNext; - const void *pHostPointer; - uint32_t memoryRowLength; - uint32_t memoryImageHeight; - VkImageSubresourceLayers imageSubresource; - VkOffset3D imageOffset; - VkExtent3D imageExtent; -} VkMemoryToImageCopy; -typedef VkMemoryToImageCopy VkMemoryToImageCopyEXT; + VkFormatFeatureFlags2 WINE_VK_ALIGN(8) optimalTilingTensorFeatures; + VkFormatFeatureFlags2 WINE_VK_ALIGN(8) linearTilingTensorFeatures; +} VkTensorFormatPropertiesARM;
-typedef struct VkMicromapBuildInfoEXT +typedef struct VkTensorMemoryRequirementsInfoARM { VkStructureType sType; const void *pNext; - VkMicromapTypeEXT type; - VkBuildMicromapFlagsEXT flags; - VkBuildMicromapModeEXT mode; - VkMicromapEXT WINE_VK_ALIGN(8) dstMicromap; - uint32_t usageCountsCount; - const VkMicromapUsageEXT *pUsageCounts; - const VkMicromapUsageEXT * const*ppUsageCounts; - VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) data; - VkDeviceOrHostAddressKHR WINE_VK_ALIGN(8) scratchData; - VkDeviceOrHostAddressConstKHR WINE_VK_ALIGN(8) triangleArray; - VkDeviceSize WINE_VK_ALIGN(8) triangleArrayStride; -} VkMicromapBuildInfoEXT; + VkTensorARM WINE_VK_ALIGN(8) tensor; +} VkTensorMemoryRequirementsInfoARM;
-typedef struct VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM +typedef struct VkTensorViewCaptureDescriptorDataInfoARM { VkStructureType sType; const void *pNext; - uint32_t perViewRenderAreaCount; - const VkRect2D *pPerViewRenderAreas; -} VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM; + VkTensorViewARM WINE_VK_ALIGN(8) tensorView; +} VkTensorViewCaptureDescriptorDataInfoARM;
-typedef struct VkMutableDescriptorTypeCreateInfoEXT +typedef struct VkTensorViewCreateInfoARM { VkStructureType sType; const void *pNext; - uint32_t mutableDescriptorTypeListCount; - const VkMutableDescriptorTypeListEXT *pMutableDescriptorTypeLists; -} VkMutableDescriptorTypeCreateInfoEXT; -typedef VkMutableDescriptorTypeCreateInfoEXT VkMutableDescriptorTypeCreateInfoVALVE; + VkTensorViewCreateFlagsARM WINE_VK_ALIGN(8) flags; + VkTensorARM WINE_VK_ALIGN(8) tensor; + VkFormat format; +} VkTensorViewCreateInfoARM;
-typedef struct VkOpticalFlowExecuteInfoNV +typedef struct VkTextureLODGatherFormatPropertiesAMD { VkStructureType sType; void *pNext; - VkOpticalFlowExecuteFlagsNV flags; - uint32_t regionCount; - const VkRect2D *pRegions; -} VkOpticalFlowExecuteInfoNV; + VkBool32 supportsTextureGatherLODBiasAMD; +} VkTextureLODGatherFormatPropertiesAMD;
-typedef struct VkPartitionedAccelerationStructureWriteInstanceDataNV +typedef struct VkTileMemoryBindInfoQCOM { - VkTransformMatrixKHR transform; - float explicitAABB[6]; - uint32_t instanceID; - uint32_t instanceMask; - uint32_t instanceContributionToHitGroupIndex; - VkPartitionedAccelerationStructureInstanceFlagsNV instanceFlags; - uint32_t instanceIndex; - uint32_t partitionIndex; - VkDeviceAddress WINE_VK_ALIGN(8) accelerationStructure; -} VkPartitionedAccelerationStructureWriteInstanceDataNV; + VkStructureType sType; + const void *pNext; + VkDeviceMemory WINE_VK_ALIGN(8) memory; +} VkTileMemoryBindInfoQCOM;
-typedef struct VkPhysicalDeviceExternalTensorInfoARM +typedef struct VkTileMemoryRequirementsQCOM { VkStructureType sType; - const void *pNext; - VkTensorCreateFlagsARM WINE_VK_ALIGN(8) flags; - const VkTensorDescriptionARM *pDescription; - VkExternalMemoryHandleTypeFlagBits handleType; -} VkPhysicalDeviceExternalTensorInfoARM; + void *pNext; + VkDeviceSize WINE_VK_ALIGN(8) size; + VkDeviceSize WINE_VK_ALIGN(8) alignment; +} VkTileMemoryRequirementsQCOM;
-typedef struct VkPhysicalDeviceProperties +typedef struct VkTileMemorySizeInfoQCOM { - uint32_t apiVersion; - uint32_t driverVersion; - uint32_t vendorID; - uint32_t deviceID; - VkPhysicalDeviceType deviceType; - char deviceName[VK_MAX_PHYSICAL_DEVICE_NAME_SIZE]; - uint8_t pipelineCacheUUID[VK_UUID_SIZE]; - VkPhysicalDeviceLimits WINE_VK_ALIGN(8) limits; - VkPhysicalDeviceSparseProperties sparseProperties; -} VkPhysicalDeviceProperties; + VkStructureType sType; + const void *pNext; + VkDeviceSize WINE_VK_ALIGN(8) size; +} VkTileMemorySizeInfoQCOM;
-typedef struct VkPhysicalDeviceProperties2 +typedef struct VkTilePropertiesQCOM { VkStructureType sType; void *pNext; - VkPhysicalDeviceProperties WINE_VK_ALIGN(8) properties; -} VkPhysicalDeviceProperties2; -typedef VkPhysicalDeviceProperties2 VkPhysicalDeviceProperties2KHR; + VkExtent3D tileSize; + VkExtent2D apronSize; + VkOffset2D origin; +} VkTilePropertiesQCOM;
-typedef struct VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR +typedef struct VkTimelineSemaphoreSubmitInfo { VkStructureType sType; const void *pNext; - const VkVideoProfileInfoKHR *pVideoProfile; - uint32_t qualityLevel; -} VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR; + uint32_t waitSemaphoreValueCount; + const uint64_t *pWaitSemaphoreValues; + uint32_t signalSemaphoreValueCount; + const uint64_t *pSignalSemaphoreValues; +} VkTimelineSemaphoreSubmitInfo; +typedef VkTimelineSemaphoreSubmitInfo VkTimelineSemaphoreSubmitInfoKHR;
-typedef struct VkPipelineBinaryCreateInfoKHR +typedef struct VkTraceRaysIndirectCommand2KHR { - VkStructureType sType; - const void *pNext; - const VkPipelineBinaryKeysAndDataKHR *pKeysAndDataInfo; - VkPipeline WINE_VK_ALIGN(8) pipeline; - const VkPipelineCreateInfoKHR *pPipelineCreateInfo; -} VkPipelineBinaryCreateInfoKHR; + VkDeviceAddress WINE_VK_ALIGN(8) raygenShaderRecordAddress; + VkDeviceSize WINE_VK_ALIGN(8) raygenShaderRecordSize; + VkDeviceAddress WINE_VK_ALIGN(8) missShaderBindingTableAddress; + VkDeviceSize WINE_VK_ALIGN(8) missShaderBindingTableSize; + VkDeviceSize WINE_VK_ALIGN(8) missShaderBindingTableStride; + VkDeviceAddress WINE_VK_ALIGN(8) hitShaderBindingTableAddress; + VkDeviceSize WINE_VK_ALIGN(8) hitShaderBindingTableSize; + VkDeviceSize WINE_VK_ALIGN(8) hitShaderBindingTableStride; + VkDeviceAddress WINE_VK_ALIGN(8) callableShaderBindingTableAddress; + VkDeviceSize WINE_VK_ALIGN(8) callableShaderBindingTableSize; + VkDeviceSize WINE_VK_ALIGN(8) callableShaderBindingTableStride; + uint32_t width; + uint32_t height; + uint32_t depth; +} VkTraceRaysIndirectCommand2KHR;
-typedef struct VkPipelineDepthStencilStateCreateInfo +typedef struct VkTraceRaysIndirectCommandKHR { - VkStructureType sType; - const void *pNext; - VkPipelineDepthStencilStateCreateFlags flags; - VkBool32 depthTestEnable; - VkBool32 depthWriteEnable; - VkCompareOp depthCompareOp; - VkBool32 depthBoundsTestEnable; - VkBool32 stencilTestEnable; - VkStencilOpState front; - VkStencilOpState back; - float minDepthBounds; - float maxDepthBounds; -} VkPipelineDepthStencilStateCreateInfo; + uint32_t width; + uint32_t height; + uint32_t depth; +} VkTraceRaysIndirectCommandKHR;
-typedef struct VkPipelineDiscardRectangleStateCreateInfoEXT +typedef struct VkValidationCacheCreateInfoEXT { VkStructureType sType; const void *pNext; - VkPipelineDiscardRectangleStateCreateFlagsEXT flags; - VkDiscardRectangleModeEXT discardRectangleMode; - uint32_t discardRectangleCount; - const VkRect2D *pDiscardRectangles; -} VkPipelineDiscardRectangleStateCreateInfoEXT; + VkValidationCacheCreateFlagsEXT flags; + size_t initialDataSize; + const void *pInitialData; +} VkValidationCacheCreateInfoEXT;
-typedef struct VkPipelineExecutableStatisticKHR +typedef struct VkValidationFeaturesEXT { VkStructureType sType; - void *pNext; - char name[VK_MAX_DESCRIPTION_SIZE]; - char description[VK_MAX_DESCRIPTION_SIZE]; - VkPipelineExecutableStatisticFormatKHR format; - VkPipelineExecutableStatisticValueKHR WINE_VK_ALIGN(8) value; -} VkPipelineExecutableStatisticKHR; + const void *pNext; + uint32_t enabledValidationFeatureCount; + const VkValidationFeatureEnableEXT *pEnabledValidationFeatures; + uint32_t disabledValidationFeatureCount; + const VkValidationFeatureDisableEXT *pDisabledValidationFeatures; +} VkValidationFeaturesEXT;
-typedef struct VkPipelineLayoutCreateInfo +typedef struct VkValidationFlagsEXT { VkStructureType sType; const void *pNext; - VkPipelineLayoutCreateFlags flags; - uint32_t setLayoutCount; - const VkDescriptorSetLayout *pSetLayouts; - uint32_t pushConstantRangeCount; - const VkPushConstantRange *pPushConstantRanges; -} VkPipelineLayoutCreateInfo; + uint32_t disabledValidationCheckCount; + const VkValidationCheckEXT *pDisabledValidationChecks; +} VkValidationFlagsEXT;
-typedef struct VkPipelineSampleLocationsStateCreateInfoEXT +typedef struct VkVertexInputAttributeDescription2EXT { VkStructureType sType; - const void *pNext; - VkBool32 sampleLocationsEnable; - VkSampleLocationsInfoEXT sampleLocationsInfo; -} VkPipelineSampleLocationsStateCreateInfoEXT; + void *pNext; + uint32_t location; + uint32_t binding; + VkFormat format; + uint32_t offset; +} VkVertexInputAttributeDescription2EXT;
-typedef struct VkPipelineVertexInputDivisorStateCreateInfo +typedef struct VkVertexInputBindingDescription2EXT { VkStructureType sType; - const void *pNext; - uint32_t vertexBindingDivisorCount; - const VkVertexInputBindingDivisorDescription *pVertexBindingDivisors; -} VkPipelineVertexInputDivisorStateCreateInfo; -typedef VkPipelineVertexInputDivisorStateCreateInfo VkPipelineVertexInputDivisorStateCreateInfoKHR; -typedef VkPipelineVertexInputDivisorStateCreateInfo VkPipelineVertexInputDivisorStateCreateInfoEXT; + void *pNext; + uint32_t binding; + uint32_t stride; + VkVertexInputRate inputRate; + uint32_t divisor; +} VkVertexInputBindingDescription2EXT;
-typedef struct VkPipelineVertexInputStateCreateInfo +typedef struct VkVideoBeginCodingInfoKHR { VkStructureType sType; const void *pNext; - VkPipelineVertexInputStateCreateFlags flags; - uint32_t vertexBindingDescriptionCount; - const VkVertexInputBindingDescription *pVertexBindingDescriptions; - uint32_t vertexAttributeDescriptionCount; - const VkVertexInputAttributeDescription *pVertexAttributeDescriptions; -} VkPipelineVertexInputStateCreateInfo; + VkVideoBeginCodingFlagsKHR flags; + VkVideoSessionKHR WINE_VK_ALIGN(8) videoSession; + VkVideoSessionParametersKHR WINE_VK_ALIGN(8) videoSessionParameters; + uint32_t referenceSlotCount; + const VkVideoReferenceSlotInfoKHR *pReferenceSlots; +} VkVideoBeginCodingInfoKHR;
-typedef struct VkPipelineViewportExclusiveScissorStateCreateInfoNV +typedef struct VkVideoCapabilitiesKHR { VkStructureType sType; - const void *pNext; - uint32_t exclusiveScissorCount; - const VkRect2D *pExclusiveScissors; -} VkPipelineViewportExclusiveScissorStateCreateInfoNV; + void *pNext; + VkVideoCapabilityFlagsKHR flags; + VkDeviceSize WINE_VK_ALIGN(8) minBitstreamBufferOffsetAlignment; + VkDeviceSize WINE_VK_ALIGN(8) minBitstreamBufferSizeAlignment; + VkExtent2D pictureAccessGranularity; + VkExtent2D minCodedExtent; + VkExtent2D maxCodedExtent; + uint32_t maxDpbSlots; + uint32_t maxActiveReferencePictures; + VkExtensionProperties stdHeaderVersion; +} VkVideoCapabilitiesKHR;
-typedef struct VkPipelineViewportShadingRateImageStateCreateInfoNV +typedef struct VkVideoCodingControlInfoKHR { VkStructureType sType; const void *pNext; - VkBool32 shadingRateImageEnable; - uint32_t viewportCount; - const VkShadingRatePaletteNV *pShadingRatePalettes; -} VkPipelineViewportShadingRateImageStateCreateInfoNV; + VkVideoCodingControlFlagsKHR flags; +} VkVideoCodingControlInfoKHR;
-typedef struct VkPipelineViewportStateCreateInfo +typedef struct VkVideoDecodeAV1CapabilitiesKHR { VkStructureType sType; - const void *pNext; - VkPipelineViewportStateCreateFlags flags; - uint32_t viewportCount; - const VkViewport *pViewports; - uint32_t scissorCount; - const VkRect2D *pScissors; -} VkPipelineViewportStateCreateInfo; + void *pNext; + StdVideoAV1Level maxLevel; +} VkVideoDecodeAV1CapabilitiesKHR;
-typedef struct VkPipelineViewportSwizzleStateCreateInfoNV +typedef struct VkVideoDecodeAV1DpbSlotInfoKHR { VkStructureType sType; const void *pNext; - VkPipelineViewportSwizzleStateCreateFlagsNV flags; - uint32_t viewportCount; - const VkViewportSwizzleNV *pViewportSwizzles; -} VkPipelineViewportSwizzleStateCreateInfoNV; + const StdVideoDecodeAV1ReferenceInfo *pStdReferenceInfo; +} VkVideoDecodeAV1DpbSlotInfoKHR;
-typedef struct VkPipelineViewportWScalingStateCreateInfoNV +typedef struct VkVideoDecodeAV1PictureInfoKHR { VkStructureType sType; const void *pNext; - VkBool32 viewportWScalingEnable; - uint32_t viewportCount; - const VkViewportWScalingNV *pViewportWScalings; -} VkPipelineViewportWScalingStateCreateInfoNV; - -typedef struct VkPresentRegionKHR -{ - uint32_t rectangleCount; - const VkRectLayerKHR *pRectangles; -} VkPresentRegionKHR; + const StdVideoDecodeAV1PictureInfo *pStdPictureInfo; + int32_t referenceNameSlotIndices[VK_MAX_VIDEO_AV1_REFERENCES_PER_FRAME_KHR]; + uint32_t frameHeaderOffset; + uint32_t tileCount; + const uint32_t *pTileOffsets; + const uint32_t *pTileSizes; +} VkVideoDecodeAV1PictureInfoKHR;
-typedef struct VkPresentRegionsKHR +typedef struct VkVideoDecodeAV1ProfileInfoKHR { VkStructureType sType; const void *pNext; - uint32_t swapchainCount; - const VkPresentRegionKHR *pRegions; -} VkPresentRegionsKHR; + StdVideoAV1Profile stdProfile; + VkBool32 filmGrainSupport; +} VkVideoDecodeAV1ProfileInfoKHR;
-typedef struct VkPushDescriptorSetInfo +typedef struct VkVideoDecodeAV1SessionParametersCreateInfoKHR { VkStructureType sType; const void *pNext; - VkShaderStageFlags stageFlags; - VkPipelineLayout WINE_VK_ALIGN(8) layout; - uint32_t set; - uint32_t descriptorWriteCount; - const VkWriteDescriptorSet *pDescriptorWrites; -} VkPushDescriptorSetInfo; -typedef VkPushDescriptorSetInfo VkPushDescriptorSetInfoKHR; + const StdVideoAV1SequenceHeader *pStdSequenceHeader; +} VkVideoDecodeAV1SessionParametersCreateInfoKHR;
-typedef struct VkRenderPassCreateInfo +typedef struct VkVideoDecodeCapabilitiesKHR { VkStructureType sType; - const void *pNext; - VkRenderPassCreateFlags flags; - uint32_t attachmentCount; - const VkAttachmentDescription *pAttachments; - uint32_t subpassCount; - const VkSubpassDescription *pSubpasses; - uint32_t dependencyCount; - const VkSubpassDependency *pDependencies; -} VkRenderPassCreateInfo; + void *pNext; + VkVideoDecodeCapabilityFlagsKHR flags; +} VkVideoDecodeCapabilitiesKHR;
-typedef struct VkRenderPassCreateInfo2 +typedef struct VkVideoDecodeH264CapabilitiesKHR { VkStructureType sType; - const void *pNext; - VkRenderPassCreateFlags flags; - uint32_t attachmentCount; - const VkAttachmentDescription2 *pAttachments; - uint32_t subpassCount; - const VkSubpassDescription2 *pSubpasses; - uint32_t dependencyCount; - const VkSubpassDependency2 *pDependencies; - uint32_t correlatedViewMaskCount; - const uint32_t *pCorrelatedViewMasks; -} VkRenderPassCreateInfo2; -typedef VkRenderPassCreateInfo2 VkRenderPassCreateInfo2KHR; + void *pNext; + StdVideoH264LevelIdc maxLevelIdc; + VkOffset2D fieldOffsetGranularity; +} VkVideoDecodeH264CapabilitiesKHR;
-typedef struct VkRenderPassCreationFeedbackCreateInfoEXT +typedef struct VkVideoDecodeH264DpbSlotInfoKHR { VkStructureType sType; const void *pNext; - VkRenderPassCreationFeedbackInfoEXT *pRenderPassFeedback; -} VkRenderPassCreationFeedbackCreateInfoEXT; + const StdVideoDecodeH264ReferenceInfo *pStdReferenceInfo; +} VkVideoDecodeH264DpbSlotInfoKHR;
-typedef struct VkRenderPassSampleLocationsBeginInfoEXT +typedef struct VkVideoDecodeH264PictureInfoKHR { VkStructureType sType; const void *pNext; - uint32_t attachmentInitialSampleLocationsCount; - const VkAttachmentSampleLocationsEXT *pAttachmentInitialSampleLocations; - uint32_t postSubpassSampleLocationsCount; - const VkSubpassSampleLocationsEXT *pPostSubpassSampleLocations; -} VkRenderPassSampleLocationsBeginInfoEXT; + const StdVideoDecodeH264PictureInfo *pStdPictureInfo; + uint32_t sliceCount; + const uint32_t *pSliceOffsets; +} VkVideoDecodeH264PictureInfoKHR;
-typedef struct VkRenderPassStripeBeginInfoARM +typedef struct VkVideoDecodeH264ProfileInfoKHR { VkStructureType sType; const void *pNext; - uint32_t stripeInfoCount; - const VkRenderPassStripeInfoARM *pStripeInfos; -} VkRenderPassStripeBeginInfoARM; + StdVideoH264ProfileIdc stdProfileIdc; + VkVideoDecodeH264PictureLayoutFlagBitsKHR pictureLayout; +} VkVideoDecodeH264ProfileInfoKHR;
-typedef struct VkRenderPassStripeSubmitInfoARM +typedef struct VkVideoDecodeH264SessionParametersCreateInfoKHR { VkStructureType sType; const void *pNext; - uint32_t stripeSemaphoreInfoCount; - const VkSemaphoreSubmitInfo *pStripeSemaphoreInfos; -} VkRenderPassStripeSubmitInfoARM; + uint32_t maxStdSPSCount; + uint32_t maxStdPPSCount; + const VkVideoDecodeH264SessionParametersAddInfoKHR *pParametersAddInfo; +} VkVideoDecodeH264SessionParametersCreateInfoKHR;
-typedef struct VkRenderPassSubpassFeedbackCreateInfoEXT +typedef struct VkVideoDecodeInfoKHR { VkStructureType sType; const void *pNext; - VkRenderPassSubpassFeedbackInfoEXT *pSubpassFeedback; -} VkRenderPassSubpassFeedbackCreateInfoEXT; + VkVideoDecodeFlagsKHR flags; + VkBuffer WINE_VK_ALIGN(8) srcBuffer; + VkDeviceSize WINE_VK_ALIGN(8) srcBufferOffset; + VkDeviceSize WINE_VK_ALIGN(8) srcBufferRange; + VkVideoPictureResourceInfoKHR WINE_VK_ALIGN(8) dstPictureResource; + const VkVideoReferenceSlotInfoKHR *pSetupReferenceSlot; + uint32_t referenceSlotCount; + const VkVideoReferenceSlotInfoKHR *pReferenceSlots; +} VkVideoDecodeInfoKHR;
-typedef struct VkResolveImageInfo2 +typedef struct VkVideoDecodeUsageInfoKHR { VkStructureType sType; const void *pNext; - VkImage WINE_VK_ALIGN(8) srcImage; - VkImageLayout srcImageLayout; - VkImage WINE_VK_ALIGN(8) dstImage; - VkImageLayout dstImageLayout; - uint32_t regionCount; - const VkImageResolve2 *pRegions; -} VkResolveImageInfo2; -typedef VkResolveImageInfo2 VkResolveImageInfo2KHR; + VkVideoDecodeUsageFlagsKHR videoUsageHints; +} VkVideoDecodeUsageInfoKHR;
-typedef struct VkSparseBufferMemoryBindInfo +typedef struct VkVideoDecodeVP9CapabilitiesKHR { - VkBuffer WINE_VK_ALIGN(8) buffer; - uint32_t bindCount; - const VkSparseMemoryBind *pBinds; -} VkSparseBufferMemoryBindInfo; + VkStructureType sType; + void *pNext; + StdVideoVP9Level maxLevel; +} VkVideoDecodeVP9CapabilitiesKHR;
-typedef struct VkSparseImageOpaqueMemoryBindInfo +typedef struct VkVideoDecodeVP9PictureInfoKHR { - VkImage WINE_VK_ALIGN(8) image; - uint32_t bindCount; - const VkSparseMemoryBind *pBinds; -} VkSparseImageOpaqueMemoryBindInfo; + VkStructureType sType; + const void *pNext; + const StdVideoDecodeVP9PictureInfo *pStdPictureInfo; + int32_t referenceNameSlotIndices[VK_MAX_VIDEO_VP9_REFERENCES_PER_FRAME_KHR]; + uint32_t uncompressedHeaderOffset; + uint32_t compressedHeaderOffset; + uint32_t tilesOffset; +} VkVideoDecodeVP9PictureInfoKHR;
-typedef struct VkSpecializationInfo +typedef struct VkVideoDecodeVP9ProfileInfoKHR { - uint32_t mapEntryCount; - const VkSpecializationMapEntry *pMapEntries; - size_t dataSize; - const void *pData; -} VkSpecializationInfo; + VkStructureType sType; + const void *pNext; + StdVideoVP9Profile stdProfile; +} VkVideoDecodeVP9ProfileInfoKHR;
-typedef struct VkSurfaceCapabilities2KHR +typedef struct VkVideoEncodeAV1CapabilitiesKHR { VkStructureType sType; void *pNext; - VkSurfaceCapabilitiesKHR surfaceCapabilities; -} VkSurfaceCapabilities2KHR; + VkVideoEncodeAV1CapabilityFlagsKHR flags; + StdVideoAV1Level maxLevel; + VkExtent2D codedPictureAlignment; + VkExtent2D maxTiles; + VkExtent2D minTileSize; + VkExtent2D maxTileSize; + VkVideoEncodeAV1SuperblockSizeFlagsKHR superblockSizes; + uint32_t maxSingleReferenceCount; + uint32_t singleReferenceNameMask; + uint32_t maxUnidirectionalCompoundReferenceCount; + uint32_t maxUnidirectionalCompoundGroup1ReferenceCount; + uint32_t unidirectionalCompoundReferenceNameMask; + uint32_t maxBidirectionalCompoundReferenceCount; + uint32_t maxBidirectionalCompoundGroup1ReferenceCount; + uint32_t maxBidirectionalCompoundGroup2ReferenceCount; + uint32_t bidirectionalCompoundReferenceNameMask; + uint32_t maxTemporalLayerCount; + uint32_t maxSpatialLayerCount; + uint32_t maxOperatingPoints; + uint32_t minQIndex; + uint32_t maxQIndex; + VkBool32 prefersGopRemainingFrames; + VkBool32 requiresGopRemainingFrames; + VkVideoEncodeAV1StdFlagsKHR stdSyntaxFlags; +} VkVideoEncodeAV1CapabilitiesKHR;
-typedef struct VkSurfaceFormat2KHR +typedef struct VkVideoEncodeAV1DpbSlotInfoKHR { VkStructureType sType; - void *pNext; - VkSurfaceFormatKHR surfaceFormat; -} VkSurfaceFormat2KHR; + const void *pNext; + const StdVideoEncodeAV1ReferenceInfo *pStdReferenceInfo; +} VkVideoEncodeAV1DpbSlotInfoKHR;
-typedef struct VkTensorCreateInfoARM +typedef struct VkVideoEncodeAV1GopRemainingFrameInfoKHR { VkStructureType sType; const void *pNext; - VkTensorCreateFlagsARM WINE_VK_ALIGN(8) flags; - const VkTensorDescriptionARM *pDescription; - VkSharingMode sharingMode; - uint32_t queueFamilyIndexCount; - const uint32_t *pQueueFamilyIndices; -} VkTensorCreateInfoARM; + VkBool32 useGopRemainingFrames; + uint32_t gopRemainingIntra; + uint32_t gopRemainingPredictive; + uint32_t gopRemainingBipredictive; +} VkVideoEncodeAV1GopRemainingFrameInfoKHR;
-typedef struct VkTensorDependencyInfoARM +typedef struct VkVideoEncodeAV1PictureInfoKHR { VkStructureType sType; const void *pNext; - uint32_t tensorMemoryBarrierCount; - const VkTensorMemoryBarrierARM *pTensorMemoryBarriers; -} VkTensorDependencyInfoARM; + VkVideoEncodeAV1PredictionModeKHR predictionMode; + VkVideoEncodeAV1RateControlGroupKHR rateControlGroup; + uint32_t constantQIndex; + const StdVideoEncodeAV1PictureInfo *pStdPictureInfo; + int32_t referenceNameSlotIndices[VK_MAX_VIDEO_AV1_REFERENCES_PER_FRAME_KHR]; + VkBool32 primaryReferenceCdfOnly; + VkBool32 generateObuExtensionHeader; +} VkVideoEncodeAV1PictureInfoKHR;
-typedef struct VkVideoBeginCodingInfoKHR +typedef struct VkVideoEncodeAV1ProfileInfoKHR { VkStructureType sType; const void *pNext; - VkVideoBeginCodingFlagsKHR flags; - VkVideoSessionKHR WINE_VK_ALIGN(8) videoSession; - VkVideoSessionParametersKHR WINE_VK_ALIGN(8) videoSessionParameters; - uint32_t referenceSlotCount; - const VkVideoReferenceSlotInfoKHR *pReferenceSlots; -} VkVideoBeginCodingInfoKHR; + StdVideoAV1Profile stdProfile; +} VkVideoEncodeAV1ProfileInfoKHR;
-typedef struct VkVideoDecodeAV1DpbSlotInfoKHR +typedef struct VkVideoEncodeAV1QualityLevelPropertiesKHR { VkStructureType sType; - const void *pNext; - const StdVideoDecodeAV1ReferenceInfo *pStdReferenceInfo; -} VkVideoDecodeAV1DpbSlotInfoKHR; + void *pNext; + VkVideoEncodeAV1RateControlFlagsKHR preferredRateControlFlags; + uint32_t preferredGopFrameCount; + uint32_t preferredKeyFramePeriod; + uint32_t preferredConsecutiveBipredictiveFrameCount; + uint32_t preferredTemporalLayerCount; + VkVideoEncodeAV1QIndexKHR preferredConstantQIndex; + uint32_t preferredMaxSingleReferenceCount; + uint32_t preferredSingleReferenceNameMask; + uint32_t preferredMaxUnidirectionalCompoundReferenceCount; + uint32_t preferredMaxUnidirectionalCompoundGroup1ReferenceCount; + uint32_t preferredUnidirectionalCompoundReferenceNameMask; + uint32_t preferredMaxBidirectionalCompoundReferenceCount; + uint32_t preferredMaxBidirectionalCompoundGroup1ReferenceCount; + uint32_t preferredMaxBidirectionalCompoundGroup2ReferenceCount; + uint32_t preferredBidirectionalCompoundReferenceNameMask; +} VkVideoEncodeAV1QualityLevelPropertiesKHR;
-typedef struct VkVideoDecodeAV1PictureInfoKHR +typedef struct VkVideoEncodeAV1QuantizationMapCapabilitiesKHR { VkStructureType sType; - const void *pNext; - const StdVideoDecodeAV1PictureInfo *pStdPictureInfo; - int32_t referenceNameSlotIndices[VK_MAX_VIDEO_AV1_REFERENCES_PER_FRAME_KHR]; - uint32_t frameHeaderOffset; - uint32_t tileCount; - const uint32_t *pTileOffsets; - const uint32_t *pTileSizes; -} VkVideoDecodeAV1PictureInfoKHR; + void *pNext; + int32_t minQIndexDelta; + int32_t maxQIndexDelta; +} VkVideoEncodeAV1QuantizationMapCapabilitiesKHR;
-typedef struct VkVideoDecodeH264DpbSlotInfoKHR +typedef struct VkVideoEncodeAV1RateControlInfoKHR { VkStructureType sType; const void *pNext; - const StdVideoDecodeH264ReferenceInfo *pStdReferenceInfo; -} VkVideoDecodeH264DpbSlotInfoKHR; + VkVideoEncodeAV1RateControlFlagsKHR flags; + uint32_t gopFrameCount; + uint32_t keyFramePeriod; + uint32_t consecutiveBipredictiveFrameCount; + uint32_t temporalLayerCount; +} VkVideoEncodeAV1RateControlInfoKHR;
-typedef struct VkVideoDecodeH264PictureInfoKHR +typedef struct VkVideoEncodeAV1RateControlLayerInfoKHR { VkStructureType sType; const void *pNext; - const StdVideoDecodeH264PictureInfo *pStdPictureInfo; - uint32_t sliceCount; - const uint32_t *pSliceOffsets; -} VkVideoDecodeH264PictureInfoKHR; + VkBool32 useMinQIndex; + VkVideoEncodeAV1QIndexKHR minQIndex; + VkBool32 useMaxQIndex; + VkVideoEncodeAV1QIndexKHR maxQIndex; + VkBool32 useMaxFrameSize; + VkVideoEncodeAV1FrameSizeKHR maxFrameSize; +} VkVideoEncodeAV1RateControlLayerInfoKHR;
-typedef struct VkVideoDecodeInfoKHR +typedef struct VkVideoEncodeAV1SessionCreateInfoKHR { VkStructureType sType; const void *pNext; - VkVideoDecodeFlagsKHR flags; - VkBuffer WINE_VK_ALIGN(8) srcBuffer; - VkDeviceSize WINE_VK_ALIGN(8) srcBufferOffset; - VkDeviceSize WINE_VK_ALIGN(8) srcBufferRange; - VkVideoPictureResourceInfoKHR WINE_VK_ALIGN(8) dstPictureResource; - const VkVideoReferenceSlotInfoKHR *pSetupReferenceSlot; - uint32_t referenceSlotCount; - const VkVideoReferenceSlotInfoKHR *pReferenceSlots; -} VkVideoDecodeInfoKHR; + VkBool32 useMaxLevel; + StdVideoAV1Level maxLevel; +} VkVideoEncodeAV1SessionCreateInfoKHR;
-typedef struct VkVideoEncodeAV1DpbSlotInfoKHR +typedef struct VkVideoEncodeAV1SessionParametersCreateInfoKHR { VkStructureType sType; const void *pNext; - const StdVideoEncodeAV1ReferenceInfo *pStdReferenceInfo; -} VkVideoEncodeAV1DpbSlotInfoKHR; + const StdVideoAV1SequenceHeader *pStdSequenceHeader; + const StdVideoEncodeAV1DecoderModelInfo *pStdDecoderModelInfo; + uint32_t stdOperatingPointCount; + const StdVideoEncodeAV1OperatingPointInfo *pStdOperatingPoints; +} VkVideoEncodeAV1SessionParametersCreateInfoKHR; + +typedef struct VkVideoEncodeCapabilitiesKHR +{ + VkStructureType sType; + void *pNext; + VkVideoEncodeCapabilityFlagsKHR flags; + VkVideoEncodeRateControlModeFlagsKHR rateControlModes; + uint32_t maxRateControlLayers; + uint64_t WINE_VK_ALIGN(8) maxBitrate; + uint32_t maxQualityLevels; + VkExtent2D encodeInputPictureGranularity; + VkVideoEncodeFeedbackFlagsKHR supportedEncodeFeedbackFlags; +} VkVideoEncodeCapabilitiesKHR;
-typedef struct VkVideoEncodeAV1PictureInfoKHR +typedef struct VkVideoEncodeH264CapabilitiesKHR { VkStructureType sType; - const void *pNext; - VkVideoEncodeAV1PredictionModeKHR predictionMode; - VkVideoEncodeAV1RateControlGroupKHR rateControlGroup; - uint32_t constantQIndex; - const StdVideoEncodeAV1PictureInfo *pStdPictureInfo; - int32_t referenceNameSlotIndices[VK_MAX_VIDEO_AV1_REFERENCES_PER_FRAME_KHR]; - VkBool32 primaryReferenceCdfOnly; - VkBool32 generateObuExtensionHeader; -} VkVideoEncodeAV1PictureInfoKHR; + void *pNext; + VkVideoEncodeH264CapabilityFlagsKHR flags; + StdVideoH264LevelIdc maxLevelIdc; + uint32_t maxSliceCount; + uint32_t maxPPictureL0ReferenceCount; + uint32_t maxBPictureL0ReferenceCount; + uint32_t maxL1ReferenceCount; + uint32_t maxTemporalLayerCount; + VkBool32 expectDyadicTemporalLayerPattern; + int32_t minQp; + int32_t maxQp; + VkBool32 prefersGopRemainingFrames; + VkBool32 requiresGopRemainingFrames; + VkVideoEncodeH264StdFlagsKHR stdSyntaxFlags; +} VkVideoEncodeH264CapabilitiesKHR;
typedef struct VkVideoEncodeH264DpbSlotInfoKHR { @@ -17879,644 +18111,412 @@ typedef struct VkVideoEncodeH264DpbSlotInfoKHR const StdVideoEncodeH264ReferenceInfo *pStdReferenceInfo; } VkVideoEncodeH264DpbSlotInfoKHR;
-typedef struct VkVideoEncodeInfoKHR +typedef struct VkVideoEncodeH264GopRemainingFrameInfoKHR { VkStructureType sType; const void *pNext; - VkVideoEncodeFlagsKHR flags; - VkBuffer WINE_VK_ALIGN(8) dstBuffer; - VkDeviceSize WINE_VK_ALIGN(8) dstBufferOffset; - VkDeviceSize WINE_VK_ALIGN(8) dstBufferRange; - VkVideoPictureResourceInfoKHR WINE_VK_ALIGN(8) srcPictureResource; - const VkVideoReferenceSlotInfoKHR *pSetupReferenceSlot; - uint32_t referenceSlotCount; - const VkVideoReferenceSlotInfoKHR *pReferenceSlots; - uint32_t precedingExternallyEncodedBytes; -} VkVideoEncodeInfoKHR; + VkBool32 useGopRemainingFrames; + uint32_t gopRemainingI; + uint32_t gopRemainingP; + uint32_t gopRemainingB; +} VkVideoEncodeH264GopRemainingFrameInfoKHR;
-typedef struct VkVideoEncodeRateControlInfoKHR +typedef struct VkVideoEncodeH264PictureInfoKHR { VkStructureType sType; const void *pNext; - VkVideoEncodeRateControlFlagsKHR flags; - VkVideoEncodeRateControlModeFlagBitsKHR rateControlMode; - uint32_t layerCount; - const VkVideoEncodeRateControlLayerInfoKHR *pLayers; - uint32_t virtualBufferSizeInMs; - uint32_t initialVirtualBufferSizeInMs; -} VkVideoEncodeRateControlInfoKHR; - -typedef struct StdVideoAV1SequenceHeader -{ - StdVideoAV1SequenceHeaderFlags flags; - StdVideoAV1Profile seq_profile; - uint8_t frame_width_bits_minus_1; - uint8_t frame_height_bits_minus_1; - uint16_t max_frame_width_minus_1; - uint16_t max_frame_height_minus_1; - uint8_t delta_frame_id_length_minus_2; - uint8_t additional_frame_id_length_minus_1; - uint8_t order_hint_bits_minus_1; - uint8_t seq_force_integer_mv; - uint8_t seq_force_screen_content_tools; - uint8_t reserved1[5]; - const StdVideoAV1ColorConfig *pColorConfig; - const StdVideoAV1TimingInfo *pTimingInfo; -} StdVideoAV1SequenceHeader; - -typedef struct StdVideoDecodeVP9PictureInfo -{ - StdVideoDecodeVP9PictureInfoFlags flags; - StdVideoVP9Profile profile; - StdVideoVP9FrameType frame_type; - uint8_t frame_context_idx; - uint8_t reset_frame_context; - uint8_t refresh_frame_flags; - uint8_t ref_frame_sign_bias_mask; - StdVideoVP9InterpolationFilter interpolation_filter; - uint8_t base_q_idx; - int8_t delta_q_y_dc; - int8_t delta_q_uv_dc; - int8_t delta_q_uv_ac; - uint8_t tile_cols_log2; - uint8_t tile_rows_log2; - uint16_t reserved1[3]; - const StdVideoVP9ColorConfig *pColorConfig; - const StdVideoVP9LoopFilter *pLoopFilter; - const StdVideoVP9Segmentation *pSegmentation; -} StdVideoDecodeVP9PictureInfo; - -typedef struct StdVideoEncodeH264PictureInfo -{ - StdVideoEncodeH264PictureInfoFlags flags; - uint8_t seq_parameter_set_id; - uint8_t pic_parameter_set_id; - uint16_t idr_pic_id; - StdVideoH264PictureType primary_pic_type; - uint32_t frame_num; - int32_t PicOrderCnt; - uint8_t temporal_id; - uint8_t reserved1[3]; - const StdVideoEncodeH264ReferenceListsInfo *pRefLists; -} StdVideoEncodeH264PictureInfo; - -typedef struct StdVideoEncodeH264SliceHeader -{ - StdVideoEncodeH264SliceHeaderFlags flags; - uint32_t first_mb_in_slice; - StdVideoH264SliceType slice_type; - int8_t slice_alpha_c0_offset_div2; - int8_t slice_beta_offset_div2; - int8_t slice_qp_delta; - uint8_t reserved1; - StdVideoH264CabacInitIdc cabac_init_idc; - StdVideoH264DisableDeblockingFilterIdc disable_deblocking_filter_idc; - const StdVideoEncodeH264WeightTable *pWeightTable; -} StdVideoEncodeH264SliceHeader; - -typedef struct StdVideoEncodeH265PictureInfo -{ - StdVideoEncodeH265PictureInfoFlags flags; - StdVideoH265PictureType pic_type; - uint8_t sps_video_parameter_set_id; - uint8_t pps_seq_parameter_set_id; - uint8_t pps_pic_parameter_set_id; - uint8_t short_term_ref_pic_set_idx; - int32_t PicOrderCntVal; - uint8_t TemporalId; - uint8_t reserved1[7]; - const StdVideoEncodeH265ReferenceListsInfo *pRefLists; - const StdVideoH265ShortTermRefPicSet *pShortTermRefPicSet; - const StdVideoEncodeH265LongTermRefPics *pLongTermRefPics; -} StdVideoEncodeH265PictureInfo; + uint32_t naluSliceEntryCount; + const VkVideoEncodeH264NaluSliceInfoKHR *pNaluSliceEntries; + const StdVideoEncodeH264PictureInfo *pStdPictureInfo; + VkBool32 generatePrefixNalu; +} VkVideoEncodeH264PictureInfoKHR;
-typedef struct StdVideoEncodeH265SliceSegmentHeader +typedef struct VkVideoEncodeH264ProfileInfoKHR { - StdVideoEncodeH265SliceSegmentHeaderFlags flags; - StdVideoH265SliceType slice_type; - uint32_t slice_segment_address; - uint8_t collocated_ref_idx; - uint8_t MaxNumMergeCand; - int8_t slice_cb_qp_offset; - int8_t slice_cr_qp_offset; - int8_t slice_beta_offset_div2; - int8_t slice_tc_offset_div2; - int8_t slice_act_y_qp_offset; - int8_t slice_act_cb_qp_offset; - int8_t slice_act_cr_qp_offset; - int8_t slice_qp_delta; - uint16_t reserved1; - const StdVideoEncodeH265WeightTable *pWeightTable; -} StdVideoEncodeH265SliceSegmentHeader; + VkStructureType sType; + const void *pNext; + StdVideoH264ProfileIdc stdProfileIdc; +} VkVideoEncodeH264ProfileInfoKHR;
-typedef struct StdVideoH264SequenceParameterSet +typedef struct VkVideoEncodeH264QualityLevelPropertiesKHR { - StdVideoH264SpsFlags flags; - StdVideoH264ProfileIdc profile_idc; - StdVideoH264LevelIdc level_idc; - StdVideoH264ChromaFormatIdc chroma_format_idc; - uint8_t seq_parameter_set_id; - uint8_t bit_depth_luma_minus8; - uint8_t bit_depth_chroma_minus8; - uint8_t log2_max_frame_num_minus4; - StdVideoH264PocType pic_order_cnt_type; - int32_t offset_for_non_ref_pic; - int32_t offset_for_top_to_bottom_field; - uint8_t log2_max_pic_order_cnt_lsb_minus4; - uint8_t num_ref_frames_in_pic_order_cnt_cycle; - uint8_t max_num_ref_frames; - uint8_t reserved1; - uint32_t pic_width_in_mbs_minus1; - uint32_t pic_height_in_map_units_minus1; - uint32_t frame_crop_left_offset; - uint32_t frame_crop_right_offset; - uint32_t frame_crop_top_offset; - uint32_t frame_crop_bottom_offset; - uint32_t reserved2; - const int32_t *pOffsetForRefFrame; - const StdVideoH264ScalingLists *pScalingLists; - const StdVideoH264SequenceParameterSetVui *pSequenceParameterSetVui; -} StdVideoH264SequenceParameterSet; + VkStructureType sType; + void *pNext; + VkVideoEncodeH264RateControlFlagsKHR preferredRateControlFlags; + uint32_t preferredGopFrameCount; + uint32_t preferredIdrPeriod; + uint32_t preferredConsecutiveBFrameCount; + uint32_t preferredTemporalLayerCount; + VkVideoEncodeH264QpKHR preferredConstantQp; + uint32_t preferredMaxL0ReferenceCount; + uint32_t preferredMaxL1ReferenceCount; + VkBool32 preferredStdEntropyCodingModeFlag; +} VkVideoEncodeH264QualityLevelPropertiesKHR;
-typedef struct StdVideoH265SequenceParameterSet +typedef struct VkVideoEncodeH264QuantizationMapCapabilitiesKHR { - StdVideoH265SpsFlags flags; - StdVideoH265ChromaFormatIdc chroma_format_idc; - uint32_t pic_width_in_luma_samples; - uint32_t pic_height_in_luma_samples; - uint8_t sps_video_parameter_set_id; - uint8_t sps_max_sub_layers_minus1; - uint8_t sps_seq_parameter_set_id; - uint8_t bit_depth_luma_minus8; - uint8_t bit_depth_chroma_minus8; - uint8_t log2_max_pic_order_cnt_lsb_minus4; - uint8_t log2_min_luma_coding_block_size_minus3; - uint8_t log2_diff_max_min_luma_coding_block_size; - uint8_t log2_min_luma_transform_block_size_minus2; - uint8_t log2_diff_max_min_luma_transform_block_size; - uint8_t max_transform_hierarchy_depth_inter; - uint8_t max_transform_hierarchy_depth_intra; - uint8_t num_short_term_ref_pic_sets; - uint8_t num_long_term_ref_pics_sps; - uint8_t pcm_sample_bit_depth_luma_minus1; - uint8_t pcm_sample_bit_depth_chroma_minus1; - uint8_t log2_min_pcm_luma_coding_block_size_minus3; - uint8_t log2_diff_max_min_pcm_luma_coding_block_size; - uint8_t reserved1; - uint8_t reserved2; - uint8_t palette_max_size; - uint8_t delta_palette_max_predictor_size; - uint8_t motion_vector_resolution_control_idc; - uint8_t sps_num_palette_predictor_initializers_minus1; - uint32_t conf_win_left_offset; - uint32_t conf_win_right_offset; - uint32_t conf_win_top_offset; - uint32_t conf_win_bottom_offset; - const StdVideoH265ProfileTierLevel *pProfileTierLevel; - const StdVideoH265DecPicBufMgr *pDecPicBufMgr; - const StdVideoH265ScalingLists *pScalingLists; - const StdVideoH265ShortTermRefPicSet *pShortTermRefPicSet; - const StdVideoH265LongTermRefPicsSps *pLongTermRefPicsSps; - const StdVideoH265SequenceParameterSetVui *pSequenceParameterSetVui; - const StdVideoH265PredictorPaletteEntries *pPredictorPaletteEntries; -} StdVideoH265SequenceParameterSet; + VkStructureType sType; + void *pNext; + int32_t minQpDelta; + int32_t maxQpDelta; +} VkVideoEncodeH264QuantizationMapCapabilitiesKHR;
-typedef union VkAccelerationStructureGeometryDataKHR +typedef struct VkVideoEncodeH264RateControlInfoKHR { - VkAccelerationStructureGeometryTrianglesDataKHR WINE_VK_ALIGN(8) triangles; - VkAccelerationStructureGeometryAabbsDataKHR WINE_VK_ALIGN(8) aabbs; - VkAccelerationStructureGeometryInstancesDataKHR WINE_VK_ALIGN(8) instances; -} VkAccelerationStructureGeometryDataKHR; + VkStructureType sType; + const void *pNext; + VkVideoEncodeH264RateControlFlagsKHR flags; + uint32_t gopFrameCount; + uint32_t idrPeriod; + uint32_t consecutiveBFrameCount; + uint32_t temporalLayerCount; +} VkVideoEncodeH264RateControlInfoKHR;
-typedef struct VkAccelerationStructureGeometryKHR +typedef struct VkVideoEncodeH264RateControlLayerInfoKHR { VkStructureType sType; const void *pNext; - VkGeometryTypeKHR geometryType; - VkAccelerationStructureGeometryDataKHR WINE_VK_ALIGN(8) geometry; - VkGeometryFlagsKHR flags; -} VkAccelerationStructureGeometryKHR; + VkBool32 useMinQp; + VkVideoEncodeH264QpKHR minQp; + VkBool32 useMaxQp; + VkVideoEncodeH264QpKHR maxQp; + VkBool32 useMaxFrameSize; + VkVideoEncodeH264FrameSizeKHR maxFrameSize; +} VkVideoEncodeH264RateControlLayerInfoKHR;
-typedef struct VkAccelerationStructureInfoNV +typedef struct VkVideoEncodeH264SessionCreateInfoKHR { VkStructureType sType; const void *pNext; - VkAccelerationStructureTypeNV type; - VkBuildAccelerationStructureFlagsNV flags; - uint32_t instanceCount; - uint32_t geometryCount; - const VkGeometryNV *pGeometries; -} VkAccelerationStructureInfoNV; + VkBool32 useMaxLevelIdc; + StdVideoH264LevelIdc maxLevelIdc; +} VkVideoEncodeH264SessionCreateInfoKHR;
-typedef union VkAccelerationStructureMotionInstanceDataNV +typedef struct VkVideoEncodeH264SessionParametersCreateInfoKHR { - VkAccelerationStructureInstanceKHR WINE_VK_ALIGN(8) staticInstance; - VkAccelerationStructureMatrixMotionInstanceNV WINE_VK_ALIGN(8) matrixMotionInstance; - VkAccelerationStructureSRTMotionInstanceNV WINE_VK_ALIGN(8) srtMotionInstance; -} VkAccelerationStructureMotionInstanceDataNV; + VkStructureType sType; + const void *pNext; + uint32_t maxStdSPSCount; + uint32_t maxStdPPSCount; + const VkVideoEncodeH264SessionParametersAddInfoKHR *pParametersAddInfo; +} VkVideoEncodeH264SessionParametersCreateInfoKHR;
-typedef struct VkAccelerationStructureMotionInstanceNV +typedef struct VkVideoEncodeH264SessionParametersFeedbackInfoKHR { - VkAccelerationStructureMotionInstanceTypeNV type; - VkAccelerationStructureMotionInstanceFlagsNV flags; - VkAccelerationStructureMotionInstanceDataNV WINE_VK_ALIGN(8) data; -} VkAccelerationStructureMotionInstanceNV; + VkStructureType sType; + void *pNext; + VkBool32 hasStdSPSOverrides; + VkBool32 hasStdPPSOverrides; +} VkVideoEncodeH264SessionParametersFeedbackInfoKHR;
-typedef struct VkBindSparseInfo +typedef struct VkVideoEncodeH264SessionParametersGetInfoKHR { VkStructureType sType; const void *pNext; - uint32_t waitSemaphoreCount; - const VkSemaphore *pWaitSemaphores; - uint32_t bufferBindCount; - const VkSparseBufferMemoryBindInfo *pBufferBinds; - uint32_t imageOpaqueBindCount; - const VkSparseImageOpaqueMemoryBindInfo *pImageOpaqueBinds; - uint32_t imageBindCount; - const VkSparseImageMemoryBindInfo *pImageBinds; - uint32_t signalSemaphoreCount; - const VkSemaphore *pSignalSemaphores; -} VkBindSparseInfo; + VkBool32 writeStdSPS; + VkBool32 writeStdPPS; + uint32_t stdSPSId; + uint32_t stdPPSId; +} VkVideoEncodeH264SessionParametersGetInfoKHR;
-typedef struct VkBlitImageInfo2 +typedef struct VkVideoEncodeH265QuantizationMapCapabilitiesKHR +{ + VkStructureType sType; + void *pNext; + int32_t minQpDelta; + int32_t maxQpDelta; +} VkVideoEncodeH265QuantizationMapCapabilitiesKHR; + +typedef struct VkVideoEncodeInfoKHR { VkStructureType sType; const void *pNext; - VkImage WINE_VK_ALIGN(8) srcImage; - VkImageLayout srcImageLayout; - VkImage WINE_VK_ALIGN(8) dstImage; - VkImageLayout dstImageLayout; - uint32_t regionCount; - const VkImageBlit2 *pRegions; - VkFilter filter; -} VkBlitImageInfo2; -typedef VkBlitImageInfo2 VkBlitImageInfo2KHR; + VkVideoEncodeFlagsKHR flags; + VkBuffer WINE_VK_ALIGN(8) dstBuffer; + VkDeviceSize WINE_VK_ALIGN(8) dstBufferOffset; + VkDeviceSize WINE_VK_ALIGN(8) dstBufferRange; + VkVideoPictureResourceInfoKHR WINE_VK_ALIGN(8) srcPictureResource; + const VkVideoReferenceSlotInfoKHR *pSetupReferenceSlot; + uint32_t referenceSlotCount; + const VkVideoReferenceSlotInfoKHR *pReferenceSlots; + uint32_t precedingExternallyEncodedBytes; +} VkVideoEncodeInfoKHR;
-typedef struct VkClusterAccelerationStructureInputInfoNV +typedef struct VkVideoEncodeIntraRefreshCapabilitiesKHR { VkStructureType sType; void *pNext; - uint32_t maxAccelerationStructureCount; - VkBuildAccelerationStructureFlagsKHR flags; - VkClusterAccelerationStructureOpTypeNV opType; - VkClusterAccelerationStructureOpModeNV opMode; - VkClusterAccelerationStructureOpInputNV opInput; -} VkClusterAccelerationStructureInputInfoNV; + VkVideoEncodeIntraRefreshModeFlagsKHR intraRefreshModes; + uint32_t maxIntraRefreshCycleDuration; + uint32_t maxIntraRefreshActiveReferencePictures; + VkBool32 partitionIndependentIntraRefreshRegions; + VkBool32 nonRectangularIntraRefreshRegions; +} VkVideoEncodeIntraRefreshCapabilitiesKHR;
-typedef struct VkCopyImageInfo2 +typedef struct VkVideoEncodeIntraRefreshInfoKHR { VkStructureType sType; const void *pNext; - VkImage WINE_VK_ALIGN(8) srcImage; - VkImageLayout srcImageLayout; - VkImage WINE_VK_ALIGN(8) dstImage; - VkImageLayout dstImageLayout; - uint32_t regionCount; - const VkImageCopy2 *pRegions; -} VkCopyImageInfo2; -typedef VkCopyImageInfo2 VkCopyImageInfo2KHR; + uint32_t intraRefreshCycleDuration; + uint32_t intraRefreshIndex; +} VkVideoEncodeIntraRefreshInfoKHR;
-typedef struct VkCopyImageToImageInfo +typedef struct VkVideoEncodeQualityLevelInfoKHR { VkStructureType sType; const void *pNext; - VkHostImageCopyFlags flags; - VkImage WINE_VK_ALIGN(8) srcImage; - VkImageLayout srcImageLayout; - VkImage WINE_VK_ALIGN(8) dstImage; - VkImageLayout dstImageLayout; - uint32_t regionCount; - const VkImageCopy2 *pRegions; -} VkCopyImageToImageInfo; -typedef VkCopyImageToImageInfo VkCopyImageToImageInfoEXT; + uint32_t qualityLevel; +} VkVideoEncodeQualityLevelInfoKHR;
-typedef struct VkCopyImageToMemoryInfo +typedef struct VkVideoEncodeQualityLevelPropertiesKHR { VkStructureType sType; - const void *pNext; - VkHostImageCopyFlags flags; - VkImage WINE_VK_ALIGN(8) srcImage; - VkImageLayout srcImageLayout; - uint32_t regionCount; - const VkImageToMemoryCopy *pRegions; -} VkCopyImageToMemoryInfo; -typedef VkCopyImageToMemoryInfo VkCopyImageToMemoryInfoEXT; + void *pNext; + VkVideoEncodeRateControlModeFlagBitsKHR preferredRateControlMode; + uint32_t preferredRateControlLayerCount; +} VkVideoEncodeQualityLevelPropertiesKHR;
-typedef struct VkCopyMemoryToImageInfo +typedef struct VkVideoEncodeQuantizationMapCapabilitiesKHR { VkStructureType sType; - const void *pNext; - VkHostImageCopyFlags flags; - VkImage WINE_VK_ALIGN(8) dstImage; - VkImageLayout dstImageLayout; - uint32_t regionCount; - const VkMemoryToImageCopy *pRegions; -} VkCopyMemoryToImageInfo; -typedef VkCopyMemoryToImageInfo VkCopyMemoryToImageInfoEXT; + void *pNext; + VkExtent2D maxQuantizationMapExtent; +} VkVideoEncodeQuantizationMapCapabilitiesKHR;
-typedef struct VkDataGraphPipelineShaderModuleCreateInfoARM +typedef struct VkVideoEncodeQuantizationMapInfoKHR { VkStructureType sType; const void *pNext; - VkShaderModule WINE_VK_ALIGN(8) module; - const char *pName; - const VkSpecializationInfo *pSpecializationInfo; - uint32_t constantCount; - const VkDataGraphPipelineConstantARM *pConstants; -} VkDataGraphPipelineShaderModuleCreateInfoARM; + VkImageView WINE_VK_ALIGN(8) quantizationMap; + VkExtent2D quantizationMapExtent; +} VkVideoEncodeQuantizationMapInfoKHR;
-typedef struct VkDependencyInfo +typedef struct VkVideoEncodeQuantizationMapSessionParametersCreateInfoKHR { VkStructureType sType; const void *pNext; - VkDependencyFlags dependencyFlags; - uint32_t memoryBarrierCount; - const VkMemoryBarrier2 *pMemoryBarriers; - uint32_t bufferMemoryBarrierCount; - const VkBufferMemoryBarrier2 *pBufferMemoryBarriers; - uint32_t imageMemoryBarrierCount; - const VkImageMemoryBarrier2 *pImageMemoryBarriers; -} VkDependencyInfo; -typedef VkDependencyInfo VkDependencyInfoKHR; + VkExtent2D quantizationMapTexelSize; +} VkVideoEncodeQuantizationMapSessionParametersCreateInfoKHR;
-typedef struct VkDeviceTensorMemoryRequirementsARM +typedef struct VkVideoEncodeRateControlInfoKHR { VkStructureType sType; const void *pNext; - const VkTensorCreateInfoARM *pCreateInfo; -} VkDeviceTensorMemoryRequirementsARM; + VkVideoEncodeRateControlFlagsKHR flags; + VkVideoEncodeRateControlModeFlagBitsKHR rateControlMode; + uint32_t layerCount; + const VkVideoEncodeRateControlLayerInfoKHR *pLayers; + uint32_t virtualBufferSizeInMs; + uint32_t initialVirtualBufferSizeInMs; +} VkVideoEncodeRateControlInfoKHR;
-typedef struct VkIndirectCommandsLayoutTokenEXT +typedef struct VkVideoEncodeSessionIntraRefreshCreateInfoKHR { VkStructureType sType; const void *pNext; - VkIndirectCommandsTokenTypeEXT type; - VkIndirectCommandsTokenDataEXT data; - uint32_t offset; -} VkIndirectCommandsLayoutTokenEXT; + VkVideoEncodeIntraRefreshModeFlagBitsKHR intraRefreshMode; +} VkVideoEncodeSessionIntraRefreshCreateInfoKHR;
-typedef union VkIndirectExecutionSetInfoEXT +typedef struct VkVideoEncodeSessionParametersFeedbackInfoKHR { - const VkIndirectExecutionSetPipelineInfoEXT *pPipelineInfo; - const VkIndirectExecutionSetShaderInfoEXT *pShaderInfo; -} VkIndirectExecutionSetInfoEXT; + VkStructureType sType; + void *pNext; + VkBool32 hasOverrides; +} VkVideoEncodeSessionParametersFeedbackInfoKHR;
-typedef struct VkPipelineShaderStageCreateInfo +typedef struct VkVideoEncodeSessionParametersGetInfoKHR { VkStructureType sType; const void *pNext; - VkPipelineShaderStageCreateFlags flags; - VkShaderStageFlagBits stage; - VkShaderModule WINE_VK_ALIGN(8) module; - const char *pName; - const VkSpecializationInfo *pSpecializationInfo; -} VkPipelineShaderStageCreateInfo; + VkVideoSessionParametersKHR WINE_VK_ALIGN(8) videoSessionParameters; +} VkVideoEncodeSessionParametersGetInfoKHR;
-typedef struct VkRayTracingPipelineCreateInfoKHR +typedef struct VkVideoEncodeUsageInfoKHR { VkStructureType sType; const void *pNext; - VkPipelineCreateFlags flags; - uint32_t stageCount; - const VkPipelineShaderStageCreateInfo *pStages; - uint32_t groupCount; - const VkRayTracingShaderGroupCreateInfoKHR *pGroups; - uint32_t maxPipelineRayRecursionDepth; - const VkPipelineLibraryCreateInfoKHR *pLibraryInfo; - const VkRayTracingPipelineInterfaceCreateInfoKHR *pLibraryInterface; - const VkPipelineDynamicStateCreateInfo *pDynamicState; - VkPipelineLayout WINE_VK_ALIGN(8) layout; - VkPipeline WINE_VK_ALIGN(8) basePipelineHandle; - int32_t basePipelineIndex; -} VkRayTracingPipelineCreateInfoKHR; + VkVideoEncodeUsageFlagsKHR videoUsageHints; + VkVideoEncodeContentFlagsKHR videoContentHints; + VkVideoEncodeTuningModeKHR tuningMode; +} VkVideoEncodeUsageInfoKHR;
-typedef struct VkRayTracingPipelineCreateInfoNV +typedef struct VkVideoEndCodingInfoKHR { VkStructureType sType; const void *pNext; - VkPipelineCreateFlags flags; - uint32_t stageCount; - const VkPipelineShaderStageCreateInfo *pStages; - uint32_t groupCount; - const VkRayTracingShaderGroupCreateInfoNV *pGroups; - uint32_t maxRecursionDepth; - VkPipelineLayout WINE_VK_ALIGN(8) layout; - VkPipeline WINE_VK_ALIGN(8) basePipelineHandle; - int32_t basePipelineIndex; -} VkRayTracingPipelineCreateInfoNV; + VkVideoEndCodingFlagsKHR flags; +} VkVideoEndCodingInfoKHR;
-typedef struct VkShaderCreateInfoEXT +typedef struct VkVideoFormatAV1QuantizationMapPropertiesKHR { VkStructureType sType; - const void *pNext; - VkShaderCreateFlagsEXT flags; - VkShaderStageFlagBits stage; - VkShaderStageFlags nextStage; - VkShaderCodeTypeEXT codeType; - size_t codeSize; - const void *pCode; - const char *pName; - uint32_t setLayoutCount; - const VkDescriptorSetLayout *pSetLayouts; - uint32_t pushConstantRangeCount; - const VkPushConstantRange *pPushConstantRanges; - const VkSpecializationInfo *pSpecializationInfo; -} VkShaderCreateInfoEXT; + void *pNext; + VkVideoEncodeAV1SuperblockSizeFlagsKHR compatibleSuperblockSizes; +} VkVideoFormatAV1QuantizationMapPropertiesKHR;
-typedef struct VkVideoDecodeAV1SessionParametersCreateInfoKHR +typedef struct VkVideoFormatH265QuantizationMapPropertiesKHR { VkStructureType sType; - const void *pNext; - const StdVideoAV1SequenceHeader *pStdSequenceHeader; -} VkVideoDecodeAV1SessionParametersCreateInfoKHR; + void *pNext; + VkVideoEncodeH265CtbSizeFlagsKHR compatibleCtbSizes; +} VkVideoFormatH265QuantizationMapPropertiesKHR;
-typedef struct VkVideoDecodeH264SessionParametersAddInfoKHR +typedef struct VkVideoFormatPropertiesKHR { VkStructureType sType; - const void *pNext; - uint32_t stdSPSCount; - const StdVideoH264SequenceParameterSet *pStdSPSs; - uint32_t stdPPSCount; - const StdVideoH264PictureParameterSet *pStdPPSs; -} VkVideoDecodeH264SessionParametersAddInfoKHR; + void *pNext; + VkFormat format; + VkComponentMapping componentMapping; + VkImageCreateFlags imageCreateFlags; + VkImageType imageType; + VkImageTiling imageTiling; + VkImageUsageFlags imageUsageFlags; +} VkVideoFormatPropertiesKHR;
-typedef struct VkVideoDecodeH264SessionParametersCreateInfoKHR +typedef struct VkVideoFormatQuantizationMapPropertiesKHR { VkStructureType sType; - const void *pNext; - uint32_t maxStdSPSCount; - uint32_t maxStdPPSCount; - const VkVideoDecodeH264SessionParametersAddInfoKHR *pParametersAddInfo; -} VkVideoDecodeH264SessionParametersCreateInfoKHR; + void *pNext; + VkExtent2D quantizationMapTexelSize; +} VkVideoFormatQuantizationMapPropertiesKHR;
-typedef struct VkVideoDecodeVP9PictureInfoKHR +typedef struct VkVideoInlineQueryInfoKHR { VkStructureType sType; const void *pNext; - const StdVideoDecodeVP9PictureInfo *pStdPictureInfo; - int32_t referenceNameSlotIndices[VK_MAX_VIDEO_VP9_REFERENCES_PER_FRAME_KHR]; - uint32_t uncompressedHeaderOffset; - uint32_t compressedHeaderOffset; - uint32_t tilesOffset; -} VkVideoDecodeVP9PictureInfoKHR; + VkQueryPool WINE_VK_ALIGN(8) queryPool; + uint32_t firstQuery; + uint32_t queryCount; +} VkVideoInlineQueryInfoKHR;
-typedef struct VkVideoEncodeAV1SessionParametersCreateInfoKHR +typedef struct VkVideoProfileListInfoKHR { VkStructureType sType; const void *pNext; - const StdVideoAV1SequenceHeader *pStdSequenceHeader; - const StdVideoEncodeAV1DecoderModelInfo *pStdDecoderModelInfo; - uint32_t stdOperatingPointCount; - const StdVideoEncodeAV1OperatingPointInfo *pStdOperatingPoints; -} VkVideoEncodeAV1SessionParametersCreateInfoKHR; + uint32_t profileCount; + const VkVideoProfileInfoKHR *pProfiles; +} VkVideoProfileListInfoKHR;
-typedef struct VkVideoEncodeH264NaluSliceInfoKHR +typedef struct VkVideoReferenceIntraRefreshInfoKHR { VkStructureType sType; const void *pNext; - int32_t constantQp; - const StdVideoEncodeH264SliceHeader *pStdSliceHeader; -} VkVideoEncodeH264NaluSliceInfoKHR; + uint32_t dirtyIntraRefreshRegions; +} VkVideoReferenceIntraRefreshInfoKHR;
-typedef struct VkVideoEncodeH264PictureInfoKHR +typedef struct VkVideoSessionCreateInfoKHR { VkStructureType sType; const void *pNext; - uint32_t naluSliceEntryCount; - const VkVideoEncodeH264NaluSliceInfoKHR *pNaluSliceEntries; - const StdVideoEncodeH264PictureInfo *pStdPictureInfo; - VkBool32 generatePrefixNalu; -} VkVideoEncodeH264PictureInfoKHR; + uint32_t queueFamilyIndex; + VkVideoSessionCreateFlagsKHR flags; + const VkVideoProfileInfoKHR *pVideoProfile; + VkFormat pictureFormat; + VkExtent2D maxCodedExtent; + VkFormat referencePictureFormat; + uint32_t maxDpbSlots; + uint32_t maxActiveReferencePictures; + const VkExtensionProperties *pStdHeaderVersion; +} VkVideoSessionCreateInfoKHR;
-typedef struct VkVideoEncodeH264SessionParametersAddInfoKHR +typedef struct VkVideoSessionMemoryRequirementsKHR { VkStructureType sType; - const void *pNext; - uint32_t stdSPSCount; - const StdVideoH264SequenceParameterSet *pStdSPSs; - uint32_t stdPPSCount; - const StdVideoH264PictureParameterSet *pStdPPSs; -} VkVideoEncodeH264SessionParametersAddInfoKHR; + void *pNext; + uint32_t memoryBindIndex; + VkMemoryRequirements WINE_VK_ALIGN(8) memoryRequirements; +} VkVideoSessionMemoryRequirementsKHR;
-typedef struct VkVideoEncodeH264SessionParametersCreateInfoKHR +typedef struct VkVideoSessionParametersCreateInfoKHR { VkStructureType sType; const void *pNext; - uint32_t maxStdSPSCount; - uint32_t maxStdPPSCount; - const VkVideoEncodeH264SessionParametersAddInfoKHR *pParametersAddInfo; -} VkVideoEncodeH264SessionParametersCreateInfoKHR; + VkVideoSessionParametersCreateFlagsKHR flags; + VkVideoSessionParametersKHR WINE_VK_ALIGN(8) videoSessionParametersTemplate; + VkVideoSessionKHR WINE_VK_ALIGN(8) videoSession; +} VkVideoSessionParametersCreateInfoKHR;
-typedef struct VkAccelerationStructureBuildGeometryInfoKHR +typedef struct VkVideoSessionParametersUpdateInfoKHR { VkStructureType sType; const void *pNext; - VkAccelerationStructureTypeKHR type; - VkBuildAccelerationStructureFlagsKHR flags; - VkBuildAccelerationStructureModeKHR mode; - VkAccelerationStructureKHR WINE_VK_ALIGN(8) srcAccelerationStructure; - VkAccelerationStructureKHR WINE_VK_ALIGN(8) dstAccelerationStructure; - uint32_t geometryCount; - const VkAccelerationStructureGeometryKHR *pGeometries; - const VkAccelerationStructureGeometryKHR * const*ppGeometries; - VkDeviceOrHostAddressKHR WINE_VK_ALIGN(8) scratchData; -} VkAccelerationStructureBuildGeometryInfoKHR; + uint32_t updateSequenceCount; +} VkVideoSessionParametersUpdateInfoKHR;
-typedef struct VkAccelerationStructureCreateInfoNV +typedef struct VkWaylandSurfaceCreateInfoKHR { VkStructureType sType; const void *pNext; - VkDeviceSize WINE_VK_ALIGN(8) compactedSize; - VkAccelerationStructureInfoNV info; -} VkAccelerationStructureCreateInfoNV; + VkWaylandSurfaceCreateFlagsKHR flags; + struct wl_display *display; + struct wl_surface *surface; +} VkWaylandSurfaceCreateInfoKHR;
-typedef struct VkClusterAccelerationStructureCommandsInfoNV +typedef struct VkWin32SurfaceCreateInfoKHR { VkStructureType sType; - void *pNext; - VkClusterAccelerationStructureInputInfoNV input; - VkDeviceAddress WINE_VK_ALIGN(8) dstImplicitData; - VkDeviceAddress WINE_VK_ALIGN(8) scratchData; - VkStridedDeviceAddressRegionKHR WINE_VK_ALIGN(8) dstAddressesArray; - VkStridedDeviceAddressRegionKHR WINE_VK_ALIGN(8) dstSizesArray; - VkStridedDeviceAddressRegionKHR WINE_VK_ALIGN(8) srcInfosArray; - VkDeviceAddress WINE_VK_ALIGN(8) srcInfosCount; - VkClusterAccelerationStructureAddressResolutionFlagsNV addressResolutionFlags; -} VkClusterAccelerationStructureCommandsInfoNV; + const void *pNext; + VkWin32SurfaceCreateFlagsKHR flags; + HINSTANCE hinstance; + HWND hwnd; +} VkWin32SurfaceCreateInfoKHR;
-typedef struct VkComputePipelineCreateInfo +typedef struct VkWriteDescriptorSetAccelerationStructureKHR { VkStructureType sType; const void *pNext; - VkPipelineCreateFlags flags; - VkPipelineShaderStageCreateInfo WINE_VK_ALIGN(8) stage; - VkPipelineLayout WINE_VK_ALIGN(8) layout; - VkPipeline WINE_VK_ALIGN(8) basePipelineHandle; - int32_t basePipelineIndex; -} VkComputePipelineCreateInfo; + uint32_t accelerationStructureCount; + const VkAccelerationStructureKHR *pAccelerationStructures; +} VkWriteDescriptorSetAccelerationStructureKHR;
-typedef struct VkGraphicsPipelineCreateInfo +typedef struct VkWriteDescriptorSetAccelerationStructureNV { VkStructureType sType; const void *pNext; - VkPipelineCreateFlags flags; - uint32_t stageCount; - const VkPipelineShaderStageCreateInfo *pStages; - const VkPipelineVertexInputStateCreateInfo *pVertexInputState; - const VkPipelineInputAssemblyStateCreateInfo *pInputAssemblyState; - const VkPipelineTessellationStateCreateInfo *pTessellationState; - const VkPipelineViewportStateCreateInfo *pViewportState; - const VkPipelineRasterizationStateCreateInfo *pRasterizationState; - const VkPipelineMultisampleStateCreateInfo *pMultisampleState; - const VkPipelineDepthStencilStateCreateInfo *pDepthStencilState; - const VkPipelineColorBlendStateCreateInfo *pColorBlendState; - const VkPipelineDynamicStateCreateInfo *pDynamicState; - VkPipelineLayout WINE_VK_ALIGN(8) layout; - VkRenderPass WINE_VK_ALIGN(8) renderPass; - uint32_t subpass; - VkPipeline WINE_VK_ALIGN(8) basePipelineHandle; - int32_t basePipelineIndex; -} VkGraphicsPipelineCreateInfo; + uint32_t accelerationStructureCount; + const VkAccelerationStructureNV *pAccelerationStructures; +} VkWriteDescriptorSetAccelerationStructureNV;
-typedef struct VkGraphicsShaderGroupCreateInfoNV +typedef struct VkWriteDescriptorSetInlineUniformBlock { VkStructureType sType; const void *pNext; - uint32_t stageCount; - const VkPipelineShaderStageCreateInfo *pStages; - const VkPipelineVertexInputStateCreateInfo *pVertexInputState; - const VkPipelineTessellationStateCreateInfo *pTessellationState; -} VkGraphicsShaderGroupCreateInfoNV; + uint32_t dataSize; + const void *pData; +} VkWriteDescriptorSetInlineUniformBlock; +typedef VkWriteDescriptorSetInlineUniformBlock VkWriteDescriptorSetInlineUniformBlockEXT;
-typedef struct VkIndirectCommandsLayoutCreateInfoEXT +typedef struct VkWriteDescriptorSetPartitionedAccelerationStructureNV +{ + VkStructureType sType; + void *pNext; + uint32_t accelerationStructureCount; + const VkDeviceAddress *pAccelerationStructures; +} VkWriteDescriptorSetPartitionedAccelerationStructureNV; + +typedef struct VkWriteDescriptorSetTensorARM { VkStructureType sType; const void *pNext; - VkIndirectCommandsLayoutUsageFlagsEXT flags; - VkShaderStageFlags shaderStages; - uint32_t indirectStride; - VkPipelineLayout WINE_VK_ALIGN(8) pipelineLayout; - uint32_t tokenCount; - const VkIndirectCommandsLayoutTokenEXT *pTokens; -} VkIndirectCommandsLayoutCreateInfoEXT; + uint32_t tensorViewCount; + const VkTensorViewARM *pTensorViews; +} VkWriteDescriptorSetTensorARM;
-typedef struct VkIndirectExecutionSetCreateInfoEXT +typedef struct VkWriteIndirectExecutionSetPipelineEXT { VkStructureType sType; const void *pNext; - VkIndirectExecutionSetInfoTypeEXT type; - VkIndirectExecutionSetInfoEXT info; -} VkIndirectExecutionSetCreateInfoEXT; + uint32_t index; + VkPipeline WINE_VK_ALIGN(8) pipeline; +} VkWriteIndirectExecutionSetPipelineEXT;
-typedef struct VkGraphicsPipelineShaderGroupsCreateInfoNV +typedef struct VkWriteIndirectExecutionSetShaderEXT { VkStructureType sType; const void *pNext; - uint32_t groupCount; - const VkGraphicsShaderGroupCreateInfoNV *pGroups; - uint32_t pipelineCount; - const VkPipeline *pPipelines; -} VkGraphicsPipelineShaderGroupsCreateInfoNV; + uint32_t index; + VkShaderEXT WINE_VK_ALIGN(8) shader; +} VkWriteIndirectExecutionSetShaderEXT;
typedef VkResult (VKAPI_PTR *PFN_vkAcquireNextImage2KHR)(VkDevice, const VkAcquireNextImageInfoKHR *, uint32_t *); typedef VkResult (VKAPI_PTR *PFN_vkAcquireNextImageKHR)(VkDevice, VkSwapchainKHR, uint64_t, VkSemaphore, VkFence, uint32_t *);
v2: Leave xlib platform aside for now.
On Mon Sep 1 18:52:09 2025 +0000, Rémi Bernon wrote:
changed this line in [version 2 of the diff](/wine/wine/-/merge_requests/8867/diffs?diff_id=204670&start_sha=082f4048884aea3078056651965061ee3dee8f62#f571638fea2ef952d5704e4b033abda51003a510_2944_2936)
I don't think you should be including Xlib.h at all. Just replace the `#else` with `#ifndef WINE_VULKAN_NO_X11_TYPES` or something like that.
On Mon Sep 1 19:03:12 2025 +0000, Alexandre Julliard wrote:
I don't think you should be including Xlib.h at all. Just replace the `#else` with `#ifndef WINE_VULKAN_NO_X11_TYPES` or something like that.
I see, thanks I'll include that in some other MR.